diff --git a/admin/survey/minify/builder/index.php b/admin/survey/minify/builder/index.php index d4ea38c1f..230d2aefe 100644 --- a/admin/survey/minify/builder/index.php +++ b/admin/survey/minify/builder/index.php @@ -24,7 +24,10 @@ if (!$config->enableBuilder) { die('This application is not enabled. See https://github.com/mrclay/minify/blob/master/docs/BuilderApp.wiki.md'); } -if ($config->builderPassword && $config->builderPassword !== '') { +require( dirname(__FILE__) .'/../../../../settings.php' ); + + +if ($minify_builder_password !== '') { $auth = new Intervention\Httpauth\Httpauth(array( 'username' => 'admin', 'password' => $config->builderPassword, diff --git a/admin/survey/minify/config.php b/admin/survey/minify/config.php index bc9c82d93..600645a24 100644 --- a/admin/survey/minify/config.php +++ b/admin/survey/minify/config.php @@ -30,7 +30,7 @@ $min_concatOnly = false; * If non-empty, the Builder will be protected with HTTP Digest auth. * The username is "admin". */ -$min_builderPassword = 'admin'; +$min_builderPassword = $minify_builder_password; /** diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/cmunrm.ttf b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/cmunrm.ttf deleted file mode 100644 index 1c3fff0a6..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/cmunrm.ttf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/koda2pdf.R b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/koda2pdf.R deleted file mode 100644 index 8725f0a22..000000000 --- a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/koda2pdf.R +++ /dev/null @@ -1,42 +0,0 @@ -## 1KA strenik ## -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo za posamezno fakulteto na streniku -# Tega ne poganjamo -params <- commandArgs(trailingOnly = TRUE) -ID <- params[1] -## //1KA strenik// ## - -# Dodatni sklop pripisemo v spodnji kodi -# Zaenkrat imata dodatni sklop FDV in FGG. - #ID <- 3000021 -IDs <- ID -choose.dir("C:/Miha/sisplet2/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa") -library(knitr) -# Delovna mapa mora biti tista, kjer sta obe .r skripti -# nastavimo mapo, kjer bodo ustvarjene pomozne datoteke, potrebne -# za pretvorbo iz v latex in nato v pdf. - -# Kodo pretvorimo v pdf. -# Pri kodi, ki je ne testiras torej ponovno omogoci imenaTabel in ID-je -# Spremembe, ki pridejo v postev, da pozene vsa stiri porocila -# Dolocimo ID-je in imenaTabel -for (zaporednaBaza in c(1:1)){ - owd = setwd('temp') - imenaTabel <- c(paste0(owd, "/temp/podatki_",IDs,".csv")) - ID <- IDs[zaporednaBaza] - imenaTabel <- imenaTabel[zaporednaBaza] - - knit2pdf('../splosnaPorocilo.Rnw', encoding = 'UTF-8') - # Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID - novaMapa <- paste0("../rezultati/", ID, "/", fakulteta, "_", - format(Sys.time(), "%Y"), "_splosna",".pdf") - file.copy("splosnaPorocilo.pdf", novaMapa, overwrite =T) - # Delovno pot spremenimo v prvotno. - setwd(owd) - # Pobrisemo elemente iz 'environment-a' - # Ne za zadnjo porocilo, da lahko testiramo spremenljivke - if (zaporednaBaza != 4){ - #remove(list = ls()) - } -} - - diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_AG.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_AG.png deleted file mode 100644 index 08167f2a1..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_AG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_AGRFT.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_AGRFT.png deleted file mode 100644 index 0ce636ac9..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_AGRFT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_ALU.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_ALU.png deleted file mode 100644 index ebc2a3376..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_ALU.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_BF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_BF.png deleted file mode 100644 index 18b8aa1a2..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_BF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_EF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_EF.png deleted file mode 100644 index 93a99535b..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_EF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FA.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FA.png deleted file mode 100644 index a1556aa8f..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FA.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FDV.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FDV.png deleted file mode 100644 index cd760790d..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FDV.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FE.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FE.png deleted file mode 100644 index 2004f96c0..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FE.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FF.png deleted file mode 100644 index 9a7853e20..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FFARM.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FFARM.png deleted file mode 100644 index e3a1ec3f8..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FFARM.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FGG.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FGG.png deleted file mode 100644 index 89ea50719..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FGG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FKKT.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FKKT.png deleted file mode 100644 index e32a5e6b9..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FKKT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FMF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FMF.png deleted file mode 100644 index fbe338733..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FMF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FPP.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FPP.png deleted file mode 100644 index 798ad486b..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FPP.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FRI.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FRI.png deleted file mode 100644 index 541a49607..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FRI.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FSD.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FSD.png deleted file mode 100644 index 7a77dff35..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FSD.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FSTR.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FSTR.png deleted file mode 100644 index e8e27fed1..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FSTR.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FŠ.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FŠ.png deleted file mode 100644 index 142f68468..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_FŠ.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_MF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_MF.png deleted file mode 100644 index 0c6d4de60..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_MF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_NTF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_NTF.png deleted file mode 100644 index c7122d172..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_NTF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_PEF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_PEF.png deleted file mode 100644 index ef610a1b0..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_PEF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_PF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_PF.png deleted file mode 100644 index 2a394a128..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_PF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_TEOF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_TEOF.png deleted file mode 100644 index 05eb09138..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_TEOF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_VF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_VF.png deleted file mode 100644 index a08aced59..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_VF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_ZF.png b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_ZF.png deleted file mode 100644 index cc781bc7a..000000000 Binary files a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/logo_ZF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/sloven2e.sty b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/sloven2e.sty deleted file mode 100644 index a25f70321..000000000 --- a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/logo/sloven2e.sty +++ /dev/null @@ -1,42 +0,0 @@ -% -% slovene.sty - prilagoditev zvrsti ARTICLE, BOOK in REPORT slovenscini -% -\@ifundefined{slovensko}{\def\slovensko{}}{\endinput} -\typeout{Document Style Option 'Sloven2e' ver 0.1. / 11-Nov-95 / V.B.} - -% naslovi - -\def\abstractname{Povzetek} -\def\appendixname{Dodatek} -\def\bibname{Literatura} -\def\ccname{cc} -\def\chaptername{Poglavje} -\def\contentsname{Kazalo} -\def\enclname{Priloge} -\def\figurename{Slika\ } -\def\headpagename{Stran} -\def\headtoname{Komu} -\def\indexname{Stvarno kazalo} -\def\listfigurename{Slike} -\def\listtablename{Tabele} -\def\partname{Del} -\def\prefacename{Predgovor} -\def\seename{glej} -\def\alsoseename{glej tudi} -\def\refname{Viri} -\def\tablename{Tabela\ } - -% tekoci datum - -\def\today{\number\day. \ifcase\month\or - januar\or februar\or marec\or april\or maj\or junij\or - julij\or avgust\or september\or oktober\or november\or december\fi - \space\number\year} - - -% slovenski narekovaji - -\def\lqlq{\leavevmode\hbox{,\kern-.1em,}} -\def\rqrq{\leavevmode\hbox{`\kern-.1em`}} - -\endinput diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/rezultati/.gitignore b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/rezultati/.gitignore deleted file mode 100644 index c96a04f00..000000000 --- a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/rezultati/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/sloven2e.sty b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/sloven2e.sty deleted file mode 100644 index a25f70321..000000000 --- a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/sloven2e.sty +++ /dev/null @@ -1,42 +0,0 @@ -% -% slovene.sty - prilagoditev zvrsti ARTICLE, BOOK in REPORT slovenscini -% -\@ifundefined{slovensko}{\def\slovensko{}}{\endinput} -\typeout{Document Style Option 'Sloven2e' ver 0.1. / 11-Nov-95 / V.B.} - -% naslovi - -\def\abstractname{Povzetek} -\def\appendixname{Dodatek} -\def\bibname{Literatura} -\def\ccname{cc} -\def\chaptername{Poglavje} -\def\contentsname{Kazalo} -\def\enclname{Priloge} -\def\figurename{Slika\ } -\def\headpagename{Stran} -\def\headtoname{Komu} -\def\indexname{Stvarno kazalo} -\def\listfigurename{Slike} -\def\listtablename{Tabele} -\def\partname{Del} -\def\prefacename{Predgovor} -\def\seename{glej} -\def\alsoseename{glej tudi} -\def\refname{Viri} -\def\tablename{Tabela\ } - -% tekoci datum - -\def\today{\number\day. \ifcase\month\or - januar\or februar\or marec\or april\or maj\or junij\or - julij\or avgust\or september\or oktober\or november\or december\fi - \space\number\year} - - -% slovenski narekovaji - -\def\lqlq{\leavevmode\hbox{,\kern-.1em,}} -\def\rqrq{\leavevmode\hbox{`\kern-.1em`}} - -\endinput diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/splosnaPorocilo.Rnw b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/splosnaPorocilo.Rnw deleted file mode 100644 index 4d40c096f..000000000 --- a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/splosnaPorocilo.Rnw +++ /dev/null @@ -1,4417 +0,0 @@ -\documentclass[a4paper, 11pt]{article} -\newcommand*\rot{\rotatebox{90}} -%\zmanjša robove dokumenta -\usepackage{fullpage} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -% za oznacevanje elementov v tabeli (odprti odg) kot seznam -\newcommand{\tabitem}{~~\llap{\textbullet}~~} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%Tikz -\usepackage{preview} -\usepackage{pgf} -%slovenski napisi -%\usepackage{sloven2e} -\usepackage{../logo/sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage{hyperref} -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, %choose some color if you want links to stand out - urlcolor = blue -} - -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Nejasno: kje so apostrofi? -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -%\Spremeni barvo, napis, slog napisa tabele -%\definecolor{poglavja}{HTML}{5D92CD} -%\usepackage[font={color=ocre},figurename=Fig.,labelfont={bf}]{caption} -%\usepackage[font={color=ocre,bf}]{caption} - -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri sekcijah -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -%\author{} -%\logotip univerze -\usepackage{graphicx} -\graphicspath{ {../logo/} } -%\ za custom glavo / nogo -%\usepackage{fancyhdr} -%\pagestyle{fancy} -%\fancyhf{} -% izbrise crto pod headerjem -%\renewcommand{\headrulewidth}{0pt} -%\lfoot{Metodologija je zajeta s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/}} - -<>= -############## -# Uvoz pomoznih tabel -# Stolpci: -# kratkoIme dolgoIme tip id sklop kljucnaBeseda barplot sklopBeseda -########## -pomoznaT <- read.csv2("pomozne_tabele/pomoznaT_dodatni.csv", stringsAsFactors = FALSE) -# Izlocimo podatke samo za odgovore zaprtega tipa -vprZ1 <- subset(pomoznaT, pomoznaT$tip==0) -# Izlocimo "osnovna vprasanja" -vprZ <- vprZ1[c(1:27),] -dodatniSklop <- 0 - - -# Dodatni sklop pripisemo v spodnji kodi -# Zaenkrat imata dodatni sklop FDV in FGG. -ID <- 3000021 -fakulteta <- "" -ime.fakultete <- "" -if (ID == 3000001) { # here - fakulteta <- "PEF" - fakulteta1 <- "Prakse PEF" - ime.fakultete <- "Pedagoška fakulteta" - logo <- "logo_PEF" -} else if (ID == 3000004){ - fakulteta <- "FU" - fakulteta1 <- "Prakse FU" - ime.fakultete <- "Fakulteta za upravo" - logo <- "logo_FU" -} else if (ID == 3000006){ - fakulteta <- "FSD" - fakulteta1 <- "Prakse FSD" - ime.fakultete <- "Fakulteta za socialno delo" - logo <- "logo_FSD" -} else if (ID == 3000009){ - fakulteta <- "FPP" - fakulteta1 <- "Prakse FPP" - ime.fakultete <- "Fakulteta za pomorstvo in promet" - logo <- "logo_FPP" -} else if (ID == 3000011){ - fakulteta <- "ZF" - fakulteta1 <- "Prakse ZF" - ime.fakultete <- "Zdravstvena fakulteta" - logo <- "logo_ZF" -} else if (ID == 3000018){ - fakulteta <- "FF" - fakulteta1 <- "Prakse FF" - ime.fakultete <- "Filozofska fakulteta" - logo <- "logo_FF" -} else if (ID == 3000019){ - fakulteta <- "EF" - fakulteta1 <- "Prakse EF" - ime.fakultete <- "Ekonomska fakulteta" - logo <- "logo_EF" -} else if (ID == 3000020){ - fakulteta <- "PF" - fakulteta1 <- "Prakse PF" - ime.fakultete <-"Pravna fakulteta" - logo <- "logo_PF" -} else if (ID == 3000021){ - fakulteta <- "FDV" - fakulteta1 <- "Prakse FDV" - ime.fakultete <- "Fakulteta za družbene vede" - logo <- "logo_FDV" -} else if (ID == 3000022){ - fakulteta <- "FŠ" - fakulteta1 <- "Prakse FŠ" - ime.fakultete <- "Fakulteta za šport" - logo <- "logo_FŠ" -} else if (ID == 3000023){ - fakulteta <- "FSTR" - fakulteta1 <- "Prakse FSTR" - ime.fakultete <- "Fakulteta za strojništvo" - logo <- "logo_FSTR" -} else if (ID == 3000025){ - fakulteta <- "FA" - fakulteta1 <- "Prakse FA" - ime.fakultete <- "Fakulteta za arhitekturo" - logo <- "logo_FA" -} else if (ID == 3000026){ - fakulteta <- "FGG" - fakulteta1 <- "Prakse FGG" - ime.fakultete <- "Fakulteta za gradbeništvo in geodezijo" - logo <- "logo_FGG" -} else if (ID == 3000027){ - fakulteta <- "FMF" - fakulteta1 <- "Prakse FMF" - ime.fakultete <- "Fakulteta za matematiko in fiziko" - logo <- "logo_FMF" -} else if (ID == 3000029){ - fakulteta <- "NTF" - fakulteta1 <- "Prakse NTF" - ime.fakultete <- "Naravoslovnotehniška fakulteta" - logo <- "logo_NTF" -} else if (ID == 3000030){ - fakulteta <- "FKKT" - fakulteta1 <- "Prakse FKKT" - ime.fakultete <- "Fakulteta za kemijo in kemijsko tehnologijo" - logo <- "logo_FKKT" -} else if (ID == 3000031){ - fakulteta <- "FFARM" - fakulteta1 <- "Prakse FFARM" - ime.fakultete <- "Fakulteta za farmacijo" - logo <- "logo_FFARM" -} else if (ID == 3000037){ - fakulteta <- "VF" - fakulteta1 <- "Prakse VF" - ime.fakultete <- "Veterinarska fakulteta" - logo <- "logo_VF" -} else if (ID == 3000041){ - fakulteta <- "MF" - fakulteta1 <- "Prakse MF" - ime.fakultete <- "Medicinska fakulteta" - logo <- "logo_MF" -} else if (ID == 3000042){ - fakulteta <- "ALUO" - fakulteta1 <- "Prakse ALUO" - ime.fakultete <- "Akademija za likovno umetnost in oblikovanje" - logo <- "logo_ALU" -} else if (ID == 3000043){ - fakulteta <- "AG" - fakulteta1 <- "Prakse AG" - ime.fakultete <- "Akademija za glasbo" - logo <- "logo_AG" -} else if (ID == 3000044){ - fakulteta <- "AGRFT" - fakulteta1 <- "Prakse AGRFT" - ime.fakultete <- "Akademija za gledališče, radio, film in televizijo" - logo <- "logo_AGRFT" -} else if (ID == 3000050){ - fakulteta <- "TEOF" - fakulteta1 <- "Prakse TEOF" - ime.fakultete <- "Teološka fakulteta" - logo <- "logo_TEOF" -} else if (ID == 3000063){ - fakulteta <- "FRI" - fakulteta1 <- "Prakse FRI" - ime.fakultete <- "Fakulteta za računalništvo in informatiko" - logo <- "logo_FRI" -} else if (ID == 3000064){ - fakulteta <- "FE" - fakulteta1 <- "Prakse FE" - ime.fakultete <- "Fakulteta za elektrotehniko" - logo <- "logo_FE" -} else if (ID == 3000071){ - fakulteta <- "BF" - fakulteta1 <- "Prakse BF" - ime.fakultete <- "Biotehniška fakulteta" - logo <- "logo_BF" -} else if (ID == 99){ - fakulteta <- "TestniPodatki" - fakulteta1 <- "Prakse TP" - ime.fakultete <- "TestniPodatki" - logo <- "logo_BF" -} else { - fakulteta <- "" - fakulteta1 <- "" - ime.fakultete <- "" - -} - -# ce je utf z malo ne dela -# FDV ima drugacno obliko baze -if (ID == 3000021){ -podatki <- lapply(imenaTabel, function(x){ - read.csv2(x, stringsAsFactors = FALSE, encoding="UTF-8") -}) -}else{ -podatki <- lapply(imenaTabel, function(x){ - read.csv(x, stringsAsFactors = FALSE, encoding="UTF-8") -}) -} - -# izbrisemo prvo vrstico, ki so imena stolpcev -podatki[[1]] <- podatki[[1]][-1,] - -# Podatkom odstranimo "=" (Pride v poštev, če je baza 'napačno' izvožena) -podatki[[1]] <- as.data.frame(lapply(podatki[[1]], - function(y) gsub("=", "", y)), - stringsAsFactors = F) - - -# Prestejemo enote z neveljavnimi letniki -neveljavni_letnik_n <- length(podatki[[1]]$letnik[podatki[[1]]$letnik < 1]) -# Izkljucimo enote z neveljavnimi letniki -podatki[[1]] <- subset(podatki[[1]], podatki[[1]]$letnik > 0) -@ - - -<>= -# Preveri: ali uporabljas vse? Tudi drugace opisi za katere funkcije je kaj ključno. -library(knitr) -library(ggplot2) -library(Cairo) -library(scales) -library(dplyr) -library(XML) -library(RCurl) -library(xtable) -library(Hmisc) -library(showtext) -library(stringi) - -# in this document we mainly use results='asis', so set it globally -opts_chunk$set(results='asis', - warning=FALSE, - message = FALSE) - -#pdf.options(encoding="CP1253") -# Nastavi v razlicici za streznik - muffleError <- function(x,options) {} - knit_hooks$set(error=muffleError) -@ - -<>= -# Tu izracunamo veljavne enote, veljavne odgovore in letnico -# Uvoz tabele studijski programi - ce je tu kodiranje UTF-8, so v -# napisih znaki npr.: " -studijskiProgramiT <- read.csv2("pomozne_tabele/studijskiProgrami.csv", - stringsAsFactors = FALSE) - - -######################## -#Filter veljavnih podatkov -# Q2a ali Q3a != "1" -######################## -veljavneEnote <- vector('list', length(podatki)) -veljavniOdg <- vector('list', length(podatki)) -veljavniSklopi <- vector('list', length(podatki)) - -napisiST <- list("\\textbf{Dejavnik}") - -#veljavneEnote[[1]] <- subset(podatki, podatki$Q2a != 1) -i <- 1 -if("Q3a" %in% colnames(podatki[[i]])){ - # Podatke filtriramo glede na filter spremenljivko - veljavneEnote[[i]] <- subset(podatki[[i]], - podatki[[i]]["Q3a"] != 1) - - # Podatke nadalje filtriramo tako, da obdrzimo samo enote, ki - # imajo podan letnik - veljavneEnote[[i]] <- subset(veljavneEnote[[i]], - veljavneEnote[[i]]["letnik"] > 0) - # St veljavnih enot, ki imajo idprog enak -2 - stBrezPrograma <- length(podatki[[i]]["idprog"][podatki[[i]]["Q3a"] != 1 & podatki[[i]]["idprog"]== -2]) - - veljavniOdg[[i]] <- sapply(vprZ$kratkoIme, function(x){ - lapply(veljavneEnote[[i]][x], function(y) { - as.numeric(na.omit(y)) - }) - }) - - # Veljavni odgovori so samo tisti z vrednostjo vecjo od ena - names(veljavniOdg[[i]]) <- vprZ$kratkoIme - veljavniOdg[[i]] <- sapply(veljavniOdg[[i]], function(x){ - subset(x, x>0)}) - } - - # Napisi stolpcev - # Ce je anketo nekdo izpolnil od oktobra (vkljucno) do decembra potem letnici pristejemo - # Eno leto - if(as.numeric(substr(min(veljavneEnote[[i]]$itime), 4, 5)) %in% c(1:9)){ - leto <- as.numeric(substr(min(veljavneEnote[[i]]$itime), 9, 10)) -1 - }else{leto <- as.numeric(substr(min(veljavneEnote[[i]]$itime), 9, 10))} - - # Dolocimo napise za trende - # Dodatno avtomatiziraj - # Iz zanke, ki bo prebrala prejsnjeIzracune - if (dodatniSklop == 1){ - #napisiST <- append(napisiST, paste0((leto[[i]])-2,"/",leto[[i]]-1)) - napisiST <- append(napisiST, paste0((leto[[i]]),"/",leto[[i]]+1)) - - }else{ - napisiST <- append(napisiST, paste0((leto[[i]]),"/",leto[[i]]+1)) - - } - celaLetnica <- paste0(20,(leto[[length(leto)]]), "/", leto[[length(leto)]]+1) - -@ -\title{Zadovoljstvo študentov \Sexpr{fakulteta} s študijem \Sexpr{celaLetnica}} - -\begin{document} - -\begin{figure}[t] -\includegraphics[width=10.5cm]{\Sexpr{logo}} -\centering -\end{figure} - -\maketitle -\newpage -<>= -# V tem chunku tudi funkciji trendiGraf in ggPie -######### -## Izracuni -## Za tabele v sklopu 2 -## -## -######### -odgMean <- vector('list', length(veljavniOdg)) -stEnot <- vector('list', length(veljavniOdg)) - -# Izracun povprecij in stevilo enot -# Dolocitev imen stolpcev - -for (i in(1: length(veljavniOdg))){ - odgMean[[i]] <- lapply(veljavniOdg[[i]], mean) - stEnot[[i]] <- lengths(veljavniOdg[[i]]) - names(odgMean[[i]]) <- vprZ$kratkoIme -} - - -### -### -### Izracuni za grafe -graf_p <- vector('list', length(odgMean)) - -# Tu zdruzi stare podatke z novimi -# V primeru FF starih ni torej, damo to v pogoj -# Pregleda mapo 'prejsnjiIzracuni' -# Izpise seznam prejsnjihIzracunov: zaenkrat samo pri FDV in FF -# Nato zdruzi prejsnje izracune z zdajsnjimi in jih izpise v grafu (trendi) -# Pripravi se zapisovanje zdajsnjih v isti obliki. (ce se ne obstajajo) -# Izracuna jih iz koncneBaze tega leta, ki naj bi jo streznik -# ob koncani anketi = potecen cas resevanja -# poslal v pripadajoco mapo npr. splosna/podatki/3000021/koncneBaze - -# Risanje trendov je izklopljeno, dokler ne obstajajo, podatki za vsaj eno prejsnje leto -# prejsnjih let -# mainDir <- getwd() -# Ce je pri spremenljivki letosnjiIzracuni vrednost 0, potem to pomeni, da letosnjih -# izracunov se ni v tabeli 'prejsnjiIzracuni' in jih ob pogoju, da ze imamo koncno letosnjo -# bazo, izracunamo - -letosnjiIzracuni <- 0 -letosnjiTrendi <- cbind(as.numeric(formatC(unlist(odgMean[[1]]), digits = 2, format = 'f')), leto) -risanjeTrendov <- 0 - -# Preverimo ali obstaja mapa s prejsnjimiIzracuni za izbrano fakulteto -# Ce obstaja preverimo ali vsebuje 'prejsnjeIzracune' : drugace jo ustvarimo -# Ce obstajajo jih preberemo in vklopimo risanje trendov -# V nasprotnem primeru imamo le letosnje podatke in trendov ne risemo - -if(dir.exists(paste0("podatki/", ID, "/prejsnjiIzracuni"))){ - -# poiscemo vse .csv datoteke v mapi podatki/'idFakultete'/prejsnjiIzracuni -prejsnjiIzracuni = list.files(paste0(getwd(),"/podatki/", ID, "/prejsnjiIzracuni/"), pattern="*.csv") - -# ce datoteka obstaja jo nalozi in vklopi risanje trendov -# in izklopi zapis letosnjih izracunov - -if (file.exists(paste0("podatki/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni))){ -izracuni <- read.table(paste0("podatki/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni), stringsAsFactors = F, sep =',') - -# Ce so v prejsnjih izracunih tudi letosnji trendi, jih ne zapisemo -# se enkrat (letosnjiIzracuni <- 1) -if (leto %in% izracuni$V2){letosnjiIzracuni <- 1} -else{letosnjiIzracuni <- 0} - -if (length(unique(izracuni$V2)) <= 1){ - risanjeTrendov <- 0 -}else{risanjeTrendov <- 1} -}else{letosnjiIzracuni <- 0} -# Recursive poskrbi, da ustvari obe mapi: tisto z ID-jem fakultete in znotraj te -# se mapo 'prejsnjiIzracuni' -}else{dir.create(paste0("podatki/", ID, "/prejsnjiIzracuni"), recursive =T)} - -# To spremeni v list -# Zapisovanje letosnjih povprecij -# povp, leto -# Preverimo ali je v mapi 'koncneBaze' ze letosnja koncana anketa -# To preverimo tako, da pogledamo ce je v tej mapi ze baza, ki ima v imenu letosnjo letnico - -# ce letosnjih Izracunov se ni, jih ob pogoju, da ze imamo koncno bazo zapisemo - -if (letosnjiIzracuni == 0){ -if(dir.exists(paste0("podatki/", ID, "/koncneBaze"))){ - -koncneBaze = list.files(paste0(getwd(),"/podatki/", ID, "/koncneBaze/"), pattern="*.csv") -# Nalozimo le tisto bazo, ki ima v imenu letnico, ki ustreza, letnici, ki smo jo -# pridobili iz spremenljivke 'itime', v bazi, ki vstopa v to kodo (iz streznika) -imeLetosnjeBaze <- koncneBaze[grepl(leto, koncneBaze)] - -if (length(imeLetosnjeBaze) != 0){ - # Ali obstaja baza z letosnjimi izracuni? - # = Ali so podatki letosnje (koncane) ankete ze v mapi? - # Ce obstaja letosnje izracune trendov appendaj v tabelo in jim pripisi letnico - if (file.exists(paste0("podatki/", ID, "/koncneBaze/", imeLetosnjeBaze))){ - write.table(letosnjiTrendi, - file = paste0("podatki/", ID, - "/prejsnjiIzracuni/prejsnjiIzracuni.csv"), - append=T, - row.names = F, - col.names = F, - sep = ',') - -} -} -} -} - -# Testiranje: -# Tu zdruzimo prejsnje izracune (povprecja) z zdajsnjimi -# Samo za testiranje trendov do 2020 -# risanjeTrendov <- 1 - -if (risanjeTrendov != 0 & leto %in% izracuni[,2]){ - izracuniTrendov <- izracuni - izracuniTrendov <- arrange(izracuniTrendov, V2) - - }else if(risanjeTrendov != 0 & !(leto %in% izracuni[,2])){ - izracuniTrendov <- rbind(izracuni, - unname(cbind(unlist(odgMean[[1]]), leto))) - izracuniTrendov <- arrange(izracuniTrendov, V2) - -}else{ - izracuniTrendov <- cbind(unlist(odgMean[[1]]), leto) -} - -# Testiranje: -#podatkiStari <- 0 -#if ("Q6a" %in% names(odgMean[[i]]) & podatkiStari != 0){ -# izracuniTrendov <- rbind(cbind(unlist(odgMean[[1]]), leto-1), cbind(unlist#(odgMean[[2]]), leto)) -#}else{ -# izracuniTrendov <- cbind(unlist(odgMean[[1]]), leto-1) -#} - - -# Dejavnikom pripisemo sklope (za kasnejse klicanje pri izrisu trendov) -sklopi_dff <- c(1,1,1,2,2,2,2,3,3,3, - 3,4,4,4,4,4,4,5,5,5,5,5, - 6,6,7,7,8) - -# Za dodatne sklope -if (dodatniSklop == 1){ - sklopi_dff <- c(sklopi_dff, rep(9,3)) -} - -#vprZ$grafBeseda[vprZ$grafBeseda == "Odzivnost in učinkovitost ref." ] <- "Odzivnost in\nučinkovitost ref." - -# Generalizacija -if (dodatniSklop == 1){ - dff <- data.frame(Dejavnik=vprZ$grafBeseda[1:30], - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) -}else{ - dff <- data.frame(Dejavnik=vprZ$grafBeseda[1:27], - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) -} - -# napisi za x os (letnice): -# iz podatkov pridobimo vse uniketne letnice -# in jih preoblikujemo v obliko prejsne leto / letosnje leto - -# Preverimo ali obstaja mapa, kamor bomo shranjevali slike (grafe) -# Ce se ne obstaja, jo ustvarimo. -if(!dir.exists(paste0("rezultati/", ID))){ - dir.create(paste0("rezultati/", ID)) -} - -if(!dir.exists(paste0("rezultati/", ID, "/grafi"))){ - dir.create(paste0("rezultati/", ID, "/grafi")) -} - -trendiGraf <- function(x, y, z, izpis=1){ - if(risanjeTrendov != 0 & (min(izracuniTrendov$V2) != max(izracuniTrendov$V2))){ - letnice.uq <- unique(x$leto) - letnice.label <- sapply(letnice.uq, function(x){ - paste0(x,'/',x+1) - }) - - x$leto <- factor(x$leto) - p1 <- ggplot(data = x, aes(x = leto, - y = povprecje, - colour = Dejavnik))+ - scale_x_discrete("Leto", label = letnice.label)+ - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none, - breaks=c(1:5))+ - #scale_color_brewer(palette="Dark2")+ - - geom_line(aes(group = Dejavnik)) + geom_point()+ - - - #scale_x_discrete("Leto", labels=c(napisiST[2:length(napisiST)])) - #oob = rescale_none, pomembno, da je 1 na zaccetku x osi - theme_classic()+ - theme(aspect.ratio=1)+ - # \n zaradi dodatnega odmika napisa od osi - xlab("Leto\n")+ylab("Povprečna vrednost\n")+ - - theme(axis.text= element_text(size=14, family="CM Roman"), - axis.title= element_text(size=14, family='CM Roman'), - legend.text= element_text(size=13, family='CM Roman'), - legend.position ="right", - legend.title=element_blank(), - axis.line.x = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, linetype='solid')) - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/izpisTrendi",stevec,".pdf") - ggsave(p1, filename=ime, units="in", device=cairo_pdf ) - caption <- as.character(y) - -#library("Cairo") -#CairoPNG(ime, width=480, height=480) -#p1 -#dev.off() - - if (izpis==1){ - cat(paste0('\\begin{figure}[!ht] - \\vspace*{-6cm} - \\caption{Trendi - ', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\end{figure} - \\clearpage')) - } - - else if(izpis==2){ - cat(paste0('\\begin{figure}[ht] - \\caption{Trendi - ', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\end{figure} - \\clearpage')) - } - - } # Zapremo pogoj (risanjeTrendov != 0 & (min(izracuniTrendov$V2) != max(izracuniTrendov$V2))) -} - - -ggPie <- function(dat, naslov){ - izpis <- ggplot(dat, aes(x=1, y=V4, fill=V5)) + - #ggtitle(naslov) + - # black border around pie slices - geom_bar(stat="identity", color='black') + - # Na grafu izpisemo odstotke; velikost spremenimo s size = - geom_text(aes(y=(cumsum(c(dat$V4[1], dat$V4[2])) - c(dat$V4[1], dat$V4[2])/2), - label=V6))+ - # remove black diagonal line from legend - guides(fill=guide_legend(override.aes=list(colour=NA))) + - # polar coordinates - # graf spremeni v pie chart - coord_polar(theta='y') + - theme_classic()+ - # label aesthetics - theme( - legend.title=element_blank(), # odstranimo naslov legende - axis.ticks=element_blank(), # the axis ticks - axis.title=element_blank(), # the axis labels - axis.text.y=element_blank(), # the 0.75, 1.00, 1.25 labels - axis.text.x=element_text(color='black')) + - scale_y_continuous( - # Dodamo ce sta samo dva dejavnika dodamo pri izracunu pozicij dodamo 25. - breaks=(cumsum(c(dat$V4[1], dat$V4[2])) - c(dat$V4[1], dat$V4[2])/2), - labels=dat$V5)+ - scale_fill_manual(values=c("#1874CD", "#CD2626")) - - stevec <- dat$kratkoIme.tip4[[1]] - ime <- paste0("rezultati/", ID, "/grafi/piechart_",stevec,".pdf") - ggsave(izpis, filename=ime, device=cairo_pdf, width=5.5, height=4.5) - - caption <- as.character(dat$dolgoIme.tip4[[1]]) - cat(paste0(' - \\begin{figure}[!ht] - \\flushleft \\caption{', caption, '} - \\includegraphics[width=0.7\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} -@ - -<>= -#Pot do delovne mape - -#Uvoz podatkov -#podatki <- read.csv2("podatkiCSV2.csv", stringsAsFactors = FALSE, encoding="utf-8") -#p <- read.csv2("podatki2.csv", stringsAsFactors = FALSE, encoding="utf-8") -#V spremenljivko 'veljavneEnote[[1]]' izloci samo veljavne enote -#veljavneEnote[[1]] <- subset(podatki, podatki$Q2a != 1) -#Iz programov odstrani piko -#veljavneEnote[[1]]$program <- gsub(".ma", "ma", veljavneEnote[[1]]$program) -#podatki <- podatki - -if("Q2a" %in% colnames(podatki)){ - #Napis "magistrski program" zamenja s "bp" - podatki$program <- gsub(".magistrski program", "BP", podatki$program) - #Napis "univerzitetni program" zamenja s "bd" - podatki$program <- gsub("univerzitetni program", "BD", podatki$program) - #Napis "magistrski program" zamenja s "bp" - veljavneEnote[[1]]$program <- gsub(".magistrski program", "BP", - veljavneEnote[[1]]$program) - #Napis "univerzitetni program" zamenja s "bd" - veljavneEnote[[1]]$program <- gsub("univerzitetni program", "BD", - veljavneEnote[[1]]$program) -} - -# -stopnjeUQ <- as.character(unique(studijskiProgramiT$Vrsta)) -stopnjeUQ <- cbind(stopnjeUQ, 1:length(stopnjeUQ)) -stopnjeUQ <- rbind(stopnjeUQ, c("-2", (length(stopnjeUQ)/2)+1)) -st.kratkoIme <- c("Uni", "Uni*", "Vis", "Spec", "Mag*", - "Dr*", "Mag", "Mag1", "/", "Dr", "Mag2", "Izp", "-2") -stopnjeUQ <- cbind(stopnjeUQ, st.kratkoIme) - -# Pripisovanje tipov studijskih programov, ki ga uporabimo v tabeli 1. -# Tu unikatnim idprog pripisemo naziv (=Ime programa), vrsto(=npr. Univerzitetni) in -# okrajsavo(=npr. # Uni + pika) -# Ce dolocena enota glede na idprog nima pripisane stopnje" - -idprog_uq2 <- unique(podatki[[1]]$idprog) - -tip_programa <- data.frame(idprog_uq2, stringsAsFactors = F) -tip_programa$naziv <- sapply(tip_programa$idprog_uq2, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Naziv[studijskiProgramiT$ID == x] - }}) -tip_programa$vrsta <- sapply(tip_programa$idprog_uq2, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x] - }}) -# Tu glede na študijsko stopnjo pripišemo kratico in ji dodamo piko. -tip_programa$kratica <- paste0(sapply(tip_programa$vrsta, function(x){ - if (x == -2){ - "-2" - }else{ - stopnjeUQ[,3][x== stopnjeUQ[,1]] -}}), ".") - - tip_programa$kratica[tip_programa$kratica == "/."] <- "/" - -# df uredimo glede na padajoce ime programov -tip_programa <- arrange(tip_programa, naziv) - -# Iz prve tabele odstranimo enote, ki imajo pri idprog vrednost -2 -# oz. ne prikazujemo programa '-2' -#tip_programa <- subset(tip_programa, tip_programa[,1] != -2) - -# Vrstica skupaj nima tipa programa, torej ji pripisemo "(.)" -# V novejsih razlicicah namesto "(.)", pripisemo "", torej prazno vrednost - -tip_programa2 <- c(tip_programa$kratica, "") -# Napisom iz tabele studijski program priredimo veliko zacetnico -tip_programa2 <- sapply(tip_programa2, function(x){ - x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) -}) - -idprog_uq <- unique(veljavneEnote[[1]]$idprog) - -# Tu izlocimo program (ime), idprog, ki jih bomo pripisali, kot tip programa v tabeli 1 -tip_programa_veljavni <- data.frame(idprog_uq, stringsAsFactors = F) -tip_programa_veljavni$naziv <- sapply(tip_programa_veljavni$idprog_uq, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Naziv[studijskiProgramiT$ID == x] - }}) -tip_programa_veljavni$vrsta <- sapply(tip_programa_veljavni$idprog_uq, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x] - }}) -tip_programa_veljavni$kratica <- paste0(sapply(tip_programa_veljavni$vrsta, function(x){ - if (x == -2){ - "-2" - }else{ - stopnjeUQ[,3][x== stopnjeUQ[,1]] -}}), ".") - -tip_programa$kratica[tip_programa$kratica == "/."] <- "/" -tip_programa_veljavni$kratica[tip_programa_veljavni$kratica == "/."] <- "/" - -tip_programa_veljavni <- arrange(tip_programa_veljavni, naziv) - -# Iz tabel v prilogi odstranimo enote, ki imajo idprog enak -2 -# oz. ne prikazujemo tipov prog, enakih '-2' -# tip_programa_veljavni <- subset(tip_programa_veljavni, tip_programa_veljavni[,1] != -2) - -# V novejsih razlicicah namesto "(.)", pripisemo "", torej prazno vrednost -tip_programa_veljavni2 <- c(tip_programa_veljavni$kratica, "") -# Napisom iz tabele studijski program priredimo veliko zacetnico -tip_programa_veljavni2 <- sapply(tip_programa_veljavni2, function(x){ - x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) -}) - -# Te podatke shrani v vektor, da jih lahko prestejemo / izpisemo v tabeli -# Stevilo veljavnih enot na program -poProgramih_N <- as.numeric() -for (i in 1:length(tip_programa$idprog_uq)){ - poProgramih_N[i] <- as.numeric(length(veljavneEnote[[1]]$Q3a[veljavneEnote[[1]]$idprog == tip_programa$idprog_uq[[i]]])) - } - - -#Vseh enot za tabelo (struktura studijski program) (n) -vsehT1 <- sum(poProgramih_N) - -#Izpišemo število VSEH enot glede na posamezen program -podatki.n <- numeric(length(tip_programa$idprog_uq)) -for (i in 1:length(tip_programa$idprog_uq)){ - podatki.n[i]<-as.numeric( - length(podatki[[1]]$Q3a[podatki[[1]]$idprog == tip_programa$idprog_uq[[i]]])) -} - -odgovori_pct <- formatC((poProgramih_N/podatki.n)*100, digits = 1, format="f") -odgovori_pct <- c(odgovori_pct, formatC((sum(poProgramih_N)/sum(podatki.n))*100, digits = 1, format="f")) - -#Izracun stevila tistih, ki niso odgovorili -podatki.r <- podatki.n - poProgramih_N -#Odstotki na eno decimalno mesto natancno (n) - -odstotki <- function(n){ - n<-(n/vsehT1*100) - n<-round(n, digits=1) - return(n) -} - -vektorProgrami <- numeric(length(tip_programa$idprog_uq)) - -#Z lapply poženemo zgornjo funkcijo cez poProgramih_N, kjer so shranjene dolžine seznama sodelujoci (Q2a==NA) -#in dobimo seznam odstotkov -odstotkiT1 <- lapply(poProgramih_N, odstotki) -podatki.r.pct <- formatC((podatki.r/podatki.n)*100, digits = 1, format="f") -#Odstotke iz seznama prenesemo v vektor -for (i in (1:length(tip_programa$idprog_uq))){vektorProgrami[i]<-odstotkiT1[[i]]} -# in jim pripisemo izracun 'skupaj' -odstotkiT1 <- c(odstotkiT1, formatC(sum(unlist(odstotkiT1)), digits=1, format="f")) - -#Dodamo vrstico 'skupaj' -programiV1 <- c(tip_programa$naziv, "Skupaj") -poProgramih_N <- formatC(c(poProgramih_N, vsehT1), digits=0, format='f') - -#za 'r%' -podatki.r.pct <- c(podatki.r.pct, formatC((sum(podatki.r)/sum(podatki.n))*100, - digits = 1, format ="f")) - -#Dodamo vrstico skupaj -podatki.n <- formatC(c(podatki.n, sum(podatki.n)), digits=0, format='f') - -#Odebeljeni odstotki; .0 zato, ker drugace izpise brez decimalke -vektorProgrami <- c(vektorProgrami, sum(vektorProgrami)) - -# Odebeljena vsota udelezenih, tistih, ki niso odgovorili -podatki.r <- formatC(c(podatki.r, sum(podatki.r)), digits=0, format='f') -#Izpis tabele 1 -struktura_studijski_program <- data.frame(programiV1, tip_programa2, podatki.n, poProgramih_N, - odgovori_pct, podatki.r, podatki.r.pct) - -colnames(struktura_studijski_program) <- c("", "", "$n_0$", "n", "\\%", "r", "\\%") -#dolocimo kje naj bodo crte -#hlines <- c(-1, 0, nrow(struktura_studijski_program), nrow(struktura_studijski_program)-1) -hlines <- c(nrow(struktura_studijski_program)-1) - - - bold <- function(x) { - paste0('\\bfseries{', x, '}') - } -############ - -@ - -<>= -######### -##TABELA2 -######### - -#Shranimo vrste programov in izlocimo prvi zapis, ki je prazen -#vrstaProg <- unique(na.omit(veljavneEnote[[1]]$prog_r2)) - - -# Pridobimo unikatne id-je programov, za vse enote in za veljavne enote. -idProg <- unique(na.omit(veljavneEnote[[1]]$idprog)) -idProg.Sk <- unique(na.omit(podatki[[1]]$idprog)) - -########### -##########Vkljuci pod pomanjkljivosti -#idProg <- idProg -# Nejasno: Nepomenljiva imena spremenljivk -sifraDolgoIme <- lapply(idProg, function(x){c(x, studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x])}) - -sifraDolgoIme.Sk <- lapply(idProg.Sk, function(x){c(x, - studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x])}) - - -sifraDolgoIme[sifraDolgoIme=="-2"] <- list(c("-2", "-2")) -sifraDolgoIme.Sk[sifraDolgoIme.Sk=="-2"] <- list(c("-2", "-2")) - -qw <- lapply(sifraDolgoIme, function(x){c(x, stopnjeUQ[,2][stopnjeUQ[,1]==x[2]])}) -qw2 <- lapply(sifraDolgoIme.Sk, function(x){c(x, stopnjeUQ[,2][stopnjeUQ[,1]==x[2]])}) - -# Indeks!!!!!!!!!!!! -# Podatkom dodamo id stopnje (za tabele in grafe po sklopih) -er <- veljavneEnote[[1]]$idprog -er2 <- podatki[[1]]$idprog -#er <- er[er!="-2"] -# Ustvarimo vektor, ki ga bomo dodali kot stolpec podatkom - - -# Sezname pretvorimo v matriko -qwM <- do.call(rbind, qw) -qwM.Sk <- do.call(rbind, qw2) - - -err <- lapply(er, function(x){qwM[,3][qwM[,1]==x]}) -err2 <- lapply(er2, function(x){qwM.Sk[,3][qwM.Sk[,1]==x]}) - - - -err <- do.call(rbind, err) -err2 <- do.call(rbind, err2) -######### -######## -#### Indeks!!!!! - -veljavneEnote[[1]]['prog_r2'] <- err -podatki[[1]]['prog_r2'] <- err2 - -# Za izpis v tabeli 2 in grafih zamenjamo unikatne id-sklopov z napisi iz tabele (studijski programi) - -#vrstaProg <- sapply(sort(unique(veljavneEnote[[1]]$prog_r2)), -# function(x){ stopnjeUQ[,1][stopnjeUQ[,2]==x] -#}) - - -vrstaProg <- sapply(sort(unique(podatki[[1]]$prog_r2)), - function(x){ stopnjeUQ[,1][stopnjeUQ[,2]==x] -}) - -# Iz izpisa tabel po idprog, grafov in tabele 2, odstranimo enote, ki -# imajo pri idprog vrednost -2 -#vrstaProg <- vrstaProg[vrstaProg != -2] - -# Napisom iz tabele studijski program priredimo veliko zacetnico -vrstaProg <- sapply(vrstaProg, function(x){ - x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) -}) - -# 9: pripisemo tistim programom, ki v tabeli studijskiProgramiT nimajo pripisane -# vrste -if("9" %in% names(vrstaProg)){ - vrstaProg["9"] <- "/" -} - -stVrsta <- as.numeric() -stVrsta.vsi <- as.numeric() - -# Prestejemo enote in veljavne enote glede na studijsko stopnjo -for (i in 1:length(vrstaProg)){ - stVrsta[i] <- length(veljavneEnote[[1]]$Q3a[veljavneEnote[[1]]$prog_r2 == names (vrstaProg)[i]]) - - stVrsta.vsi[i] <- length( - podatki[[1]]$Q3a[podatki[[1]]$prog_r2 == names(vrstaProg)[i]]) -} - -# in dodamo sestevek. -stVrsta[(length(stVrsta)+1)] <- sum(stVrsta) -stVrsta.vsi[(length(stVrsta.vsi)+1)] <- sum(stVrsta.vsi) - - -# Izracun vrstice, ki sesteje stevilo tistih, ki so sodelovanje zavrnili -stVrsta.r <- stVrsta.vsi - stVrsta - - -#Vsebina prvega stolpca -if (length(vrstaProg)>1){ - imena <- c(names(vrstaProg), 25) - vrstaProg_T2 <- c(vrstaProg, "Skupaj") - vrstaProg <- c(vrstaProg, "Skupaj") - -}else if(length(vrstaProg)==1){ - # V drugi tabeli, prikazemo "Skupaj", tudi ce je samo en tip programa - # Pri tabelah in grafih po letniku "Skupaj", v primeru enega tipa ne prikazujemo - imena <- names(vrstaProg) - vrstaProg_T2 <- c(vrstaProg, "Skupaj") -} - - -#Odstotki za tabelo struktura_stopnja -stVrsta.vsi.pct <- (stVrsta.vsi[c(1:length(stVrsta.vsi))]/ - stVrsta.vsi[length(stVrsta.vsi)])*100 - -stVrsta.r.pct <- (stVrsta.r[c(1:length(stVrsta.r))]/ - stVrsta.vsi[length(stVrsta.vsi)])*100 - - -odstotkiT2 <- (stVrsta[c(1:length(stVrsta))]/ - stVrsta.vsi[length(stVrsta.vsi)])*100 - - -struktura_stopnja <- data.frame(vrstaProg_T2, - stVrsta.vsi, - stVrsta.vsi.pct, - stVrsta, - odstotkiT2, - stVrsta.r, - stVrsta.r.pct, stringsAsFactors = F) -colnames(struktura_stopnja) <- c("", "$n_{0}$", "\\%", "n", "\\%", "r", "\\%") -@ - -<>= -########## -##TABELA3 -######### - -#Uvoz pomozne tabele -#pomoznaT <- read.csv2("pomoznaT.csv", stringsAsFactors = FALSE) -#vprZ <- subset(pomoznaT, pomoznaT$tip==0) - -#Napis (vprašanja) do ":" zamenja s "" -#Presledek za : pomemben, da izbrise tudi njega -#vprZ$dolgoIme <- gsub("^.*\\: ","", vprZ$dolgoIme) -########!!!!!!!!!!!!!! -########!!!!!!!!!!!!!!!! -#Nejasno: -vprZ$dolgoIme1 <- vprZ$dolgoIme -vprZ$dolgoIme <- vprZ$kljucnaBeseda - - -#Fun: izloci samo veljavne odgovore: -#ii = kratko ime vprasanja in se uporablja za klicanje in nov zapis glede na doloceno vprasanje - -#odgVeljavni <- numeric() -#for (i in (1:(length(vprZ$kratkoIme))-3)){ -# ii <- vprZ$kratkoIme[i] -#odgVeljavni[ii] <- subset(veljavneEnote[[1]][ii], veljavneEnote[[1]][ii]>0) -#} - -# Nejasno: -odgVeljavni <- veljavniOdg[[1]] - -#Izracuni iz odgVeljavni (stevilo, povprecje....) -odgSt <- lengths(odgVeljavni) -odgMean <- sapply(odgVeljavni, mean) -odgSd <- sapply(odgVeljavni, sd) - -# Zaokrozimo na eno decimalko in zamenjamo vrednosti NA s piko -odgSd <- sapply(odgSd, function(x){ - if (!is.na(x)){x <- formatC( round(as.numeric(x), 1 ), format='f', digits=1 )} - else {x <- "(.)"} -}) - - -odgMin <-sapply(odgVeljavni, min) -odgMax <-sapply(odgVeljavni, max) - -napisiSklop <- c("Obveščanje na fakulteti", - "Prostori, oprema in urnik", - "Knjižnica", - "Mednarodna mobilnost", - "Svetovalna pomoč študentom", - "Drugi dejavniki študijskega procesa", - "Študentski svet in obštudijske dejavnosti", - "Zadovoljstvo s študijem") - -#Izracuni po sklopih -odgSklop <- list(median(odgMean[1:3]), - median(odgMean[4:7]), - median(odgMean[8:11]), - median(odgMean[12:17]), - median(odgMean[18:22]), - median(odgMean[23:24]), - median(odgMean[25:26]), - odgMean[[27]]) - - - -#Pripravimo stolpec z medianami povprecij sklopa, da lahko t3 razvrcamo znotraj median povprecij sklopov -odgSklop_R <- c(rep(odgSklop[[1]],3), - rep(odgSklop[[2]],4), - rep(odgSklop[[3]],4), - rep(odgSklop[[4]],6), - rep(odgSklop[[5]],5), - rep(odgSklop[[6]],2), - rep(odgSklop[[7]],2), - odgSklop[[8]]) - -# Ce ima dolocena fakulteta dodatni sklop, to upostevamo pri izracunu -# Predvidevanje: kaj če ima dodatnih sklopov več? -if (dodatniSklop == 1){ - odgSklop <- c(odgSklop, median(odgMean[28:(28 + length(napisi_dodatniSklop_priloga)-1)])) - odgSklop_R <- c(odgSklop_R, rep(odgSklop[[9]], length(napisi_dodatniSklop_priloga))) - napisiSklop <- c(napisiSklop, dodatniSklop_napis) -} - -# Uporabljamo pri avtomatskem povzetku -odgMean_rounded <- as.numeric(formatC(odgMean, digits=1, format ='f')) -povpSklopi_zaIzpis <- as.data.frame(cbind(odgMean_rounded, odgSklop_R), - stringsAsFactors =F) -idSklopov_zaIzpis <- c(rep(1,3), - rep(2,4), - rep(3,4), - rep(4,6), - rep(5,5), - rep(6,2), - rep(7,2), - 8) - -if (dodatniSklop == 1){ - idSklopov_zaIzpis <- c(idSklopov_zaIzpis, rep(9,3)) -} - -povpSklopi_zaIzpis <- cbind(povpSklopi_zaIzpis, idSklopov_zaIzpis) -povpSklopi_zaIzpis <- arrange(povpSklopi_zaIzpis, desc(odgSklop_R), desc(odgMean_rounded)) - -sklop_Z <- cbind(napisiSklop, 1:length(odgSklop), as.numeric(formatC(unlist(odgSklop), digits=1, format = 'f')), "id", "tip") - -colnames(sklop_Z) <- c("napisiSklop", "id", "odgSklop", "opis", "tip") - -for (i in (1:length(sklop_Z[,3]))){ - - if (sklop_Z[i,3] > 4.5){ - sklop_Z[i,4] <- gsub("id", "nad 4.5", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 1, sklop_Z[i,5]) - } - else if (sklop_Z[i,3] > 4 ){ - sklop_Z[i,4] <- gsub("id", "nad 4", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 2, sklop_Z[i,5]) - } - - else if (sklop_Z[[i,3]] > 3.5){ - sklop_Z[i,4] <- gsub("id", "3.5do4", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 3, sklop_Z[i,5]) - } - - else if(sklop_Z[[i,3]] > 3){ - sklop_Z[i,4] <- gsub("id", "nad 3", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 4, sklop_Z[i,5]) - } - - else if (sklop_Z[[i,3]] <= 3){ - sklop_Z[i,4] <- gsub("id", "pod 3", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 5, sklop_Z[i,5]) - } - } - - - -#Izracuni za barplot, glede na vrsto programa ('prog_r2') -# Koncni rezultat je seznam s stolpci stopnjaMean_v, stopnjaId_v -# ..., iii (napis), stopnjaMeanSkupaj_v -graf_p <- list() -graf_p3 <- list() - -# Za shranjevanje zacasnih rezultatov -graf_p_temp <- list() -graf_p_temp3 <- list() - -# Pri tabelah ne izlocimo povp., glede na letnik / stopnjo, ki imajo -# st. enot manjse od 4, tam povprecju dodamo dva oklepaja oz. enega -# za st. enot manjse od 10 - -tabela_p <- list() -tabela_p3 <- list() -tabela_p_temp <- list() -tabela_p_temp3 <- list() - -for (i in (1:length(vprZ$kratkoIme))){ - ii <- vprZ$kratkoIme[i] - iii <- vprZ$kljucnaBeseda[i] - iii2 <- vprZ$grafBeseda[i] - -# Za veljavne enote izracunamo -# odgovore, idStopnje, in letnik -stopnjaMean_v <- as.numeric(subset(veljavneEnote[[1]][[ii]], - veljavneEnote[[1]][[ii]]>0)) - - -stopnjaId_v <- as.numeric(subset(veljavneEnote[[1]][["prog_r2"]], - veljavneEnote[[1]][ii]>0)) - -letnik_v <- as.numeric(subset(veljavneEnote[[1]][["letnik"]], - veljavneEnote[[1]][ii]>0)) - -letnik_v <- letnik_v[letnik_v > 0] - -#Izracun povprecij glede na (prog_r2) (vrsto programov) -graf_p_temp <- cbind(Hmisc::summarize(stopnjaMean_v, - by = stopnjaId_v, - FUN = mean), iii) - -# Izracun povprecij glede na letnik in pripis napisov za graf -graf_p_temp3 <- cbind(Hmisc::summarize(stopnjaMean_v, - by = letnik_v, - FUN = mean), iii2) - -# Povprecja glede na stopnjo / letnik, ki jih bomo prikazali v tabelah zaokrozimo na 1 dec. -tabela_p_temp <- graf_p_temp -tabela_p_temp3 <- graf_p_temp3 - -for(i in(1:nrow(tabela_p_temp))){ - tabela_p_temp$stopnjaMean_v[[i]] <- formatC( round(as.numeric(tabela_p_temp$stopnjaMean_v[[i]]), 1 ), format='f', digits=1 ) -} - -for(i in(1:nrow(tabela_p_temp3))){ - tabela_p_temp3$stopnjaMean_v[[i]] <- formatC( round(as.numeric(tabela_p_temp3$stopnjaMean_v[[i]]), 1 ), format='f', digits=1 ) -} - -#tabela_p_temp$stopnjaMean_v <- round(tabela_p_temp$stopnjaMean_v, digits=1) -#tabela_p_temp2$stopnjaMean_v <- round(tabela_p_temp2$stopnjaMean_v, digits=1) -#tabela_p_temp3$stopnjaMean_v <- round(tabela_p_temp3$stopnjaMean_v, digits=1) - - - -# Prestejemo stevilo enot na posamezen dejavnik in iz graf_p_temp izkljucimo: -# povp studijskih stopenj in letnike, ki imajo stevilo enot manjse od 4 - -# paste0 oklepaj, dva -stevilo_PoStopnjah <- table(stopnjaId_v) -stevilo_PoLetnikih <- table(letnik_v) - -for (i in 1:length(stevilo_PoStopnjah)){ - if (stevilo_PoStopnjah[i] < 4 ){ - # Izkljucimo povprečja, ki imajo manj, kot štiri enote. - #graf_p_temp$stopnjaMean_v[i] <- NA - tabela_p_temp$stopnjaMean_v[i] <- paste0("((", tabela_p_temp$stopnjaMean_v[i], "))") - } - else if (stevilo_PoStopnjah[i] >=4 & stevilo_PoStopnjah[i] < 10){ - tabela_p_temp$stopnjaMean_v[i] <- paste0("(", tabela_p_temp$stopnjaMean_v[i], ")") - } -} - -for (i in 1:length(stevilo_PoLetnikih)){ - # Popravi, pri 50 - # Ce je manjsi, ne prikazi podatkov za celotni sklop - if (stevilo_PoLetnikih[i] < 4 ){ - graf_p_temp3$stopnjaMean_v[i] <- NA - tabela_p_temp3$stopnjaMean_v[i] <- paste0("((", tabela_p_temp3$stopnjaMean_v[i], "))") - }#else if (stevilo_PoLetnikih[i] >= 4 & stevilo_PoLetnikih[i] <10){ - #graf_p_temp3$stopnjaMean_v[i] <- NA - #tabela_p_temp3$stopnjaMean_v[i] <- paste0("(", tabela_p_temp3$stopnjaMean_v[i], ")") - #} -} - -#Vrstica s povprecji fakultete (25 je nek umeten ID) -graf_vrstica <- c(25, formatC(odgMean[ii], digits=1, format='f'), iii) -graf_vrstica2 <- c(25, formatC(odgMean[ii], digits=1, format='f'), iii2) - -graf_p_temp <- rbind(graf_p_temp, graf_vrstica) -graf_p_temp3 <- rbind(graf_p_temp3, graf_vrstica2) - -#barve <- c("#FFE4E1", "#1874CD", "#CD2626", "#D9E2E1", "#B7AFA3") -#names(barve) <- c("1", "7", "9", "25", "30") -# Podatkom za graf pripisemo napise za legendo in barvo -# To sem mislil uporabiti pri prikazu grafov brez dejavnikov -# ki imajo st. enot manjse od 4 -# Izkljuceno, ker se ne deluje - -#for (i in 1:nrow(graf_p_temp)){ -# ii2 <- graf_p_temp$stopnjaId_v[i] -# graf_p_temp$napis[[i]]<- vrstaProg[names(vrstaProg) == ii2] -# graf_p_temp$barve[[i]] <- barve[names(barve) == ii2] -#} - -#for (i in 1:nrow(graf_p_temp2)){ -# ii2 <- graf_p_temp2$stopnjaId_v[i] -# graf_p_temp2$napis[[i]]<- vrstaProg[names(vrstaProg) == ii2] -# graf_p_temp2$barve[[i]] <- barve[names(barve) == ii2] -# -#} - -tabela_p_temp <- rbind(tabela_p_temp, graf_vrstica) -tabela_p_temp3 <- rbind(tabela_p_temp3, graf_vrstica2) - -# Pripisemo stolpec s poprecji za vse stopnje / letnike -# z namenom razvrscanja sklopov glede na to povprecje -stopnjaMeanSkupaj_v <- odgMean[ii] -graf_p[ii] <- list(cbind(graf_p_temp, stopnjaMeanSkupaj_v)) -graf_p3[ii] <- list(cbind(graf_p_temp3, stopnjaMeanSkupaj_v)) - -tabela_p[ii] <- list(cbind(tabela_p_temp, stopnjaMeanSkupaj_v)) -tabela_p3[ii] <- list(cbind(tabela_p_temp3, stopnjaMeanSkupaj_v)) - -} - -# Privzete -# Barve naj se ujemajo tudi, pri izlocenih dejavnikih -# Dokumentacija: se že ujemajo, vendar to ni opisano - -barve <- c("#FFE4E1", "#1874CD", "#CD2626", "#D9E2E1", "#B7AFA3") -names(barve) <- c("1", "7", "9", "25", "30") -barva_font = "black" - -#Sys.setenv(R_GSCMD = "C:/Program Files/gs/gs9.18/bin/gswin64c.exe") -#library(extrafont) -#loadfonts() -#library(showtext) -#library(Cairo) - -font.add("CM Roman", regular = paste0(getwd(),"/cmunrm.ttf")) -#font.families() - -#Funkcija za risanje barchartov glede na 'prog_r2' -graf_program_f <- function(x, y, z){ -nivojiFaktorjev <- factor(dejavniki$stopnjaId_v) -vrstniRedNivojev <- sort(unique(as.numeric((dejavniki$stopnjaId_v)))) -nivojiFaktorjev <- factor(nivojiFaktorjev, levels=rev(vrstniRedNivojev)) - -# Podatke uredimo glede na skupno povprecje dejavnikov -dejavniki <- arrange(dejavniki, desc(dejavniki[,length(dejavniki)])) -dejavniki$iii2 <- factor(dejavniki$iii2, levels=rev((unique(dejavniki$iii2)))) - -# Urejanje velikosti grafov -manjsi.font <- 0 -manjsi.kvadrat <- 0 -manjsi.height <- 0 -manjsi.width <- 0 - -if(nrow(dejavniki)==2*length(vrstaProg)){ - if((length(vrstaProg)-1)<3){ - asp.ratio <- 0.85 - manjsi.width <- 0.5 - manjsi.height <- 3 - }else{ - asp.ratio <- 0.7 - manjsi.height <- 3 - } -}else if (nrow(dejavniki)==3*length(vrstaProg)){ - asp.ratio <- 0.95 - manjsi.height <- 1.5 -}else if(nrow(dejavniki)==4*length(vrstaProg)){ - asp.ratio <- 1.3 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - manjsi.width <- 0.3 - -}else if(nrow(dejavniki)==5*length(vrstaProg)){ - asp.ratio <- 1.4 - manjsi.font <- 2 - manjsi.height <- 1 - manjsi.kvadrat <- 0.4 - manjsi.width <- 1.1 - -}else if(nrow(dejavniki)==6*length(vrstaProg)){ - asp.ratio <- 1.55 - manjsi.font <- 3.5 - manjsi.kvadrat <- 0.3 - manjsi.width <- 1.3 - manjsi.height <- 0.8 -} - - -izpis <- ggplot(dejavniki, - aes(x=iii2,y=as.numeric(meanGraf), - fill=nivojiFaktorjev, - label = meanGraf))+ - geom_bar(stat="identity", position="dodge")+ #Pozicija value label-ov - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = barva_font, - #fontface = "bold", - size = 4.2)+ - - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none) + - - scale_fill_manual(name = "", breaks=nivojiFaktorjev, - values= rev(dejavniki$barve), - labels= dejavniki$napis, - guide= guide_legend())+ - - xlab("")+ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(aspect.ratio= asp.ratio)+ - - theme(axis.text=element_text(size=15-manjsi.font, - family='CM Roman'), - axis.title=element_text(size=15-manjsi.font, - family='CM Roman'), - legend.position="right", - #legend.direction = "horizontal", - #Velikost, barva kvaratov - #legend.key=element_rect(size=10, color="white"), - legend.key.size = unit(1.6-manjsi.kvadrat, "lines"), - #barva / velikost / naklon legende - legend.text = element_text(size = 12.3-manjsi.font), - # Dodamo crto pri x in y osi, ki je drugace pri tej temi ni - axis.line.x = element_line(colour = 'black', - size=0.5, - linetype='solid'), - axis.line.y = element_line(colour = 'black', - size=0.5, - linetype='solid'))+ - - #coord_flip(ylim=c(1,5)) - coord_flip() -#print(izpis) -#dev.off() - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/izpis",stevec,".pdf") - - showtext.auto() - ggsave(izpis, filename=ime, width=9-manjsi.width, - height=6-manjsi.height, units="in", - device=cairo_pdf) - -#showtext.end() -#embed_fonts(ime) - - caption <- as.character(y) - cat(paste0('\\begin{figure}[!ht] - \\flushleft \\caption{', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} - -graf_letnik_f <- function(x, y, z){ - # Dejavnike uredimo glede na padajoce povprecje vseh letnikov - dejavniki1 <- arrange(dejavniki1, desc(dejavniki1[,length(dejavniki1)])) - - - nivojiFaktorjev <- factor(dejavniki1$letnik_v) - vrstniRedNivojev <- sort(unique(as.numeric((dejavniki1$letnik_v)))) - nivojiFaktorjev <- factor(nivojiFaktorjev, levels=rev(vrstniRedNivojev)) - - - # Napise ponovimo, da se njihovo stevilo sklada z nivoji faktorjev, ki - # so ze ponovljeni za vsak dejavnik v dejavniki1 - #napisiLegenda <- rep(factor(napisiLetnik$napisi, levels = rev(napisiLetnik$napisi)), length (unique(dejavniki1$iii2))) - - napisiLegendaSeznam <- data.frame(id=c(1, 2, 3, 4, 25), - napisLetnik=c("Prvi letnik", - "Drugi letnik", - "Tretji letnik", - "Četrti letnik", - "Skupaj"), - stringsAsFactors = F) - #napisiLetnik2 <- rep(napisiLetnik.uq) - napisiLetnik2 <- list() - for (u in 1:nrow(dejavniki1)){ - ux <- dejavniki1$letnik_v[u] - napisiLetnik2[[u]] <- napisiLegendaSeznam$napisLetnik[napisiLegendaSeznam$id == ux] - } - - napisiLetnik2 <- unlist(napisiLetnik2) - #napisiLegenda <- rep(napisiLegenda, length(unique(dejavniki1$iii2))) - - # Podatke uredimo glede na skupno povprecje dejavnikov - dejavniki1 <- arrange(dejavniki1, desc(stopnjaMeanSkupaj_v)) - dejavniki1$iii2 <- factor(dejavniki1$iii2, levels=rev((unique(dejavniki1$iii2)))) - - manjsi.font <- 0 - manjsi.kvadrat <- 0 - manjsi.height <- 0 - manjsi.width <- 0 - - if(nrow(dejavniki1)==2*length(letniki.uq)){ - asp.ratio <- 0.75 - manjsi.height <- 3 - }else if (nrow(dejavniki1)==3*length(letniki.uq)){ - asp.ratio <- 0.95 - manjsi.height <- 1.5 - }else if(nrow(dejavniki1)==4*length(letniki.uq)){ - asp.ratio <- 1.3 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - manjsi.width <- 0.3 - - }else if(nrow(dejavniki1)==5*length(letniki.uq)){ - asp.ratio <- 1.4 - manjsi.font <- 1 - manjsi.height <- 1 - manjsi.kvadrat <- 0.4 - manjsi.width <- 0.9 - - }else if(nrow(dejavniki1)==6*length(letniki.uq)){ - asp.ratio <- 1.7 - manjsi.font <- 2 - manjsi.kvadrat <- 0.4 - manjsi.width <- 1 - } - - - #gx <- subset(dejavniki, dejavniki$stopnjaId_v != 4 ) - izpis <- ggplot(dejavniki1, - aes(x=iii2,y=round(as.numeric(stopnjaMean_v), digits=1), - fill=nivojiFaktorjev, - label = stopnjaMean_v))+ - geom_bar(stat="identity", position="dodge")+ #Pozicija value label-ov - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = barva_font, - #fontface = "bold", - size = 4.2)+ - scale_y_continuous(expand=c(0,0),limits=c(1,5), - oob = rescale_none) + - - scale_fill_manual(name = "", breaks=nivojiFaktorjev, - values= rev(dejavniki1$barve), - labels= dejavniki1$napisLetnik)+ - - #xlab("Dejavniki\n")+ - xlab("")+ - ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(aspect.ratio= asp.ratio)+ - - theme(axis.text=element_text(size=15-manjsi.font, - family='CM Roman'), - axis.title=element_text(size=15-manjsi.font, - family='CM Roman'), - legend.position="right", - #legend.direction = "horizontal", - #Velikost, barva kvaratov - #legend.key=element_rect(size=10, color="white"), - legend.key.size = unit(1.6-manjsi.kvadrat, "lines"), - #barva / velikost / naklon legende - legend.text = element_text(size = 13-manjsi.font), - axis.line.x = element_line(colour = 'black', size=0.5, - linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, - linetype='solid'))+ - - coord_flip() - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/povprecjaSklopLetnik",stevec,".pdf") - ggsave(izpis, filename=ime, width=9-manjsi.width, height=7-manjsi.height, - units="in", device= cairo_pdf) - caption <- as.character(y) - cat(paste0('\\begin{figure}[!ht] - \\flushleft \\caption{', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} - -#ggsave(graf_program_f(dejavniki), width=8, height=8) -# ggsave(graf_program_f(dejavniki), filename="blah.pdf", -# width=8, height=8, units="in", device=cairo_pdf) - -# Nejasno: zakaj to naredim na ta način? -# Ustvarimo prazna df-ja -# da tam nadomescamo povprecja glede na dejavnik -# to prikazujemo pri tabelah po stopnji / letniku - -stID_v <- as.matrix(rep(c(as.numeric(imena)), nrow(vprZ)), ncol=1) -stMean_v <- as.matrix(rep("0", length(vrstaProg)*nrow(vprZ)), ncol=1) -stMean_v_graf <- as.matrix(rep("0", length(vrstaProg)*nrow(vprZ)), ncol=1) - -iii3 <- sapply(vprZ$kljucnaBeseda, function(x){rep(x,length(vrstaProg))}) -iii3 <- matrix(iii3, ncol=1) -nap <- as.matrix(rep(c(vrstaProg), nrow(vprZ)), ncol=1) - -# B7 - siva, D9 - sivomodra, CD - rdeca, 1874-modra, ffe - roza -# c7 - sivoroza - -barve1 <- c("#1874CD", "#CD2626", "#C7AFA3", "#D9E2E1", "#B7AFA3") -# Color brewer set 1, preskocimo rumeno -# rdeca, modra, zelena, vijolicna, oranzna, rjava, siva; , "#45AE49" -#barve1 <- c("#ED2700", "#227FB9", "#9D51A3", "#FF8200", "#AD571D", "#9C9A99") -# Pomembno, da je skupaj tako v grafih po programih, kot v grafih -# po letnikih, prikazan z isto barvo -barveStopnja <- barve1 -barveStopnja[length(vrstaProg)] <- "#FFE4E1" -#barveStopnja[length(vrstaProg)] <- "#45AE49" - - -bar <- as.matrix(rep(c(barveStopnja[1:length(vrstaProg)]), nrow(vprZ)), ncol=1) - -stMeanSk_v <- as.matrix(rep("0", length(vrstaProg)*nrow(vprZ)), ncol=1) -odgSklopR_2 <- as.vector(sapply(odgSklop_R, function(x){rep(x, length(vrstaProg))})) - -vprZsklop2 <- as.vector(sapply(vprZ$sklop, function(x){rep(x, length(vrstaProg))})) - -# Grafom po letnikih pripisemo napise za v legendo -napisiLetnik <- c("Prvi letnik", "Drugi letnik", "Tretji letnik", - "Četrti letnik", "Skupaj") -napisiLetnik.tabela <- c("\\makecell{Prvi\\\\letnik}", "\\makecell{Drugi\\\\letnik}", - "\\makecell{Tretji\\\\letnik}", "\\makecell{Četrti\\\\letnik}", - "\\shortstack{Skupaj}") -idLetnik <- c(1, 2, 3, 4, 25) -napisiLetnik <- data.frame(napisi = napisiLetnik, - napisiLetnik.tabela, - id = idLetnik, stringsAsFactors =F) - - -odgMeanSkupaj <- as.vector(sapply(odgMean, function(x){rep(x,length(vrstaProg))})) -kratkoIme <- as.vector(sapply(vprZ$kratkoIme, function(x){rep(x,length(vrstaProg))})) - -prazen_n <- as.vector(sapply(odgSt, function(x){rep(x,length(vrstaProg))})) -prazen_min <- as.vector(sapply(odgMin, function(x){rep(x,length(vrstaProg))})) -prazen_max <- as.vector(sapply(odgMax, function(x){rep(x,length(vrstaProg))})) -prazen_sd <- as.vector(sapply(odgSd, function(x){rep(x,length(vrstaProg))})) - -# Dolocimo unikatna imena vrstic, ker drugace javi napako -prazen_df <- data.frame(kratkoIme, stID_v, prazen_n, prazen_min, prazen_max, prazen_sd, stMean_v, stMean_v_graf, iii3, nap, bar, stMeanSk_v, odgSklopR_2, vprZsklop2, odgMeanSkupaj, row.names = 1:length(kratkoIme), stringsAsFactors = F) - -#prazen_df <- arrange(prazen_df, vprZsklop2, odgSklopR_2, odgMeanSkupaj) - -# Imena dejavnikov shranimo, da lahko poimenujemo posamezne kose, tega -# df, potem ko ga razdelimo glede na dejavnike - -vrstiRedImen <- prazen_df$kratkoIme[seq(1, length(prazen_df$kratkoIme), - by=length(vrstaProg))] - -prazen_df <- split(prazen_df, rep(1:nrow(vprZ),each=length(imena))) - -for (i in (1:(length(vrstaProg)))){ - ii <- imena[i] - for (j in 1:length(tabela_p)){ - colnames(prazen_df[[j]]) <- c("imeKratko","stopnjaId_v", "n", "min", "max", "sd", - "stopnjaMean_v", "meanGraf", "iii2", "napis", "barve", - "stopnjaMeanSkupaj_v", "odgSklop_R", "vprZ$sklop", - "odgMeanSkupaj") - - if (length(tabela_p[[j]]['stopnjaMean_v'][tabela_p[[j]]['stopnjaId_v']==ii])!= 0){ - prazen_df[[j]]$stopnjaMean_v[[i]] <- tabela_p[[j]]['stopnjaMean_v'][tabela_p[[j]]['stopnjaId_v']==ii] - - } - if (length(graf_p[[j]]['stopnjaMean_v'][graf_p[[j]]['stopnjaId_v']==ii])!= 0){ - prazen_df[[j]]$meanGraf[[i]] <- formatC(round(as.numeric(graf_p[[j]]['stopnjaMean_v'][graf_p[[j]]['stopnjaId_v']==ii]), digits = 1), digits = 1, format = 'f') - - } - } -} -### Podatke primerne za izris grafov transformiramo v obliko za tabele -### Povprecja, ki so prvotno v enem stoplcu, razdelimo v vec stolpcev -### Odvisno od stevila prisotnih stopenj. -prazen_df_t <- list() -for (i in (1:length(prazen_df))){ - for (j in (1:nrow(prazen_df[[i]]))){ - prazen_df[[i]][paste0("povp",j)] <- prazen_df[[i]]$stopnjaMean_v[[j]] - } - # Izlocimo samo eno vrstico - # in potrebne stolpce za izpis tabele - # 13 - idSklopa; 8 - ime; 3:6 - n min max sd, 15... uni, mag... - prazen_df_t[[i]] <- prazen_df[[i]][1, c(14, 9, 3, 6, 16:(16+length(vrstaProg)-1))] -} - -names(prazen_df) <- vrstiRedImen -names(prazen_df_t) <- vrstiRedImen -# data.frame spet zdruzimo v enega -prazen_df_t <- do.call(rbind, prazen_df_t) - -# podatke uredimo glede na id sklopa in padajoce povprecje za vse sklope -prazen_df_t <- arrange(prazen_df_t, vprZ$sklop, desc(prazen_df_t[,length(prazen_df_t)])) - -# Izlocimo stolpec z id-jem sklopa -prazen_df_t <- prazen_df_t[,-1] - -# Dolocimo napise za tabele po studijskih stopnjah: -if (length(vrstaProg) > 1){ - napisiT5 <- lapply(imena[-length(imena)], function(x){stopnjeUQ[,3][stopnjeUQ[,2]==x]}) - colnames(prazen_df_t) <- c("\\textbf{Dejavnik}", "n", "sd", unlist(napisiT5), "Skupaj") -}else if (length(vrstaProg) == 1){ - napisiT5 <- lapply(imena, function(x){stopnjeUQ[,3][stopnjeUQ[,2]==x]}) - colnames(prazen_df_t) <- c("\\textbf{Dejavnik}", "n", "sd", unlist(napisiT5)) -} - - -prazen_df_t[prazen_df_t == 0] <- "(.)" - - -# Tu so v seznamih vsa povprecja iz podatkov v tabela_p3, glede -# na letnik -# Vsi unikatni letniki + (25) skupaj - -letniki.uq <- sort(unique(podatki[[1]]$letnik)) -##### SPREMEMBA -#letniki.uq <- letniki.uq[letniki.uq != "-2"] - -if (length(letniki.uq) > 1){ - letniki.uq <- c(letniki.uq, 25) -} - -# prisotnim letnikom pripisemo napise -napisiLetnik.uq <- sapply(letniki.uq, function(x){ - napisiLetnik$napisi[napisiLetnik$id == x] -}) - -####### -#### AGREGIRANA TABELA PO LETNIKIH -#### TABELA 3 -# Df- ju z letniki in njihovimi napisi pripisemo stevilo enot, za -# vse enote in veljavne enote - -odstotki_f <- function(x, digits=1){ - formatC(sapply(x, function(y){ - y/x[length(x)]*100} - ), - digits = digits, format = "f") - #x <- x[1]/x[length(x)]*100 -} - -# Obdrzimo samo letnike, ki so prisotni v podatkih -# drugace se pojavijo problemi zaradi razlicnih dolzin vektorjev, od dolzine -# prvotnega df-ja. - -#napisiLetnik <- napisiLetnik[c(letniki.uq[-length(letniki.uq)]),] -#napisiLetnik <- na.omit(napisiLetnik) - -# Izklop enot z neveljavnim idprog -#napisiLetnik.Vsi.n_temp <- count(subset(podatki[[1]], podatki[[1]]$letnik > 0), letnik) -#napisiLetnik.Vsi.n_temp <- subset(podatki[[1]], podatki[[1]]$letnik > 0 & -# podatki[[1]]$idprog != -2) - -napisiLetnik.Vsi.n_temp <- subset(podatki[[1]], podatki[[1]]$letnik > 0) -napisiLetnik.Vsi.n_temp <- count(napisiLetnik.Vsi.n_temp, letnik) - - -#### Ce je pri veljavnih enotah kaksen letnik manj, kot pri vseh enotah -# potem tam vrednosti pri 'Vsi_n' in 'Vsi_pct' dolocimo kot '0' -napisiLetnik.Vsi_n_vektor <- rep(0, length(napisiLetnik$id)-1) - -for (i in as.numeric(c(letniki.uq))){ - if (i != 25){ - napisiLetnik.Vsi_n_vektor[i] <- napisiLetnik.Vsi.n_temp$n[napisiLetnik.Vsi.n_temp$letnik == i] - } -} - -# Dodamo sestevek po letnikih -napisiLetnik$Vsi_n <- c(napisiLetnik.Vsi_n_vektor, sum(napisiLetnik.Vsi_n_vektor)) -napisiLetnik$Vsi_pct <- odstotki_f(napisiLetnik$Vsi_n) - -# Prestejemo stevilo veljavnih enot po letniku -napisiLetnik.Veljavni.n_temp <- count(subset(veljavneEnote[[1]], - veljavneEnote[[1]]$letnik > 0), letnik) - -# Izkljucitev enot, ki imajo neveljaven idprog -#napisiLetnik.Veljavni.n_temp <- count(subset(veljavneEnote[[1]], -# veljavneEnote[[1]]$letnik > 0 & -# veljavneEnote[[1]]$idprog != -2), letnik) - - -napisiLetnik.Veljavni_n_vektor <- rep(0, length(napisiLetnik$id)-1) -for (i in as.numeric(c(letniki.uq))){ - if (i != 25){ - napisiLetnik.Veljavni_n_vektor[i] <- napisiLetnik.Veljavni.n_temp$n[napisiLetnik.Veljavni.n_temp$letnik == i] - } -} - -napisiLetnik$Veljavni_n <- c(napisiLetnik.Veljavni_n_vektor, sum(napisiLetnik.Veljavni_n_vektor)) -napisiLetnik$Veljavni_pct <- odstotki_f(napisiLetnik$Veljavni_n) - -napisiLetnik$Zavrnili_n <- napisiLetnik$Vsi_n - napisiLetnik$Veljavni_n -napisiLetnik$Zavrnili_pct <- odstotki_f(napisiLetnik$Zavrnili_n) - - - -# napisi primerni za v tabele -napisiLetnik.uq2 <- sapply(letniki.uq, function(x){ - napisiLetnik$napisiLetnik.tabela[napisiLetnik$id == x] -}) - -# Prisotnim letnikom pripisemo napise (npr. Prvi l, drugi, Skupaj) -napisiLetnik.uq1 <- as.matrix(rep(napisiLetnik.uq, nrow(vprZ)), ncol=1) - - -stID_v <- as.matrix(rep(c(as.numeric(letniki.uq)), nrow(vprZ)), ncol=1) -stMean_v <- as.matrix(rep("0", length(letniki.uq)*nrow(vprZ)), ncol=1) -stMean_v_graf <- as.matrix(rep("0", length(letniki.uq)*nrow(vprZ)), ncol=1) - -iii3 <- sapply(vprZ$kljucnaBeseda, function(x){rep(x,length(letniki.uq))}) -iii3 <- matrix(iii3, ncol=1) -nap <- as.matrix(rep(c(letniki.uq), nrow(vprZ)), ncol=1) -barve1[length(letniki.uq)] <- "#FFE4E1" -bar <- as.matrix(rep(c(barve1[1:length(letniki.uq)]), nrow(vprZ)), ncol=1) -stMeanSk_v <- as.matrix(rep("0", length(letniki.uq)*nrow(vprZ)), ncol=1) -odgSklopR_2 <- as.vector(sapply(odgSklop_R, function(x){rep(x, length(letniki.uq))})) - -vprZsklop2 <- as.vector(sapply(vprZ$sklop, function(x){rep(x, length(letniki.uq))})) - - -odgMeanSkupaj <- as.vector(sapply(odgMean, function(x){rep(x,length(letniki.uq))})) -kratkoIme <- as.vector(sapply(vprZ$kratkoIme, function(x){rep(x,length(letniki.uq))})) - -prazen_n <- as.vector(sapply(odgSt, function(x){rep(x,length(letniki.uq))})) -prazen_min <- as.vector(sapply(odgMin, function(x){rep(x,length(letniki.uq))})) -prazen_max <- as.vector(sapply(odgMax, function(x){rep(x,length(letniki.uq))})) -prazen_sd <- as.vector(sapply(odgSd, function(x){rep(x,length(letniki.uq))})) - -# Dolocimo unikatna imena vrstic, ker drugace javi napako -prazen_df_letnik <- data.frame(kratkoIme, stID_v, napisiLetnik.uq1, prazen_n, prazen_min, prazen_max, prazen_sd, stMean_v, stMean_v_graf, iii3, nap, bar, stMeanSk_v, odgSklopR_2, vprZsklop2, odgMeanSkupaj, row.names = 1:length(kratkoIme), stringsAsFactors = F) - -#prazen_df_letnik <- arrange(prazen_df_letnik, vprZsklop2, desc(odgSklopR_2), desc(odgMeanSkupaj)) - -# Imena dejavnikov shranimo, da lahko poimenujemo posamezne kose, tega -# df, potem ko ga razdelimo glede na dejavnike - -vrstiRedImen <- prazen_df_letnik$kratkoIme[seq(1, length(prazen_df_letnik$kratkoIme), by=length(letniki.uq))] - -prazen_df_letnik <- split(prazen_df_letnik, rep(1:nrow(vprZ),each=length(letniki.uq))) - -for (i in (1:(length(letniki.uq)))){ - ii <- letniki.uq[i] - for (j in 1:length(tabela_p3)){ - colnames(prazen_df_letnik[[j]]) <- c("imeKratko","letnik_v", "napisLetnik", "n", "min", "max", "sd", "stopnjaMean_v", "meanGraf", "iii2", "napis", "barve", "stopnjaMeanSkupaj_v", "odgSklop_R", "vprZ$sklop", "odgMeanSkupaj") - if (length(tabela_p3[[j]]['stopnjaMean_v'][tabela_p3[[j]]['letnik_v']==ii])!= 0){ - prazen_df_letnik[[j]]$stopnjaMean_v[[i]] <- tabela_p3[[j]]['stopnjaMean_v'][tabela_p3[[j]]['letnik_v']==ii] - - } - if (length(graf_p3[[j]]['stopnjaMean_v'][graf_p3[[j]]['letnik_v']==ii])!= 0){ - prazen_df_letnik[[j]]$meanGraf[[i]] <- formatC(round(as.numeric(graf_p3[[j]]['stopnjaMean_v'][graf_p3[[j]]['letnik_v']==ii]), digits = 1), digits = 1, format = 'f') - - } - } -} -### Podatke primerne za izris grafov transformiramo v obliko za tabele -### Povprecja, ki so prvotno v enem stoplcu, razdelimo v vec stolpcev -### Odvisno od stevila prisotnih stopenj. -prazen_df_letnik_t <- list() -for (i in (1:length(prazen_df_letnik))){ - for (j in (1:nrow(prazen_df_letnik[[i]]))){ - prazen_df_letnik[[i]][paste0("povp",j)] <- prazen_df_letnik[[i]]$stopnjaMean_v[[j]] - } - # Izlocimo samo eno vrstico - # in potrebne stolpce za izpis tabele - # 15 - idSklopa; 10 - ime; 4:7 - n min max sd, 17... uni, mag... - # Zaradi pomanjkanja prostora min in max v prikazu teh tabel izpustimo - prazen_df_letnik_t[[i]] <- prazen_df_letnik[[i]][1, c(15, 10, 4, 7, 17:(17+length(letniki.uq)-1))] -} - -names(prazen_df_letnik) <- vrstiRedImen -names(prazen_df_letnik_t) <- vrstiRedImen -# data.frame spet zdruzimo v enega -prazen_df_letnik_t <- do.call(rbind, prazen_df_letnik_t) - -# podatke uredimo glede na id sklopa in padajoce povprecje za vse sklope -prazen_df_letnik_t <- arrange(prazen_df_letnik_t, vprZ$sklop, desc(prazen_df_letnik_t[,length(prazen_df_letnik_t)])) - -# Izlocimo stolpec z id-jem sklopa -prazen_df_letnik_t <- prazen_df_letnik_t[,-1] -prazen_df_letnik_t[prazen_df_letnik_t == 0] <- "(.)" - -if(length(letniki.uq) == 1){ - colnames(prazen_df_letnik_t) <- c("\\textbf{Dejavnik}", "n", "sd", napisiLetnik.uq2) -}else if(length(letniki.uq) > 1){ - colnames(prazen_df_letnik_t) <- c("\\textbf{Dejavnik}", "n", "sd", - napisiLetnik.uq2[-length(napisiLetnik.uq2)], "Skupaj") -} - -# V vrstaProg so unikatni programi + 'skupaj' -# Izpis povprecij glede na stopnjo -meanSklop <- list() -for (i in (1:(length(vrstaProg)))){ - ii <- names(vrstaProg)[i] -meanSklop[[i]] <- sapply(prazen_df, function(x){ - if (length(x$stopnjaMean_v[x$stopnjaId_v==ii])!=0){ - x$stopnjaMean_v[x$stopnjaId_v==ii] - }else{x <- NA} - }) -} - -# Izracuni povprecij po letniku -# Manjsim od 4 enot pripisemo NA -# Zadnji so izracuni za Skupaj -napisiLetnik_graf <- list() -meanLetnik <- list() - -# Sestavimo vektorje s povprecji glede na letnike, in skupaj -for (i in 1:5){ - ii <- napisiLetnik.uq[i] - meanLetnik[[i]] <- sapply(prazen_df_letnik, function(x){ - if (length(x$stopnjaMean_v[x$letnik_v==ii])!=0){ - x$stopnjaMean_v[x$letnik_v==ii]} - else{x <- NA}}) - napisiLetnik_graf[[i]] <- ii - -} -#meanLetnik[meanLetnik==0] <- "(.)" - -### Tabela: Povprečne vrednosti za vse dejavnike (po_sklopih_urejena), -### ki je urejena glede na padajoče povprečje sklopov (odgSklop_R, odgSklop_R2) -### in znotraj tega glede na padajoce povprecje dejavnikov -### Pred dejavnike dodamo 'Sklop: ... ' -#skl_Beseda <- paste0("\\textbf{Sklop: ", unique(vprZ$sklopBeseda), "}") - -# Polna imena dejavnikov, ki jih v porocilu ne prikazemo -#dolgoIme2 <- c(vprZ$dolgoIme1, skl_Beseda) -# Okrajsana imena dejavnikov, ki jih prikazemo v porocilu -#dolgoIme3 <- c(vprZ$dolgoIme, skl_Beseda) -dolgoIme3 <- vprZ$dolgoIme -# -#if (length(skl_Beseda) == 8){ -# odgSt2 <- c(odgSt, c("", "", "", "", "", "", "", "")) -# odgMin2 <- c(odgMin, c("", "", "", "", "", "", "", "")) -# odgMax2 <- c(odgMax, c("", "", "", "", "", "", "", "")) - # 'Povprecje' sklopov nastavimo na 10, zato, da je napis 'sklop' pri razvrscanju - # umescen pred napise dejavnikov -# odgMean2 <- c(odgMean, c(10, 10, 10, 10, 10, 10, 10, 10)) -# odgSd2 <- c(odgSd, c("", "", "", "", "", "", "", "")) -# vprZ.Sklop2 <- c(vprZ$sklop, c(1:8)) -#}else if (length(skl_Beseda) == 9){ -# odgSt2 <- c(odgSt, c("", "", "", "", "", "", "", "", "")) -# odgMin2 <- c(odgMin, c("", "", "", "", "", "", "", "", "")) -# odgMax2 <- c(odgMax, c("", "", "", "", "", "", "", "", "")) -# odgMean2 <- c(odgMean, c(10, 10, 10, 10, 10, 10, 10, 10, 10)) -# odgSd2 <- c(odgSd, c("", "", "", "", "", "", "", "", "")) -# vprZ.Sklop2 <- c(vprZ$sklop, c(1:9)) -#} - -# Napise sklopov glede na spremenljivko odgSklop_R2, povezemo s posameznimi dejavniki sklopa -#odgSklop_R2 = c(odgSklop_R, unlist(odgSklop)) - -#d39 <- data.frame(dolgoIme2, -# dolgoIme3, -# odgSt2, -# odgMin2, -# odgMax2, -# odgMean2, -# odgSd2, -# vprZ.Sklop2, -# odgSklop_R2, -# stringsAsFactors = F) - -#poSklopih_urejena <- arrange(d39, desc(odgSklop_R2), vprZ.Sklop2, desc(odgMean2)) -#poSklopih_urejena$odgMean2 <- formatC(poSklopih_urejena$odgMean2, digits=1, format='f') -# Izbrišemo povprečja (10), ki smo jih uporabili za uvrščanje napisov sklopov -# pred pripadajoče dejavnike -#poSklopih_urejena$odgMean2[poSklopih_urejena$odgMean2 == "10.0"] <- "" - -# Iz podatkovnega okvirja izbrisemo spremenljivke, ki smo jih uporabili za razvrscanje -#poSklopih_urejena <- poSklopih_urejena[,2:7] -#colnames(poSklopih_urejena) <- c("\\textbf{Dejavnik}", "n", "min", "max", "povprečje", "sd") - -# Ta podatkovni okvir sluzi, kot baza tabelam: po_sklopih, po_sklopih_urejena, -# po_sklopih_po_kategorijah -# v vprZ$dolgoIme1 so polna imena dejavnikov, v naslednjem pa okrajšave - -d3 <- data.frame(vprZ$dolgoIme1, - vprZ$dolgoIme, - odgSt, - odgMin, - odgMax, - odgMean, - odgSd, - vprZ$sklop, - odgSklop_R, - stringsAsFactors = FALSE) - - -poSklopih <- d3[,c(1, 3, 6, 7)] - -# V d3.2 so povprecja glede na dejavnik urejena po sklopih in padajocem povprecju sklopa -# in padajocem povp dejavnikov -d3.2 <- arrange(d3, desc(odgSklop_R), vprZ$sklop, desc(odgMean)) - -#Za barvanje vrstic -stVprasanj <- as.numeric() -stVprasanj.uQ <- unique(d3.2$vprZ.sklop) -for (i in stVprasanj.uQ){ - stVprasanj <- c(stVprasanj, length(d3.2$odgSt[d3.2$vprZ.sklop == i])) -} - -poSklopih_urejena <- arrange(d3, desc(odgSklop_R), vprZ$sklop, desc(odgMean)) - -# Pridobimo unikatne ID-je sklopov, ki jih bomo nato povezali z napisi sklopov -idSklopov <- unique(poSklopih_urejena$vprZ.sklop) -# Napise sklopov uredimo glede na pripadajoce urejene dejavnike -napisiSklopov_addtorow <- sapply(idSklopov, function(x){napisiSklop[x]}) -# Pomembno, da so v tabeli s frekvencno porazdelitvijo odg, napisi sklopov prikazani v eni vrstici -napisiSklopov_addtorow_frekvencna <- paste0("\\multicolumn{11}{l}{\\textbf{Sklop: ", napisiSklopov_addtorow, "}}\\\\ ") -# Pomembno, da so v tabeli, kjer so dejavniki grupirani po sklopih, napisi sklopov -# prikazani v eni vrstici -napisiSklopov_addtorow <- paste0("\\multicolumn{6}{l}{\\textbf{Sklop: ", napisiSklopov_addtorow, "}}\\\\ ") - - -napisiSklopov_addtorow[seq(2,length(napisiSklopov_addtorow), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow[seq(2,length(napisiSklopov_addtorow), by=2)]) -# Pred napise sklopov dodamo črto -napisiSklopov_addtorow[2:length(napisiSklopov_addtorow)] <- paste0(napisiSklopov_addtorow[2:length(napisiSklopov_addtorow)]) - -#napisiSklopov_addtorow[length(napisiSklopov_addtorow)-1] <- paste0("\\hline ", napisiSklopov_#addtorow[length(napisiSklopov_addtorow)-1]) - -napisiSklopov_addtorow_frekvencna[seq(2,length(napisiSklopov_addtorow_frekvencna), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow_frekvencna[seq(2,length(napisiSklopov_addtorow_frekvencna), by=2)]) -# Za vrstico z imeni stoplcev pri tabeli s frekvencno porazdelitvijo narisemo crto -napisiSklopov_addtorow_frekvencna[1] <- paste0("\\hline ", napisiSklopov_addtorow_frekvencna[1]) - -# Mesta na katera bomo z addtorow v xtable izpisali sklope -mesta_addtorow <- c(1, cumsum(stVprasanj)[-length(stVprasanj)]) - - -#poSklopih_urejena$odgMean2 <- formatC(poSklopih_urejena$odgMean2, digits=1, format='f') -# Izbrišemo povprečja (10), ki smo jih uporabili za uvrščanje napisov sklopov -# pred pripadajoče dejavnike -#poSklopih_urejena$odgMean2[poSklopih_urejena$odgMean2 == "10.0"] <- "" - -# Iz podatkovnega okvirja izbrisemo spremenljivke, ki smo jih uporabili za razvrscanje -poSklopih_urejena <- poSklopih_urejena[,2:7] -colnames(poSklopih_urejena) <- c("\\textbf{Dejavnik}", "n", "min", "max", "povprečje", "sd") - - -#Zaradi kasnejsega urejanja po velikosti glede na povp. seznam pretvorimo v df. -dfZ <- as.data.frame(sklop_Z, stringsAsFactors = FALSE) -dfZ <- as.data.frame(lapply(dfZ, unlist), stringsAsFactors = FALSE) -#Dodamo stevilo vprasanj glede na sklop -if (dodatniSklop == 1){ - dfZ$stVprasanj <- c(3, 4, 4, 6, 5, 2, 2, 1, 3) -}else{ - dfZ$stVprasanj <- c(3, 4, 4, 6, 5, 2, 2, 1) -} - -#Uredimo po velikosti glede na odgSklop (povp. sklopa) -dfZ <- dfZ[with(dfZ, order(dfZ$odgSklop, decreasing = TRUE)), ] - -###### -###### -#####!!!!!! -#### katere vrstice naj bodo obarvane: -# ker dodamo vrstice Sklop, moramo vsem stevilom vprasanj pristeti +1 -#stVprasanj <- stVprasanj + 1 -d4_R <- stVprasanj - -d4_temp <- 0 -d4_R2 <- as.numeric() -for (i in (1:length(stVprasanj))){ - if (i %% 2 == 0){ - for(j in(1:stVprasanj[i])){ - d4_R2 <- c(d4_R2, j+d4_temp) - } - d4_temp <- d4_temp + stVprasanj[i] - } - else{ - d4_temp <- d4_temp + stVprasanj[i] - } -} - - -#Drugace obarvanje zamakne za eno vrstico -d4_R2 <- d4_R2 - 1 - -#Alternirajoce barvanje vrstic: dolocitev barve in vrstic, ki bodo obarvane -#rws3 <- seq(1, (nrow(d3)-1), by = 2) -#col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - -#Data frame z arrange iz dplyr uredimo glede na mean narascajoce -#z digits dolocamo st. decimalnih mest po stolpcih -#align povravnava in sirina stolpcev -#add.to.row: alternirajoce baravanje vrstic -#'longtable', za to, da se tabela nadaljuje -#floating = false, mora biti pri longtable drugace lahko vrne opozorilo -@ -\section{Povzetek} -Anketa o splošnem zadovoljstvu študentov na prvi in drugi stopnji študijskih programov \Sexpr{fakulteta} je potekala od začetka drugega semestra do konca septembra. Povzamemo lahko naslednje ključne ugotovitve:\\\\ -<>= -# download html -#html <- getURL("http://ul.1ka.si/c/4/Abstrakt/", followlocation = TRUE, .encoding = "utf-8") - -# parse html -#doc = htmlParse(html, asText=TRUE) -#plain.text <- xpathSApply(doc, "//p", xmlValue, encoding ="utf-8") -#text <- paste(plain.text[3:5], collapse = "\n") -#text <- gsub("• ", "\\\\item ", text) -#text <- gsub("%", "\\\\% ", text) -#Avtomatizitanje text-a -#Zamenjamo dogovorjene znacke -#Vsaki štirje \ v gsub za enega v latex-u *pri paste le dva -#text <- gsub("\\[seznam\\]", "\\\\begin{itemize} ", text) -#text <- gsub("\\[\\\\seznam\\]", "\\\\end{itemize} ", text) -#text <- gsub("\\[povprecje1\\]", round(d3.3[[5]][[1]], digits = 2), text) -#text <- gsub("\\[napis1\\]", d3.3[[1]][[1]] , text) -#text <- gsub("\\[povprecje2\\]", round(d3.3[[5]][[2]], digits = 2), text) -#text <- gsub("\\[napis2\\]", d3.3[[1]][[2]] , text) -#text <- gsub("\\[povprecje3\\]", round(d3.3[[5]][[3]], digits = 2), text) -#text <- gsub("\\[napis3\\]", d3.3[[1]][[3]] , text) -#text <- gsub("\\[OD\\]", min(veljavneEnote[[1]]$itime), text) -#text <- gsub("\\[DO\\]", max(veljavneEnote[[1]]$itime) , text) -#text <- gsub("\\[minPovp\\]", round(d3.3[[5]][[nrow(d3.3)]], digits = 2), text) -#text <- gsub("\\[napisZadnji\\]", d3.3[[1]][[nrow(d3.3)]] , text) -#text <- gsub("\\[splF\\]", round(d3.3["Q19a", 5], digits = 2), text) - -#Ocene nad 4 -#text <- gsub("Ocene nad 4:", paste0("Ocene nad 4: ", as.character(dfZ$napisiSklop[1])), text) -#text <- paste0(text, "\\\\ Študenti so dobro ocenili: ", "\\begin{itemize} ") -#for (i in 1:length(dfZ$tip[dfZ$tip == 2])){ -# text <- paste0(text, "\\item ", dfZ[,i][dfZ$tip == 2][i]) -#} -#text <- paste0(text," \\end{itemize} ") - -#Uredimo posamezne sklope glede na povprecje (padajoce) -# Nejasno: Zakaj sploh nova spremenljivka, ce ze imamo isti vrstni red v vprZ3? -odgMean1 <- round(odgMean, digits=1) -odgMean1<- c(sort(odgMean1[1:3], decreasing=TRUE), - sort(odgMean1[4:7], decreasing=TRUE), - sort(odgMean1[8:11], decreasing=TRUE), - sort(odgMean1[12:17], decreasing=TRUE), - sort(odgMean1[18:22], decreasing=TRUE), - sort(odgMean1[23:24], decreasing=TRUE), - sort(odgMean1[25:26], decreasing=TRUE), - odgMean1[27]) - -if (dodatniSklop == 1){ - odgMean1 <- c(odgMean1, sort(odgMean[28:(28+length(napisi_dodatniSklop_priloga)-1)], decreasing=TRUE)) -} - -# Pomembno, da pravilno obarva povprecja -# imena_odgMean1 <- names(odgMean1) -# odgMean1 <- as.numeric(formatC(odgMean1, digits=1, format ='f')) - -######## -##### -### POVZETEK -####### -########## - -# Splosna struktura: 1) funkcija z argumenti 'stVecjih', 'stManjsih', 'stSledijo', -# 'izhodisce' - -# 2) Sestavimo okvir z urejenimi sklopi GLEDE NA, tipa 1-5 -# Poklicemo funkcijo, ki izpise text za sklope v okviru tipa 1-5 -# tip 1: >4.5; tip2: vecje ali enako 4 in manjse od 4.5; tip 1: <3 - -# Pomoznim podatkom dejavnikov pripisemo povprecja, da jih lahko razvrscamo / klicemo -# po padajocem povprecju znotraj posameznega sklopa - -vprZ3 <- vprZ -vprZ3 <- cbind(vprZ, odgMean) -vprZ3 <- arrange(vprZ3, sklop, desc(odgMean)) -vprZ3$odgMean <- as.numeric(formatC(vprZ3$odgMean, digits = 1, format = 'f')) - - -# Preveri ali se res ne da enostavneje (primerjava celih stevil) -# Barvanje povprecij dejavnikov (pod 3 je rdeca, pod 4 oranzna, nad 4.5 zelena) -# Zaokrozimo na eno decimalko -# Zanimivo, da ima tezave, glede na prvi lapply, le pri stevilih med 3 in 4 - - -# Drugace problem pri paste0, npr. 4.0 spremeni v 4 -# paste0(formatC(x, digits=1, format='f')) -# Torej formatC, moramo uporabiti (tudi) pri paste0 - -odgMean1 <- lapply(odgMean1, function(x){ - - if(x > 4.5){ - paste0("\\textcolor[HTML]{36BF4B}{\\textbf{", - formatC(x, digits=1, format='f'), "}}") - } - else if (x > 4 & x <= 4.5){ - x <- formatC(x, digits=1, format='f') - } - else if (x > 3 & x <= 4){ - paste0("\\textcolor[HTML]{F58137}{\\textbf{", - formatC(x, digits=1, format='f'), "}}") - } - else if(x <= 3){ - paste0("\\textcolor[HTML]{B6321C}{\\textbf{", - formatC(x, digits=1, format='f'), "}}") - } - -}) - - -napisiIzhodisce <- list() - -#Za povprečja manjsa od 3 -napisiIzhodisce[[1]] <- c("Slabo je ocenjen dejavnik:", - "Slabo sta ocenjena dejavnika:", - "Slabo so ocenjeni dejavniki:", - "") - -# Za povprečja manjsa od 3.5 in vecja od 3 -napisiIzhodisce[[2]] <- c("Veliko prostora za izboljšave ima dejavnik:", - "Veliko prostora za izboljšave imata dejavnika:", - "Veliko prostora za izboljšave je pri dejavnikih:", - "") - -# Za povprečja manjsa od 4 in vecja od 3.5 -napisiIzhodisce[[3]] <- c("Dobro je ocenjen dejavnik:", - "Dobro sta ocenjena dejavnika:", - "Dobro so ocenjeni naslednji dejavniki:", - "") - -# Za povprečja manjsa od 4.5 in vecja od 4 -napisiIzhodisce[[4]] <- c("Zelo dobro je ocenjen dejavnik:", - "Zelo dobro sta ocenjena dejavnika:", - "Zelo dobro so ocenjeni naslednji dejavniki:", - "") - -#Napisi za povprečja večja od 4.5 -napisiIzhodisce[[5]] <- c("Odlično je ocenjen dejavnik:", - "Odlično sta ocenjena dejavnika:", - "Odlično so ocenjeni naslednji dejavniki:", - "") - - -# Funkcija, ki določi napis in ločilo za izpis 'stSledijo' -# 'stSledijo' so tisti, ki spadajo v ta (izhodiscni) sklop - -# Funkcija, ki določi napis in ločilo za izpis pri tistih sklopih, ki nimajo -# vecjih ali manjsih - -napisLocilo <- function(k){ - if((stSledijo==1 & k == 1) | k == stSledijo){ - locilo <- "." - y <- 1 - } - else if (stSledijo >= 2 & k == stSledijo-1) { - locilo <- " in" - y <- 2 - } - else if ((stSledijo>2 & k!= 1) & k!= stSledijo ){ - locilo <- "," - y <- 3 - } - else if (stSledijo > 2 & k == 1){ - locilo <- "," - y <- 3 - } - return(list(locilo, y)) -} - -# To Do: zamenjaj vrstni red, da bo pri klicanju enako kot tu -# (stVecjih, stSledijo, stManjsih) - -# Funkcija, ki izpise povzetek glede na -# x - stVecjih, x2 - stManjsih, x3 - stSledijo, x4 - izhodisce -# glede na izhodisce dolocimo napise glede na razdaljo povprecja -# od povprecja sklopa -# Izhodisca: > 4.5 = 5; vecje ali enako 4 in manjse od 4.5 = 4;... <3 = 1 - -povzetek_f <- function(x, x2, x3, x4){ - -# ki nam pomaga dolociti napise (npr. neprimerno boljse / slabse, izrazito...) -izhodisce <- x4 - - -# Ce obstaja kaksen dejavnik, ki je vecji od sklopa v katerega je umescen -if (x > 0){ - - #S krepko pisavo izpise ime sklopa - text <- paste0(text, "\\item \\textbf{", dfX[,1][[i]], ":} ") - - # Padajoce urejena povprecja dejavnikov za i-ti sklop v dfX - # V dfX so sklopi izbranega tipa - povp_zaIzpis <- povpSklopi_zaIzpis$odgMean_rounded[povpSklopi_zaIzpis$idSklopov_zaIzpis==dfX[i,2]] - - # Izlocimo samo vecja povprecja od sklopa, da jim lahko dolocimo razdaljo - # od izhodisca - vecji <- povp_zaIzpis[c(1:stVecjih)] - vecji_opis <- list() - razdalja <- list() - - # Vsakemu povprecju doloci razdaljo od izhodisca - # Mozne razdalje so od 3 - 0 - # 3 izraza neprimerno boljse; 0 pa nekoliko boljse - for (ix in 1:length(vecji)){ - - if (vecji[[ix]] > 4.5) { - vecji_opis[[ix]] <- 4 - }else if(vecji[[ix]] > 4 ) { - vecji_opis[[ix]] <- 3 - }else if (vecji[[ix]] > 3.5) { - vecji_opis[[ix]] <- 2 - }else if (vecji[[ix]] > 3) { - vecji_opis[[ix]] <- 1 - } - razdalja[[ix]] <- vecji_opis[[ix]] - izhodisce - - } - - # Dolocimo napise glede na razdaljo - - vecji.napis_tip0 <- c("Nekoliko bolje ") - vecji.napis_tip1 <- c("Precej bolje ") - vecji.napis_tip2 <- c("Izrazito bolje ") - vecji.napis_tip3 <- c("Neprimerno bolje ") - - - st_razdalja_stiri <- length(unlist(razdalja)[razdalja==3]) - - if(st_razdalja_stiri > 0){ - # Dolocimo locila in napis glede na stevilo dejavnikov razdalje 3 - # locilo pripisemo vsakemu dejavniku posebej - # napisiText upostevamo samo pri prvem dejavniku - for (j in (1: st_razdalja_stiri)){ - - if(st_razdalja_stiri==1 | j == st_razdalja_stiri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_stiri==2 | j == st_razdalja_stiri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 3 - # npr. vecji.napis_tip3 = "Neprimerno boljše " - # napisiText = "sta ocenjena dejavnika" - # vprZ3... = Dolgo ime vidika - # odgMean.. = povprecje vidika - - if (j==1){text <- paste0(text, vecji.napis_tip3, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - - if(st_razdalja_tri > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 2 - for (j in (1: st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 2 - if (j==1){ text <- paste0(text, vecji.napis_tip2, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - - if(st_razdalja_dve > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 1 - for (j in (1: st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 1 - if (j==1){ text <- paste0(text, vecji.napis_tip1, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_ena <- length(unlist(razdalja)[razdalja == 0]) - - if(st_razdalja_ena > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 0 - for (j in (1: st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 0 - # Sprememba - if (j==1){ text <- paste0(text, vecji.napis_tip0, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - -# 2. Sledijo: to so tisti dejavniki, katerih povprecje spada v povprecje sklopa -# Kljub temu imajo vsaj en dejavnik, ki ima povp vecjo od intervala mediane -# kamor je uvrscen sklop. -if (x3 > 0){ - for (k in ((stVecjih+1):(stVecjih+stSledijo))){ - # k- stvecjih - # pomembno, da pravilno doloci locilo - locilo <- napisLocilo(k-stVecjih)[[1]] - - # Dolocimo 'je / sta / so' za napisiIzhodisce - if (stSledijo == 1){ - y2 <- 1 - napisSledijo <- " Sledi " - }else if(stSledijo == 2){ - y2 <- 2 - napisSledijo <- " Sledita " - }else if(stSledijo > 2){ - y2 <- 3 - napisSledijo <- " Sledijo " - ### ???? - }else if(stSledijo+stVecjih == 0){ - y2 <- 4 - } - - if (k == stVecjih+1){text <- paste0(text, napisSledijo)} - #if (k == stVecjih+1){text <- paste0(text, napisSledijo, napisiIzhodisce[[x4]][y2])} - - text <- paste0(text, - " \\textit{'", - vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - } - } -} - -# Izpis povzetka za sklop, katerega dejavniki glede na povprecja v celoti pasejo vanj -else { -text <- paste0(text, "\\item \\textbf{", dfX[,1][i], ":} ") -for (k in (1:(x3))){ -izhodisce <- x4 - # x3 - stevilo dejavnikov, ki pasejo v ta sklop - # izberemo obliko je / sta / so - # glede na stevilo vidikov - - if(x3==1){ - st <- 1 - }else if(x3==2){ - st <- 2 - }else if(x3>2){ - st <- 3 - } - - #if(k==1){text <- paste0(text, napisiIzhodisce[[izhodisce]][st])} - if(k==1){text <- paste0(text)} - - locilo <- napisLocilo(k)[[1]] - x <- napisLocilo(k)[[2]] - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - -} -} - -############################################## -# 3. stManjsih -# Glej opis za 1.) stVecjih - -#Ce je v sklopu kaksen dejavnik s povprecjem manjsim od povp. skopa -if (x2>0){ - izhodisce <- x4 - - povp_zaIzpis <- povpSklopi_zaIzpis$odgMean_rounded[povpSklopi_zaIzpis$idSklopov_zaIzpis==dfX[i,2]] - - manjsi <- povp_zaIzpis[c((stVecjih+stSledijo+1):length(povp_zaIzpis))] - manjsi_opis <- list() - razdalja <- list() - - - for (ix in 1:length(manjsi)){ - - if (manjsi[[ix]] <= 4.5 & manjsi[[ix]]>4) { - manjsi_opis[[ix]] <- 5 - }else if(manjsi[[ix]] <= 4 & manjsi[[ix]]>3.5) { - manjsi_opis[[ix]] <- 4 - }else if (manjsi[[ix]] <= 3.5 & manjsi[[ix]]>3) { - manjsi_opis[[ix]] <- 3 - }else if (manjsi[[ix]] <= 3) { - manjsi_opis[[ix]] <- 2 - } - # Pri vecjih dodamo +11 - razdalja[[ix]] <- manjsi_opis[[ix]] - izhodisce - - } - manjsi.napis_tip0 <- c(" Nekoliko slabše ") - manjsi.napis_tip1 <- c(" Precej slabše ") - manjsi.napis_tip2 <- c(" Izrazito slabše ") - manjsi.napis_tip3 <- c(" Neprimerno slabše ") - - - st_razdalja_ena <- length(unlist(razdalja)[razdalja==0]) - - # Ce obstaja vsaj eno povprecje, ki je za eno razdaljo manjse od sklopa - if (st_razdalja_ena > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_ena){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip0, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - if(st_razdalja_dve > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_dve){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip1, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip2, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==3]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip3, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - -} - - return(text) -} - -text <- as.character() - -# Funkcija, ki doloci napise pri n -auto.NapisSklop_f <- function(x=0){ - # Pri tem napisu je struktura nekoliko drugacna - if (x==1){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pri naslednjem sklopu: " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "je pri naslednjih dveh sklopih: " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "je pri naslednjih sklopih: " - } - }else if(x==2){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave: " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta ocenjena naslednja sklopa, ki pa imata še precej prostora za izboljšave: " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so ocenjeni naslednji sklopi, ki pa imajo še precej prostora za izboljšave: " - } - } - else{ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je ocenjen naslednji sklop: " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta ocenjena naslednja sklopa: " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so ocenjeni naslednji sklopi: " - } - } - return(auto.napis_NS) -} - -# Sestavimo okvir za vsak tip (1-5) -# Za vse sklope s povprečjem >=4.5 & <5 -# Znotraj dolocimo argumente funkcije povzetek_f -# in jo poklicemo znotraj vsakega tipa -# tipe smo dolocili pri z zanko, ki gre cez sklop_Z (povprecja sklopov) -# *podroben opis samo pri prvem pri ostalih se ponovi - -dfX <- subset(dfZ, dfZ$tip == 1) -if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, "Odlično ", auto.napis_NS, - "(Mediana povprečij sklopa je v intervalu 4.5 - 5.) \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - # Dolocimo kratkoIme vprasanj v tem sklopu - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - # V tem sklopu ne more biti dejavnikov z vecjim povprecjem od njega - stVecjih <- 0 - - # Povprecje tega sklopa je vecje od 4.5 (tip = 1) - # prestejemo dejavnike, ki imajo sklop enak i-temu elementu dfX-a - # in so manjsi od 4.5 - - # Glede na to, da smo se odlocili, da opisne ocene niso ok, jih izklopimo - # kar pomeni, da povsod pustimo samo stSledijo. - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean <= 4.5]) - stManjsih <- 0 - - stSledijo <- stDejavnikov - stManjsih - - # zadnji argument je izhodisce od katerega v funkciji povzetek_f - # racunamo razdaljo in dolocamo napise za dejavnike, ki imajo povp. - # vecje ali manjse od svojega sklopa - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 5) - - } - text <- paste0(text," \\end{itemize}") -} - -# Izpis texta za ocene med 4 in 4.5 -dfX <- subset(dfZ, dfZ$tip == 2) -if (nrow(dfX) != 0){ - -auto.napis_NS <- auto.NapisSklop_f() -text <- paste0(text, "Zelo dobro ", auto.napis_NS, - "(Mediana povprečij sklopa je v intervalu 4.0 - 4.5) \\begin{itemize}") - -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 4.5]) - stVecjih <- 0 - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean <= 4]) - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 4) - -} - text <- paste0(text," \\end{itemize}") -} - - -#Ocene med 3.5 in 4 -dfX <- subset(dfZ, dfZ$tip == 3) - -if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f(2) - text <- paste0(text, "Dobro ", auto.napis_NS, "\\\\(Mediana povprečij sklopa je v intervalu 3.5 - 4.0) \\begin{itemize}") - # Zanka gre cez posamezne sklope -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] & vprZ3$odgMean > 4]) - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] & vprZ3$odgMean <= 3.5]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 3) -} - -text <- paste0(text," \\end{itemize}") -} - -#if (length(dfZ$tip[dfZ$tip == 3] > 2 )){ -# text <- paste0(text, dfZ$napisiSklop[1]) -#} -#Ocene nad 3 in manj kot 3.5 -dfX <- subset(dfZ, dfZ$tip == 4) -if (nrow(dfX) != 0){ - # 1, zato, ker so tu napisi nekoliko drugacni - auto.napis_NS <- auto.NapisSklop_f(1) - - text <- paste0(text, "Veliko prostora za izboljšave ", - auto.napis_NS, "\\\\(Mediana povprečij sklopa je v intervalu 3.0 - 3.5) \\begin{itemize}") - -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 3.5]) - - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean <= 3]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 2) - -} -text <- paste0(text," \\end{itemize}") -} - -#Ocene pod 3 -dfX <- subset(dfZ, dfZ$tip == 5) -if (nrow(dfX) != 0){ - -auto.napis_NS <- auto.NapisSklop_f() -text <- paste0(text, - "Slabo ", auto.napis_NS, - "(Mediana povprečij sklopa je manjša od 3.) \\begin{itemize}") - -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 3]) - stVecjih <- 0 - - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] ) -stVecjih - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 1) - -} -text <- paste0(text," \\end{itemize}") -} - - -text <- cat(gsub("\\[BR\\]", "\\\\\\\\", text)) -@ -%\vfill \hyperlink{thesentence}{*Način avtomatskega generiranja povzetka je opisan v prilogi 2.} -\newpage -\tableofcontents -\newpage -\section{Metodologija} -<>= -html <- getURL("http://ul.1ka.si/c/5/Uvod/", followlocation = TRUE, .encoding = "utf-8") -# parse html -doc = htmlParse(html, asText=TRUE) -plain.text <- xpathSApply(doc, "//p", xmlValue, encoding ="utf-8") -plain.text <- plain.text[3:8] - -text <- gsub("\\[seznam\\]", "\\\\begin{itemize} ", plain.text) -text <- gsub("\\[\\\\seznam\\]", "\\\\end{itemize} ", text) -text <- gsub("• ", "\\\\item ", text) -text <- gsub("%", "\\\\% ", text) -#plain.text <- gsub("[\r\n]", "", plain.text) -text <- gsub("\\[P\\]", stVrsta.vsi[length(stVrsta.vsi)], text) -text <- gsub("\\[Z\\]", stVrsta.r[length(stVrsta.r)], text) -text <- gsub("\\[I\\]", vsehT1, text) -text <- gsub("\\[br\\]", "\\\\\\\\", text) -cat(text, "") - -#Odgmean za text povezava z id-ji sklopov -#!!! awer <- odgMean[vprZ$sklop == 2] - -@ -\vfill -*Besedilo je zajeto s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/} -\newpage -\section{Sodelovanje} -<>= -# Izpis tabele: Struktura študentov glede na študijski program -#napisiT1 <- c("pristopili", "zavrnili") -#Dodamo multicolumns in črto nad njimi -addtorow <- list() -addtorow$pos <- list(-1, -1, 0) -# \\multicolumn{2}{r|}{\\textbf{zavrnili}} Za r, moramo ponoviti crto (|) iz align -# Drugace se pri multicolumn konca - -# Vse vrstice nad \endhead se ponovijo na vsaki strani -# Pomembno, da ponovi glavo tudi pri naslednjih straneh pri longtable -# /toprule /hline, namesto dvakrat /hline, ker drugace -# longtable izpise samo eno odebeljeno crto - -addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\textbf{stopnja} & \\textbf{pristopili} & \\multicolumn{2}{r}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & \\textbf{stopnja} & - \\textbf{pristopili} - & \\multicolumn{2}{r}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & & $n_0$ & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - - - -print(xtable(struktura_studijski_program, - align=c("l", "p{8.2cm}", "c", "c|", "c", "c", "c", "c|"), - caption = "Struktura študentov glede na študijski program"), - caption.placement="top", - include.rownames = FALSE, - add.to.row = addtorow, - floating = FALSE, - tabular.environment = "longtable", - sanitize.colnames.function = function(x){x}, - sanitize.text.function = function(x){x}, - hline.after = hlines) #aktiviramo dolocene crte -@ - -<>= -# Izpis tabele: Struktura študentov glede na stopnjo programa -addtorow <- list() -addtorow$pos <- list(-1, -1) -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\textbf{Stopnja} & \\multicolumn{2}{c|}{\\textbf{pristopili}} & \\multicolumn{2}{c}{\\textbf{odgovorili}}& \\multicolumn{2}{c|}{\\textbf{zavrnili}}', collapse=''), "\\\\")) - -print(xtable(struktura_stopnja, - digits=c(0,0,0,1,0,1,0,1), - align=c("l", "p{10.1cm}", "c", "c|", rep("c", 3), "c|"), - caption = "Struktura študentov glede na stopnjo programa"), - #sanitize.colnames.function = bold, - caption.placement="top", - add.to.row = addtorow, - include.rownames = FALSE, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - hline.after = c(-1, 0, nrow(struktura_stopnja)-1, nrow(struktura_stopnja))) -@ -\newpage - -<>= -# Izpis tabele: Struktura študentov po letniku -addtorow <- list() -addtorow$pos <- list(-1, -1) -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\textbf{Program} & \\multicolumn{2}{c|}{\\textbf{pristopili}} & \\multicolumn{2}{c}{\\textbf{odgovorili}}& \\multicolumn{2}{c|}{\\textbf{zavrnili}}', collapse=''), "\\\\")) - -# Iz df-ja izlocimo vrstice primerne za v tabelo 3 (po letniku), in prikazemo samo -# tiste letnike, ki imajo vsaj eno veljavno enoto. -napisiLetnik_t <- subset(napisiLetnik[-c(2,3)], napisiLetnik[-c(2,3)][,2] != 0) -colnames(napisiLetnik_t) <- c("", "$n_{0}$", "\\%", "n", "\\%", "r", "\\%") - -print(xtable(napisiLetnik_t, - digits=c(0,0,0,1,0,1,0,1), - align=c("l", "p{10.3cm}", "c", "c|", rep("c", 3), "c|"), - caption = "Struktura študentov po letniku"), - #sanitize.colnames.function = bold, - caption.placement="top", - add.to.row = addtorow, - include.rownames = FALSE, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - hline.after = c(-1, 0, nrow(napisiLetnik_t)-1, nrow(napisiLetnik_t))) -@ -\newpage - -\section{Analiza dejavnikov in vsebinskih sklopov} -V nadaljevanju so predstavljene podrobnejše analize po posameznih sklopih in njihovih dejavnikih. -<>= -# Izpis tabele: Povprečne vrednosti za vse dejavnike (neurejena), dejavniki nastopajo v istem # vrstnem redu, kot v anketi -rws3 <- seq(1, (nrow(d3)-1), by = 2) -col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -colnames(poSklopih) <- c("Dejavniki", "n", "povprečje", "sd") -print(xtable(poSklopih, - digits=c(0,0,0,1,1), - caption = "Povprečne vrednosti za vse dejavnike", - align = c("l", "p{12cm}", "c", "c", "c")), - - caption.placement="top", - sanitize.colnames.function = bold, - include.rownames = FALSE, - table.placement= ("!ht"), - #add.to.row=list(pos=list(-1), command=c("\\hline"))) - #booktabs = TRUE, - add.to.row = list(pos = list(-1, rws3), - command = c("\\hline","\\rowcolor[gray]{0.95}"))) -@ -\newpage -V naslednji tabeli so sklopi urejeni glede na mediano povprečij pripadajočih dejavnikov. -<>= -# Izpis tabele: Povprečne vrednosti za vse dejavnike (urejeno glede na mediano povprečij, -# znotraj tega pa po povprečjih dejavnikov) -# Prilagoditev spremenljivke, ki nosi mesta obarvanih vrstic, tako da obarva tudi pripadajoce sklope -#d4_R22 <- as.numeric(sapply(d4_R2, function(x){c(1+x, x)})) -addtorow_poSklopih <- list() -addtorow_poSklopih$pos <- list(-1, 0, 0, - mesta_addtorow[2], - mesta_addtorow[3], - mesta_addtorow[4], - mesta_addtorow[5], - mesta_addtorow[6], - mesta_addtorow[7], - mesta_addtorow[8] - #mesta_addtorow[9], - ) -# Za dodatni sklop -if(length(napisiSklop) == 9){ - addtorow_poSklopih$pos <- c(addtorow_poSklopih$pos, list(mesta_addtorow[9], d4_R2)) -}else if(length(napisiSklop == 8)){ - addtorow_poSklopih$pos <- c(addtorow_poSklopih$pos, list(d4_R2)) -} -addtorow_poSklopih$command <- c("\\hline", "\\hline", napisiSklopov_addtorow, - "\\rowcolor[gray]{0.95}") - -print(xtable(poSklopih_urejena, - digits=c(0,0,0,0,0,1,1), - caption = "Povprečne vrednosti za vse dejavnike", - align = c("l", "p{8.2cm}", "C{0.8cm}", "C{1cm}", - "C{1cm}", "C{2.2cm}", "C{1cm}")), - - caption.placement="top", - sanitize.colnames.function = bold, - #include.colnames = F, - include.rownames = FALSE, - table.placement= ("!ht"), - sanitize.text.function = function(x){x}, - #only.contents = T, - hline.after = c(-1, nrow(poSklopih_urejena)), - #booktabs = TRUE, - add.to.row = addtorow_poSklopih) -@ - -\newpage -%\section{dejavniki študijskega procesa 2014/2015 - frekvenčna porazdelitev} -Naslednja tabela predstavlja frekvenčno porazdelitev dejavnikov študijskega procesa \Sexpr{celaLetnica}. Respondenti so za vsak dejavnik izrazili strinjanje na petstopenjski lestvici. \\ - -<>= -########## -# Izpis tabele: 'Frekvenčna porazdelitev enot po kategorijah odgovorov na petstopenjski -# lestvici. -########## - -#odgNapisiP <- read.csv2("PomoznaT2.csv", stringsAsFactors = FALSE) - -#************************************************ - -#V 5 seznamov shrani posamezne odg glede na vprasanje -odgVeljavni2.L <- list() -for (i in 1:5){ - odgVeljavni2.L[i] <- list(as.vector(sapply(odgVeljavni, function(odgVeljavni) length(odgVeljavni[odgVeljavni==i])))) -} - -odgSt <- as.vector(odgSt) -odstVeljavni <- function(n){ - n <- as.vector((n / odgSt)*100) - return (n) -} - -#V 5 seznamov shrani odstotke glede na posamezno vprasanje -odgVeljavni2odst.L <- lapply(odgVeljavni2.L, function(x) odstVeljavni(x)) - -#Odstotke in stevilo repondentov glede na posamezno vprasanje zdruzimo z MAP -odgVeljavni2.Zd <- Map(cbind, odgVeljavni2.L, odgVeljavni2odst.L) - -# Skupni odstotki in stevila enot, ki jih zaradi pomanjkanja prostora ne prikazemo v tabeli -# s frekvencnimi porazdelitvami - -odgVeljavni3.n <- as.numeric() -odgVeljavni3.n.sk <- as.numeric() -odgVeljavni3.pct <- as.numeric() -odgVeljavni3.pct.sk <- as.numeric() - -for (i in (1:length(odgVeljavni))){ - for (j in 1:5){odgVeljavni3.n[j] <- odgVeljavni2.L[[j]][i]} - for (k in 1:5){odgVeljavni3.pct[k] <- odgVeljavni2odst.L[[k]][i]} - odgVeljavni3.n.sk[[i]] <- sum(odgVeljavni3.n) - odgVeljavni3.pct.sk[[i]] <- sum(odgVeljavni3.pct) -} -# Odstrani in dokumentiraj: -#Izpis tabele 4 -#vprZ$sklop in odgSklop_R zaradi razvrscanja glede na desc povp sklopa -#if (length(odgSklop) == 8){ - -# odg1_d4 <- rbind(odgVeljavni2.Zd[[1]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""#), c("", ""), c("", ""), c("", "")) -#odg2_d4 <- rbind(odgVeljavni2.Zd[[2]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg3_d4 <- rbind(odgVeljavni2.Zd[[3]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg4_d4 <- rbind(odgVeljavni2.Zd[[4]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg5_d4 <- rbind(odgVeljavni2.Zd[[5]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) - -#}else if (length(odgSklop) == 9){ -# odg1_d4 <- rbind(odgVeljavni2.Zd[[1]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg2_d4 <- rbind(odgVeljavni2.Zd[[2]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg3_d4 <- rbind(odgVeljavni2.Zd[[3]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg4_d4 <- rbind(odgVeljavni2.Zd[[4]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg5_d4 <- rbind(odgVeljavni2.Zd[[5]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#} - -# Dodatno okrajsana imena dejavnikov -#dolgoIme_d4 <- c(strtrim(vprZ$dolgoIme, 50), skl_Beseda) - -#frekvencna <- data.frame(dolgoIme_d4, -# st1=odg1_d4, -# st2=odg2_d4, -# st3=odg3_d4, -# st4=odg4_d4, -# st5=odg5_d4, - #odgVeljavni3.n.sk, - #odgVeljavni3.pct.sk, -# vprZ.Sklop2, -# odgSklop_R2, -# odgMean2, -# stringsAsFactors = F) - -dolgoIme_d4 <- strtrim(vprZ$dolgoIme, 50) -frekvencna <- data.frame(dolgoIme_d4, - st1=odgVeljavni2.Zd[[1]], - st2=odgVeljavni2.Zd[[2]], - st3=odgVeljavni2.Zd[[3]], - st4=odgVeljavni2.Zd[[4]], - st5=odgVeljavni2.Zd[[5]], - #odgVeljavni3.n.sk, - #odgVeljavni3.pct.sk, - vprZ$sklop, - odgSklop_R, - odgMean, - stringsAsFactors = F) - -frekvencna <- arrange(frekvencna, desc(odgSklop_R), vprZ$sklop, desc(odgMean)) -frekvencna <- frekvencna[,1:11] - -#frekvencna <- arrange(frekvencna, desc(odgSklop_R2), vprZ.Sklop2, desc(odgMean2)) -#frekvencna <- frekvencna[,1:11] -#frekvencna$st1.2 <- formatC(as.numeric(frekvencna$st1.2), digits=1, format='f') -#frekvencna$st2.2 <- formatC(as.numeric(frekvencna$st2.2), digits=1, format='f') -#frekvencna$st3.2 <- formatC(as.numeric(frekvencna$st3.2), digits=1, format='f') -#frekvencna$st4.2 <- formatC(as.numeric(frekvencna$st4.2), digits=1, format='f') -#frekvencna$st5.2 <- formatC(as.numeric(frekvencna$st5.2), digits=1, format='f') - -#frekvencna$st1.2[frekvencna$st1.2 == "NA"] <- "" -#frekvencna$st2.2[frekvencna$st2.2 == "NA"] <- "" -#frekvencna$st3.2[frekvencna$st3.2 == "NA"] <- "" -#frekvencna$st4.2[frekvencna$st4.2 == "NA"] <- "" -#frekvencna$st5.2[frekvencna$st5.2 == "NA"] <- "" - - -# Funkcija kateri kot argument podamo kratko ime dejavnika -# Izpise alternirajoce (vsako drugo vrstico) obarvane odprte odgovore -# Tu funkcijo le definramo, prvic jo poklicemo v prilogi 2 -odprtiOdg_f <- function(x){ - - #Filter neveljavnih odgovorov - pw1 <- veljavneEnote[[1]][x][veljavneEnote[[1]][x] != "-1: Ni odgovoril" & - veljavneEnote[[1]][x] != "-1" & - veljavneEnote[[1]][x] != "-3: Prekinjeno" & - veljavneEnote[[1]][x] != "-3" & - veljavneEnote[[1]][x] != "/" & - veljavneEnote[[1]][x] != "Ne" & - veljavneEnote[[1]][x] != "¸/" & - veljavneEnote[[1]][x] != "-" & - veljavneEnote[[1]][x] != "ne" & - veljavneEnote[[1]][x] != "#ERROR!"] - - # Preveri ali je za izbran dejavnik sploh kaksen odgovor, - # drugace izpise *Za izbrano vprasanje ni odg - - if (length(pw1) != 0){ - # Vkljucimo samo odprte odg., ki so daljsi od 4 znakov - pw1 <- pw1[nchar(pw1)> 4] - - #library(stringi) - #Pomembno za delovanje komentarjev z narekovaji - pw1 <- stri_unescape_unicode(pw1) - pw2 <- sapply(latexTranslate(pw1), function(x){x}) - # Za vsakim (razen za zadnjim) odgovorom doda novo vrstico - # Drugace novo crto v primeru polne strani narise na naslednji strani - # Pred vsakim odg. doda piko (\\tabitem): Izkljuceno - # pw2 <- paste0("\\tabitem ",pw2, "\\\\") - - #pw2 <- c(paste0(pw2[1:(length(pw2)-1)], "\\\\"), pw2[[length(pw2)]]) - pw2 <- data.frame(pw2) - - # Nastavimo alternirajoce barvanje vrstic (ce je dolzina vsaj 2) - addtorow <- list() - - if (nrow(pw2) > 1){ - addtorow$pos <- list(seq(1, (nrow(pw2)-1), by = 2)) - addtorow$command <- c("\\rowcolor[gray]{0.95}") - - }else if (nrow(pw2) == 1){ - # Ce je tocno en odprti odgovor za izbran dejavnik - addtorow$pos <- list(1) - addtorow$command <- c("") - } - # Izbrisemo ime stolpca - colnames(pw2) <- "" - - print(xtable(pw2, align=c("p", "p{\\textwidth}")), - include.rownames = FALSE, - add.to.row = addtorow, - tabular.environment = "longtable", - floating = FALSE, - sanitize.text.function = function (x){x}) -}else{cat("*Na to vprašanje študenti niso podali odgovorov.")} -} - - -colnames(frekvencna) <- c("\\textbf{Dejavniki}", rep(c("n", "\\%"), 5)) -#Manjkajo labele, oblika, brez decimalk za n... -#labT4 <- c("1 sploh se ne strinjam", "2 se bolj ne strinjam kot strinjam", "3 niti se ne strinjam niti se strinjam", -# "4 se bolj strinjam, kot ne strinjam", "5 popolnoma se strinjam") - labT4 <- c("\\makecell{Sploh\\\\se ne\\\\strinjam}", - "\\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam}", - "\\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam}", - "\\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam}", - "\\makecell{Popolnoma\\\\se\\\\strinjam}") -addtorow <- list() -addtorow$pos <- list(-1, -1, d4_R2) - -#Dodamo multicolumns in črto nad njimi -addtorow$command <- c("\\hline", paste0(paste0('& \\multicolumn{2}{c}{ \\textbf{', labT4, '}}', collapse=''), - -"\\\\ -\\hline -\\textbf{Dejavniki} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% - -\\endfirsthead - -\\caption{Dejavniki študijskega procesa ", celaLetnica, " - Frekvenčna porazdelitev enot po kategorijah odgovorov na petstopenjski lestvici. (nadaljevanje)} \\\\ \\hline - -& \\multicolumn{2}{c}{ \\textbf{\\makecell{Sploh\\\\se ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Popolnoma\\\\se\\\\strinjam}}} \\\\ \\hline - -\\textbf{Dejavniki} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% \\\\ \\hline -\\endhead"), - -"\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - -# Novo -addtorow2 <- list() -addtorow2$pos <- list(0, - mesta_addtorow[2], - mesta_addtorow[3], - mesta_addtorow[4], - mesta_addtorow[5], - mesta_addtorow[6], - mesta_addtorow[7], - mesta_addtorow[8]) - # mesta_addtorow[9], - # d4_R2) - -if(length(napisiSklop) == 9){ - addtorow2$pos <- c(addtorow2$pos, list(mesta_addtorow[9], d4_R2)) -}else if(length(napisiSklop == 8)){ - addtorow2$pos <- c(addtorow2$pos, list(d4_R2)) -} - -addtorow2$command <- c(napisiSklopov_addtorow_frekvencna, "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - -# Ce sklop z addtorow2 dodamo na zadnje mesto (27, 28), ga prestavimo na naslednjo stran -# drugace je sklop na eni strani, (njegov)i (dejavnik)i pa na drugi -# Nadalje pa bi cudno izgledalo, ce bi bil samo en dejavnik na naslednji strani, zato -# Podobno naredimo tudi ce je sklop, ki ima tri dejavnike dodan na zadnje mesto. -# Preveri: -if (27 %in% mesta_addtorow){ - addtorow2$pos <- c(27, 28, addtorow2$pos) - addtorow2$command <- c("\\\\", "\\\\", addtorow2$command) -}else if (28 %in% mesta_addtorow){ - addtorow2$pos <- c(28, addtorow2$pos) - addtorow2$command <- c("\\\\ \\\\", addtorow2$command) -} - -# Preden smo odstranili 'skupaj' -# Dodamo multicolumns in črto nad njimi -#addtorow$command <- c("\\multicolumn{11}{r}{Kategorije odgovorov na lestvici od ena do #pet} \\\\ \\hline \\textbf{Ocena}", paste0(paste0('& \\multicolumn{2}{c}{ \\textbf{', #labT4, '}}', collapse=''),"& \\multicolumn{2}{c}{\\textbf{Skupaj}}\\\\"), "\\rowcolor[gra#y]{0.95}[7.1pt][7.1pt]") -# \\textbf{Dejavniki} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% \\ -#hlines <- c(0, nrow(frekvencna)) - -cat(paste0('\\begin{longtable}{p{5.5cm}cccccccccc} -\\caption{Dejavniki študijskega procesa ', celaLetnica ,' - Frekvenčna porazdelitev enot po kategorijah odgovorov na petstopenjski lestvici.} \\\\ ')) -cat(c("\\hline", addtorow$command[2])) - -#print(xtable(frekvencna, -# align=c("l", "p{5.5cm}", rep("c", 10)), -# caption = paste0("Dejavniki študijskega procesa ", -# celaLetnica, " - Frekvenčna porazdelitev enot po #kategorijah odgovorov na lestvici od ena do pet."), -# digits=0), -# include.rownames=FALSE, -# include.colnames=F, -# caption.placement = "top", -# sanitize.colnames.function = function(x){x}, -# sanitize.text.function = function (x){x}, -# tabular.environment = 'longtable', -# add.to.row = addtorow, -# floating = FALSE) - -del2 <- print(xtable(frekvencna, - align=c("l", "p{5.5cm}", rep("c", 10)), - caption = paste0("Dejavniki študijskega procesa ", - celaLetnica, " - Frekvenčna porazdelitev enot po kategorijah odgovorov na petstopenjski lestvici."), - digits=0), - include.rownames=FALSE, - include.colnames=F, - only.contents = T, - #caption.placement = "top", - #sanitize.colnames.function = function(x){x}, - sanitize.text.function = function (x){x}, - #tabular.environment = 'longtable', - add.to.row = addtorow2, - hline.after = NULL, - ) - #floating = FALSE) -cat("\\hline \\end{longtable}") - #hline.after = hlines) -@ -\newpage -\section{Dejavniki študijskega procesa \Sexpr{celaLetnica} - analiza po sklopih} - -<>= -# Izpis tabel: Po sklopih (po študijski stopnji in po letnikih) -# Spremenljivki pripisujemo za vsak sklop najprej prazen_df_t, nato prazen_df_letnik -# V vrstaProg so shranjene stopnje prog. -# length(vrstaProg)-2, zato, da odstejemo prvega in zadnjega (skupaj) -# ki imata drugacno poravnavo -# digits: -# length(vrstaProg)+1, zato, ker poleg povprecij tudi sd zaokrozimo na eno dec. -# sanitize: pomembno, da odebeli glavo - -# z add to row dolocimo multicolumn - -addtorow <- list() -addtorow$pos <- list(-1, -1) -if(length(vrstaProg)==1){ - plus <- 3 - napis <- c("Povprečje") -}else{ - plus <- 2 - napis <- c("Povprečja") -} - -if(length(letniki.uq)==1){ - plus.l <- 3 - napis.l <- c("Povprečje") - -}else{ - plus.l <- 2 - napis.l <- c("Povprečja") -} -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\multicolumn{', - (length(vrstaProg) + plus), - '}{r}{\\textbf{', napis ,'}}', - collapse=''), "\\\\")) - -addtorowLetnik <- list() -addtorowLetnik$pos <- list(-1, -1) -addtorowLetnik$command <- c("\\hline \\hline", - paste0(paste0('\\multicolumn{', - (length(letniki.uq) + plus.l), - '}{r}{\\textbf{', napis.l ,'}}', - collapse=''), "\\\\")) - -# Dolocimo align glede na stevilo vrstProg in letnikov -poravnava <- as.numeric() -poravnava[1] <- paste0('p{', 14.6 - (1.65 * length(vrstaProg)),'cm}') -poravnava[2] <- paste0('p{', 14.3 - (1.8 * length(letniki.uq)), 'cm}') - -# Dolocimo podatke za tabelo -po_sklopih_po_kategorijah <- prazen_df_t[1:3,] -napis_subsection_po_kategorijah <- "po stopnji in po letniku" -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\subsection{Sklop: Obveščanje na fakulteti - ', -napis_subsection_po_kategorijah, '} -* Polna imena okrajšav študijskih stopenj so zapisana v legendi grafov. Ocene, ki so v tabelah obdane z oklepaji, so zgolj informativne.')) - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0,rep(1, (length(vrstaProg)))), - caption = "Obveščanje na fakulteti - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - table.placement = "ht", - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -# Dolocimo dejavnike in caption za izris grafov -dejavniki <- rbind(prazen_df$Q6a, prazen_df$Q6b, prazen_df$Q6c) - -graf_program_f(dejavniki, "Obveščanje na fakulteti - po stopnji", 1) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[1:3,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat("\\clearpage") - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Obveščanje na fakulteti - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - table.placement = "!ht", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q6a, prazen_df_letnik$Q6b, - prazen_df_letnik$Q6c)) -graf_letnik_f(dejavniki1, "Obveščanje na fakulteti - po letniku", 1) - -} -@ -\newpage -\subsubsection{Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi z obveščanjem (o študijskem procesu, obštudijski dejavnosti itd.)?} - -<>= -odprtiOdg_f("Q7") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[4:7,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\clearpage - \\subsection{Sklop: Prostori, oprema in urnik - ', napis_subsection_po_kategorijah, '}')) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Prostori, oprema in urnik - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - sanitize.colnames.function = bold, - include.rownames = FALSE) - - -dejavniki <- na.omit(rbind(prazen_df$Q8a, prazen_df$Q8b, prazen_df$Q8c, prazen_df$Q8d)) - -graf_program_f(dejavniki, "Prostori, oprema, urnik - po stopnji", 2) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[4:7,] -if (nrow(po_sklopih_po_kategorijah) != 0){ - -cat('\\newpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Prostori, oprema in urnik - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - sanitize.colnames.function = bold, - include.rownames = FALSE) -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q8a, prazen_df_letnik$Q8b, - prazen_df_letnik$Q8c, prazen_df_letnik$Q8d)) -graf_letnik_f(dejavniki1, "Prostori, oprema, urnik - po letniku", 2) -} - -@ -\newpage -\subsubsection{Odprti odgovori: Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi s prostori, opremo oz. urnikom?} -<>= - -odprtiOdg_f("Q9") - -@ - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[8:11,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\clearpage -\\subsection{Sklop: Knjižnica - ', napis_subsection_po_kategorijah, '}')) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0,rep(1, ((length(vrstaProg))))), - caption = "Knjižnica - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q10a, prazen_df$Q10b, - prazen_df$Q10c, prazen_df$Q10d)) - -graf_program_f(dejavniki, "Knjižnica - po stopnji", 3) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[8:11,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat ('\\clearpage') - - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Knjižnica - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q10a, prazen_df_letnik$Q10b, - prazen_df_letnik$Q10c, prazen_df_letnik$Q10d)) - -graf_letnik_f(dejavniki1, "Knjižnica - po letniku", 3) -} - - -@ - -\newpage -\subsubsection{Odprti odgovori: Vaši predlogi glede dela knjižnic.} -<>= -odprtiOdg_f("Q11") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[12:17,] - -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\clearpage -\\subsection{Sklop: Mednarodna mobilnost - ', napis_subsection_po_kategorijah, '}')) - -rws3 <- seq(1, (nrow(po_sklopih_po_kategorijah)-1), by = 2) -col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Mednarodna mobilnost - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q12a, prazen_df$Q12b, prazen_df$Q12c, prazen_df$Q12d, - prazen_df$Q12e, prazen_df$Q12f)) -graf_program_f(dejavniki, "Mednarodna mobilnost - po stopnji", 4) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[12:17,] - -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat('\\clearpage') - -rws3 <- seq(1, (nrow(po_sklopih_po_kategorijah)-1), by = 2) -col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Mednarodna mobilnost - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- rbind(prazen_df_letnik$Q12a, prazen_df_letnik$Q12b, - prazen_df_letnik$Q12c, prazen_df_letnik$Q12d, - prazen_df_letnik$Q12e, prazen_df_letnik$Q12f) - -graf_letnik_f(dejavniki1, "Mednarodna mobilnost - po letniku", 4) -} -@ -\newpage -\subsubsection{Odprti odgovori: Vaši predlogi glede mobilnosti.} - -<>= -odprtiOdg_f("Q13") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[18:22,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\clearpage -\\subsection{Sklop: Svetovalna pomoč študentom - ', napis_subsection_po_kategorijah, '}')) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Svetovalna pomoč študentom - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q14a, prazen_df$Q14b, prazen_df$Q14c, prazen_df$Q14d, prazen_df$Q14e)) -graf_program_f(dejavniki, "Svetovalna pomoč - po stopnji", 5) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[18:22,] -if (nrow(po_sklopih_po_kategorijah != 0)){ -cat('\\clearpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Svetovalna pomoč študentom - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q14a, prazen_df_letnik$Q14b, - prazen_df_letnik$Q14c, prazen_df_letnik$Q14d, - prazen_df_letnik$Q14e)) -graf_letnik_f(dejavniki1, "Svetovalna pomoč - po letniku", 5) - -} - - -@ -\newpage -\subsubsection{Odprti odgovori: Vaši predlogi glede delovanja referata in svetovanja študentom.} - -<>= -odprtiOdg_f("Q15") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[23:24,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\clearpage -\\subsection{Sklop: Drugi dejavniki študijskega procesa - ', napis_subsection_po_kategorijah, '}')) - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Drugi dejavniki študijskega procesa - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q16a, prazen_df$Q16b)) -graf_program_f(dejavniki, "Drugi dejavniki študijskega procesa - po stopnji", 6) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[23:24,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat('\\clearpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Drugi dejavniki študijskega procesa - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q16a, prazen_df_letnik$Q16b)) -graf_letnik_f(dejavniki1, "Drugi dejavniki študijskega procesa - po letniku", 6) -} - - -@ - -\newpage -\subsubsection{Odprti odgovori: Vaši predlogi glede drugih dejavnikov študija kot npr. izbirnih predmetov in povezovanja fakultete/akademije z drugimi inštitucijami.} - -<>= -odprtiOdg_f("Q17") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[25:26,] -#po_sklopih_po_kategorijah[is.na(po_sklopih_po_kategorijah)] <- 0 -if(nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\newpage -\\subsection{Sklop: Študentski svet in obštudijske dejavnosti - ', napis_subsection_po_kategorijah, '}')) - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Študentski svet in obštudijske dejavnosti - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q18a, prazen_df$Q18b)) -graf_program_f(dejavniki, "Študentski svet in obštudijske dejavnosti - po stopnji", 7) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[25:26,] -#po_sklopih_po_kategorijah[is.na(po_sklopih_po_kategorijah)] <- 0 -if(nrow(po_sklopih_po_kategorijah) != 0){ -cat('\\newpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Študentski svet in obštudijske dejavnosti - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q18a, prazen_df_letnik$Q18b)) -graf_letnik_f(dejavniki1, "Študentski svet in obštudijske dejavnosti - po letniku", 7) -} - -@ -\newpage -\subsubsection{Odprti odgovori: Vaši predlogi za izboljšanje delovanja in aktivnosti študentskega sveta ter izboljšanje obštudijskih dejavnosti.} - -<>= -odprtiOdg_f("Q19") -@ - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[27,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0('\\clearpage -\\subsection{Sklop: Zadovoljstvo s študijem - ', napis_subsection_po_kategorijah, '}')) - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Zadovoljstvo s študijem - po stopnji", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[27,] -if (nrow(po_sklopih_po_kategorijah) != 0){ - print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Zadovoljstvo s študijem - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) -cat('\\clearpage') -} -@ - -\subsubsection{Odprti odgovori: Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih s študijem, ki bi jih želeli še posebej izpostaviti.} - -<>= -odprtiOdg_f("Q21") -@ - -\newpage -\subsubsection{Odprti odgovori: Prosimo, naštejte nekaj pomanjkljivosti in predlogov izboljšav, povezanih s študijem; kaj bi želeli pri študiju spremeniti oz. izboljšati.} -<>= -odprtiOdg_f("Q22") -@ - -<>= -# Pomanjkljiva dokumentacija -### SAMO ZA FGG ###### - Q23 - DA / NE -######### SAMO ZA FGG -# Izracuni odgovorov tipa - 4 (Da / Ne) -# Vprasanja tipa 4 - Q23 -if (ID == 3000026){ -vprZ.tip4 <- subset(pomoznaT, pomoznaT$tip==4) -odg.tip4.ls <- list() -odg.tip4.pie_ls <- list() -for (i in 1:(nrow(vprZ.tip4))){ - kratkoIme.tip4 <- vprZ.tip4$kratkoIme[[i]] - dolgoIme.tip4 <- vprZ.tip4$dolgoIme[[i]] - odg.tip4 <- veljavneEnote[[1]][kratkoIme.tip4] - - # Zajamemo in prestejemo samo veljavne odgovore, torej da in ne - odg.Da.len <- length(odg.tip4[odg.tip4==1]) - odg.Ne.len <- length(odg.tip4[odg.tip4==2]) - odg.Sk.len <- odg.Da.len + odg.Ne.len - - # Izracun odstotkov. - odg.Da.pct <- (odg.Da.len / odg.Sk.len) * 100 - odg.Ne.pct <- (odg.Ne.len / odg.Sk.len) * 100 - odg.Sk.pct <- (odg.Da.pct + odg.Ne.pct) - - # Podatke shranjujemo v seznam - odg.tip4.ls[[i]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, odg.Da.len, - odg.Da.pct, odg.Ne.len, odg.Ne.pct, - odg.Sk.len, odg.Sk.pct) - odg.tip4.pie_ls[[i]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, - rbind(odg.Ne.len, odg.Da.len), - rbind(odg.Ne.pct, odg.Da.pct), c("NE", "DA")) -} - -odg.tip4.ls <- do.call(rbind, odg.tip4.ls) -odg.tip4.pie_ls <- do.call(rbind, odg.tip4.pie_ls) - -# Nejasno: -# -11 je umetno stevilo, ki ga pripisemo zaradi zaokrozevanja -odg.tip4.ls[odg.tip4.ls == "NaN"] <- -11 -odg.tip4.ls[odg.tip4.ls == "Inf"] <- -11 -odg.tip4.ls[is.na(odg.tip4.ls)] <- -11 - -odg.tip4.pie_ls[odg.tip4.pie_ls == "NaN"] <- -11 -odg.tip4.pie_ls[odg.tip4.pie_ls == "Inf"] <- -11 -odg.tip4.pie_ls[is.na(odg.tip4.pie_ls)] <- -11 - -# Odstranimo kratko ime in seznam spremenimo v df, ki je bolj primeren -# za izpis tabel z 'xtable' -odg.tip4.df <- data.frame(odg.tip4.ls, stringsAsFactors = F)[,-1] - -rownames(odg.tip4.pie_ls) <- NULL -odg.tip4.pie_df <- data.frame(odg.tip4.pie_ls, stringsAsFactors = F) - - -# 3, 5, 7 -# Pomembno, da pred tem elemente pretvorimo iz stringa v numeric -# Drugace zaokrozevanje ne dela -for (i in c(3,5,7)){ -odg.tip4.df[i] <- sapply(odg.tip4.df[[i]], function(x){formatC(as.numeric(x), digits=1, format = 'f')}) -} - - -odg.tip4.pie_df[[4]] <- sapply(odg.tip4.pie_df[[4]], function(x){formatC(as.numeric(x), digits=1, format = 'f')}) -# Odstotkom, ki jih bomo izpisali v piechartu dodamo znak % -odg.tip4.pie_df[[6]] <- paste0(odg.tip4.pie_df[[4]], "%") -# -11 nadomestimo z (.) -odg.tip4.df[odg.tip4.df == "-11.0"] <- "(.)" -colnames(odg.tip4.df) <- c("Dejavnik", "Da", "\\%", "Ne", "\\%", "Skupaj", "\\%") - - - -dat <- odg.tip4.pie_df[c(1,2),] -dat$V4 <- as.numeric(dat$V4) - -if (nrow(dat) != 0 ){ - cat("\\clearpage \\subsection{Ali ste tekom študija imeli izbranega tutorja?}") - ggPie(dat, "Naslov 1") -} - -#### -## Samo za FGG, Q25. - - vprZ.tip5 <- subset(pomoznaT, pomoznaT$tip==5) - odg.tip5_ls.temp <- list() - vsiNapisi.tip5 <- list(c("Nikoli", "Enkrat", "Dvakrat", "Večkrat vsak semester")) - -for (i in 1:nrow(vprZ.tip5)){ - kratkoIme.tip5 <- vprZ.tip5$kratkoIme[i] - dolgoIme.tip5 <- vprZ.tip5$dolgoIme[i] - odg.tip5 <- veljavneEnote[[1]][kratkoIme.tip5] - odg.tip5 <- as.numeric(odg.tip5[odg.tip5>0]) - odg.tip5.sk <- length(odg.tip5) - # Nejasno: opiši - # Za odgovore Q30: ZAKAJ? Pri ostalih izracunavamo po posameznem vprasanju - # Tu jih sestejemo - - mozniOdg.tip5 <- c(1:length(vsiNapisi.tip5[[i]])) - tip5_df <- data.frame(mozniOdg.tip5, vsiNapisi.tip5[[i]], stringsAsFactors = F) - - - odg.tip5.len <- list() - odg.tip5.pct <- list() - - for(j in 1:length(vsiNapisi.tip5[[i]])){ - odg.tip5.len[[j]] <- length(odg.tip5[odg.tip5 == j]) - odg.tip5.pct[[j]] <- formatC((odg.tip5.len[[j]]/odg.tip5.sk)*100, - digits=1, - format='f') - } - tip5_df$n <- as.numeric(odg.tip5.len) - tip5_df$pct <- as.numeric(odg.tip5.pct) - tip5_df[nrow(tip5_df)+1, ] <- c("", "Skupaj", sum(tip5_df$n), - formatC(sum(tip5_df$pct), digits = 1, format = "f")) - odg.tip5_ls.temp[[i]] <- tip5_df -} - -odg.tip5_ls <- do.call(rbind, odg.tip5_ls.temp) -odg.tip5_ls[odg.tip5_ls == "NaN"] <- "0.0" - -# Odstranimo prvi stolpec (mozniOdg.tip5) -odg.tip5_ls <- odg.tip5_ls[, -1] -names(odg.tip5_ls) <- c("Dejavniki", "n", "\\%") - -cat("\\subsection{S svojim tutorjem pedagogom sem komuniciral: }") -# Q25 -hlines <- c(-1, -1, 0, nrow(odg.tip5_ls[c(1:5),])-1, nrow(odg.tip5_ls[c(1:5),])) -print(xtable(odg.tip5_ls[c(1:5),], - align=c("p", "p{14cm}", "c", "c"), - digits=c(0,0,0,1), - caption=c("S svojim tutorjem pedagogom sem komuniciral: ")), - caption.placement = "top", - sanitize.colnames.function = function(x){x}, - include.rownames = F, - hline.after = hlines) -} - -if (dodatniSklop == 1){ -po_sklopih_po_kategorijah <- prazen_df_t[c(28:30), ] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0("\\clearpage - \\subsection{", dodatniSklop_napis, " - po stopnji in po letniku}")) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = paste0(dodatniSklop_napis, - " - po stopnji"), - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- rbind(prazen_df[[28]], prazen_df[[29]], prazen_df[[30]]) -graf_program_f(dejavniki, paste0(dodatniSklop_napis, " - po stopnji"), 9) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[c(28:30), ] -if (nrow(po_sklopih_po_kategorijah) != 0){ - cat('\\newpage') - print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = paste0(dodatniSklop_napis, - " - po letniku"), - align = c("l", poravnava[2], "|c","c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik[[28]], prazen_df_letnik[[29]], - prazen_df_letnik[[30]])) -graf_letnik_f(dejavniki1, paste0(dodatniSklop_napis, " - po letniku"), 9) -} -} -@ - -<>= -# Dolocimo dejavnike in caption za izris grafov - Trendi -if (risanjeTrendov == 1){ - if (nrow(dff != 0)){ - - cat(paste0('\\newpage - \\section{Trendi dejavnikov študijskega procesa 20', - min(izracuniTrendov$V2),'/', min(izracuniTrendov$V2)+1, ' - 20', max(izracuniTrendov$V2), '/', max(izracuniTrendov$V2)+1, '}')) - -# Izlocimo leta, ki nimajo povprecij -dff <- subset(dff, dff$povprecje != "NA") - -dejavnikiGraf <- subset(dff, dff$sklop==1) - -# Trendi graf -# x = podatki -# y = caption -# z = stevec (za imena datotek) -# izpis = 1 z *vspace - 6cm -# izpis = 2; brez tega -trendiGraf(dejavnikiGraf, "Zadovoljstvo z dejavniki obveščanja", 1, 2) - - -dejavnikiGraf <- subset(dff, dff$sklop == 2) -trendiGraf(dejavnikiGraf, "zadovoljstvo s prostori, opremo in urniki", 2, 2) - - -dejavnikiGraf <- subset(dff, dff$sklop == 3) -trendiGraf(dejavnikiGraf, "zadovoljstvo z dejavniki knjižnice", 3, 2) - -dejavnikiGraf <- subset(dff, dff$sklop == 4) -trendiGraf(dejavnikiGraf, "zadovoljstvo z dejavniki mednarodne mobilnosti", 4, 2) - - -dejavnikiGraf <- subset(dff, dff$sklop == 5) -trendiGraf(dejavnikiGraf, "zadovoljstvo z dejavniki svetovalne pomoči", 5, 2) - -dejavnikiGraf <- subset(dff, dff$sklop == 6) -trendiGraf(dejavnikiGraf, "zadovoljstvo z drugimi dejavniki študijskega procesa", 6, 2) - -dejavnikiGraf <- subset(dff, dff$sklop == 7) -trendiGraf(dejavnikiGraf, "zadovoljstvo s študentskim svetom in obštudijskimi dejavnostmi", 7, 2) - -# Izpis = 2, samo pri tistih, ki nad sabo nima tudi grafov glede na prog -dejavnikiGraf <- subset(dff, dff$sklop == 8) -trendiGraf(dejavnikiGraf, "splošno zadovoljstvo s študijem", 8, izpis = 2) - -# Preveri ali imamo podatke tudi za dodaten sklop -if (dodatniSklop == 1){ -dejavnikiGraf <- subset(dff, dff$sklop == 9) -trendiGraf(dejavnikiGraf, "splošno zadovoljstvo s programom", 9, 2) -}else{cat("\\newpage")} -} -} -@ - -\newpage -\section{Priloga 1 - Analize po programih} -V nadaljevanju so analizirana povprečja po programih. Manj zanesljive ocene so označene z enim ali dvema oklepajema. Podrobnosti so dostopne na: \url{http://ul.1ka.si/c/5/Uvod/} - -<>= -########## -##Tabele v prilogi. -##Stopnja, povp, n, glede na program in dolocena vprasanja - -#programiV2 -################### -# Enote razvrstimo glede na programe -odg.GP <- list() -for (i in (1:length(tip_programa_veljavni$idprog_uq))){ -odg.GP[i] <- list(filter(veljavneEnote[[1]][-length(veljavneEnote[[1]])], idprog == tip_programa_veljavni$idprog_uq[[i]])) -} -# s subset - -#veljavneEnote[[1]][veljavneEnote[[1]]$program == tip_programa$idprog_uq[[i]]] -#Veljavni odg. glede na program - -# Veljavni odgovori za enote razvrščene po programu -odgGPV <- vector(mode="list", length = length(odg.GP)) -for (i in (1:length(odg.GP))){ - for (j in (1:length(vprZ$kratkoIme))){ - jj <- vprZ$kratkoIme[j] - odgGPV[[i]][jj] <- subset(odg.GP[[i]][jj], odg.GP[[i]][jj] > 0) - } -} - -odgGPV <- lapply(odgGPV, function(x){lapply(x, function(y){as.numeric(y)})}) - - -# Podatke moramo najprej spremeniti v numeric, ta funkcija nam pri majhnem številu #odgovorov na posamezni program in vprasanje (2), izpise rezultate v napacni obliki -# in nadaljnji izracuni ne delujejo - -#odgGPV <- lapply(odgGPV, function(x){sapply(x, function(y){as.numeric(y)})}) - -sy.mean <- lapply(odgGPV, function(x) sapply(x, mean)) - -sy.length <- lapply(odgGPV, function(x) sapply(x, function(x) length(x))) -#sy.sd <- lapply(odgGPV, function(x) sapply(x, sd)) - -### Izračuni za skupaj #se nadaljuje v f_tabele priloga - -skupaj.mean <- lapply(odgVeljavni, mean) -skupaj.length <- lapply(odgVeljavni, length) - -#skupaj.sd <- lapply(odgVeljavni, sd) - - -#opisneNapisi <- c("povprečje", "n", "std. odklon") -f_tabelePriloga <- function(n){ - a2 <- formatC(sapply(sy.mean, function(x){return (x[n]) }), - digits = 1, format="f") - - b2 <- sapply(sy.length, function(x){return (x[n]) }) - if(length(n)>1){ - b3 <- sapply(b2[1,], function(x){if(x < 5) { - x <- paste0('((',x,'))')} - else if(x < 10){ - x <- paste0('(',x,')')} - else{return(x)}}) - } - - if (length(n)==1) { - b3 <- sapply(b2, function(x){if(x < 5) { - x <- paste0('((',x,'))')} - else if(x < 10){ - x <- paste0('(',x,')')} - else{return(x)}}) - } - #b3 <- data.frame(b3, ncol = (length(b3)) - #c2 <- sapply(sy.sd, function(x){return (x[n]) }) - - z <- list() - koncni <- list() - - #S to zanko boldamo povprecja zadnje vrstice - #in zaokrozimo s formatC, ker round namesto npr. 4.0 izpise 4 - #zaokrozevanje v xtable zaradi boldanja ne dela - - if(length(n) > 1){ - for (i in(1:length(n))){ - z[i] <- list(c(a2[i,], as.vector(gsub(" ", "", - formatC(skupaj.mean[[n[[i]]]], - digits=1, format="f"))))) - } - z <- c(list(c(b3, sum(b2[1,]))), z) - } - - if(length(n) == 1) { - for (i in(1:length(n))){ - z <- list(c(a2, as.vector(gsub(" ", "", formatC(skupaj.mean[[n[[i]]]], digits=1, - format="f"))))) - } - z <- c(list(c(b3, sum(b2))), z) - } - - zx <- z - zx <- sapply(z, unlist) - - # Vrsticam, ki imajo manj kot 3 enote ne izpisemo povprecij - - for(i in 1:nrow(zx)){ - if(zx[i,1]=="((2))" | zx[i,1]=="((1))" | zx[i,1]=="((0))"){ - zx[i,2:(2+length(n)-1)] <- "." - } - } - # Neveljavnim izracunom pripisemo vrednost (.) - zx[zx == "NaN" | zx == "NA" | zx== "Na" | zx =="Inf"] <- "(.)" - - return(zx) -} - -# Zaradi izgleda omejimo dolzino imena programa na 55 mest -programiV1 <- c(strtrim(tip_programa_veljavni$naziv, 55), "Skupaj") -# Kraticam dodamo vrednost "(.)", ki jo izpisemo vrstici "Skupaj" -# V novejsih razlicicah namesto "(.)", pripisemo "", torej prazno vrednost - -kratica_veljavni <- c(tip_programa_veljavni$kratica, "") -z <- f_tabelePriloga(c("Q6a", "Q6b", "Q6c")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4]) - -#Narise crto pred skupaj -rw1 <- c(-1, nrow(tabele_priloga)-1, 0) -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Pravočasnost\\\\informacij}}&\\rot{\\shortstack[l]{Spletna\\\\stran}} & \\rot{\\shortstack[l]{Brezžično\\\\omrežje}} \\\\ \\hline \\endfirsthead - \\caption{Obveščanje - po programih - nadaljevanje} \\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Pravočasnost\\\\informacij}}&\\rot{\\shortstack[l]{Spletna\\\\stran}} & \\rot{\\shortstack[l]{Brezžično\\\\omrežje}} \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - - -print(xtable(tabele_priloga, caption="Obveščanje - po programih", - align=c("pp{10.4cm}cc|ccc")), - caption.placement = "top", - #booktabs = TRUE, - table.placement= ("!ht"), - include.colnames = FALSE, - tabular.environment = "longtable", - floating = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage -<>= -z <- f_tabelePriloga(c("Q8a", "Q8b", "Q8c", "Q8d")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Prostori}} & \\rot{\\shortstack[l]{Oprema}} & \\rot{\\shortstack[l]{Prostor za \\\\ ind. učenje}} & \\rot{\\shortstack[l]{Razpored ur}} \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Prostori}} & \\rot{\\shortstack[l]{Oprema}} & \\rot{\\shortstack[l]{Prostor za \\\\ ind. učenje}} & \\rot{\\shortstack[l]{Razpored ur}} \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Prostori, oprema, urnik - po programih", - align=c("pp{9.7cm}cc|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -@ -\clearpage - -<>= - -z <- f_tabelePriloga(c("Q10a", "Q10b", "Q10c", "Q10d")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Obseg\\\\literature}} & \\rot{\\shortstack[l]{Dostopnost\\\\literature}} & \\rot{\\shortstack[l]{Svetovanje\\\\ pri iskanju}} & \\rot{\\shortstack[l]{Odnos\\\\osebja}} - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Obseg\\\\literature}} & \\rot{\\shortstack[l]{Dostopnost\\\\literature}} & \\rot{\\shortstack[l]{Svetovanje pri\\\\iskanju lit.}} & \\rot{\\shortstack[l]{Odnos\\\\osebja}} - \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Knjižnica - po programih", - align=c("pp{8.8cm}cc|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - - -<>= - -z <- f_tabelePriloga(c("Q12a", "Q12b", "Q12c", "Q12d", "Q12e", "Q12f")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5], z[,6], z[,7]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Informacije o\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Zanimive možnosti\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Fakulteta/akad.\\\\spodbuja izmen.}} & \\rot{\\shortstack[l]{Opravljanje obv.\\\\predm. v tujini}} & \\rot{\\shortstack[l]{Priznavanje ECTS}} & \\rot{\\shortstack[l]{Strok. podp.\\\\medn. mob.}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Informacije o\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Zanimive možnosti\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Fakulteta/akad.\\\\spodbuja izmen.}} & \\rot{\\shortstack[l]{Opravljanje obv.\\\\predm. v tujini}} & \\rot{\\shortstack[l]{Priznavanje ECTS}} & \\rot{\\shortstack[l]{Strok. podp.\\\\medn. mob.}} - - \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Mednarodna mobilnost - po programih", - align=c("pp{7cm}cc|cccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - -<>= - -z <- f_tabelePriloga(c("Q14a", "Q14b", "Q14c", "Q14d", "Q14e")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5], z[,6]) -colnames(tabele_priloga) <- c("program", "", vprZ$dolgoIme[[18]], vprZ$dolgoIme[[19]], vprZ$dolgoIme[[20]], vprZ$dolgoIme[[21]], vprZ$dolgoIme[[22]]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Tutorstvo}} & \\rot{\\shortstack[l]{Karierno\\\\svetovanje}} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost in\\\\učinkovitost ref.}} & \\rot{\\shortstack[l]{Ustrezen odnos\\\\osebja}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Tutorstvo}} & \\rot{\\shortstack[l]{Karierno\\\\svetovanje}} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost in\\\\učinkovitost ref.}} & \\rot{\\shortstack[l]{Ustrezen odnos\\\\osebja}} - - \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Svetovalna pomoč - po programih", - align=c("pp{8cm}cc|ccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - -<>= - - -z <- f_tabelePriloga(c("Q16a", "Q16b")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3]) -colnames(tabele_priloga) <- c("program", "", vprZ$dolgoIme[[23]], vprZ$dolgoIme[[24]]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Izbirni predmeti\\\\drugje na UL}} & \\rot{\\shortstack[l]{Spoznavanje\\\\zunanjih inšt.}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Izbirni predmeti\\\\drugje na UL}} & \\rot{\\shortstack[l]{Spoznavanje\\\\zunanjih inšt.}} - - \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Drugi dejavniki študijskega procesa - po programih", - align=c("pp{10.8cm}cc|cc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -@ -\clearpage -<>= - -z <- f_tabelePriloga(c("Q18a", "Q18b")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Dobra izbira\\\\športnih akt.}} & \\rot{\\shortstack[l]{Zadovoljstvo s\\\\štud. svetom}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Dobra izbira\\\\športnih akt.}} & \\rot{\\shortstack[l]{Zadovoljstvo s\\\\štud. svetom}} - \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, - caption="Študentski svet in obštudijske dejavnosti - po programih", - align=c("pp{10.8cm}cc|cc")), - - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - -<>= - -z <- f_tabelePriloga("Q20a") -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Zadovoljstvo\\\\s študijem}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - nadaljevanje}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Zadovoljstvo\\\\s študijem}} - - \\\\ \\hline - \\endhead \\hline - Tabela se nadaljuje na naslednji strani - \\endfoot - \\endlastfoot ") -print(xtable(tabele_priloga, caption="Zadovoljstvo s študijem - po programih", - align=c("pp{12cm}cc|c")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -@ -\clearpage -<>= -if (dodatniSklop == 1){ -z <- f_tabelePriloga(vprZ$kratkoIme[28:30]) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", paste0("\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[1], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[2], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[3], "}} - -\\\\ \\hline \\endfirsthead -\\caption{Struktura respondentov glede na študijski program - nadaljevanje}\\\\ -\\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[1], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[2], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[3], "}} - \\\\ \\hline \\endhead \\hline -Tabela se nadaljuje na naslednji strani -\\endfoot -\\endlastfoot ")) - -print(xtable(tabele_priloga, - caption="Zadovoljstvo s programom - po programih", - align=c("pp{8.8cm}cc|ccc")), - - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -} -@ -\clearpage -<>= - -#cat(paste(sort(pw1))) -#rws3<- seq(1, (length(pw1)), by = 2) -#col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - -#print(xtable(data.frame(sort(pw1)), align = c("L{0cm}", "L{14cm}"), -# caption = "Odprti odgovori - pomankljivost in predlogi izboljšav"), tabular.environment = #'longtable', -# floating = FALSE, include.rownames = FALSE, include.colnames = FALSE, caption.placement = "top") -@ - -%newpage -%subsection{Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih s %študijem, ki bi jih želeli še posebej izpostaviti.} - -\newpage -\hypertarget{thesentence}{\section{Priloga 2 - Metodologija povzetka}} -V povzetku so posamezni sklopi razvrščeni glede na padajočo mediano povprečjih njihovih dejavnikov: -\begin{itemize} - -\item Pod napisom "Odlično so ocenjeni naslednji sklopi", so uvrščeni tisti sklopi, ki imajo mediano povprečij dejavnikov \textbf{večjo od 4.5} - -\item Pod napisom "Posebej dobro so ocenjeni naslednji sklopi", so uvrščeni tisti sklopi, ki imajo mediano povprečij v intervalu \textbf{med 4 do vključno 4.5} - -\item Pod napisom "Dobro so ocenjeni naslednji sklopi, ki pa imajo precej prostora za izboljšave", so uvrščeni tisti sklopi, ki imajo mediano povprečij v intervalu \textbf{med 3.5 do vključno 4} - -\item Pod napisom "Veliko prostora za izboljšave imajo naslednji sklopi:", so uvrščeni tisti sklopi, ki imajo mediano povprečij v intervalu \textbf{med 3 do vključno 3.5} - -\item Pod napisom "Slabo so ocenjeni naslednji sklopi", so uvrščeni tisti sklopi, ki imajo mediano povprečij \textbf{manjšo od 3} - -\end{itemize} - -\end{document} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/temp/.gitignore b/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/temp/.gitignore deleted file mode 100644 index c96a04f00..000000000 --- a/admin/survey/modules/Evalvacija/Evalvacija_splosna_anketa/temp/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021.pem b/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021.pem deleted file mode 100644 index ccb0d2882..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021.pem +++ /dev/null @@ -1,149 +0,0 @@ -Bag Attributes - Microsoft Local Key set: - localKeyID: 01 00 00 00 - Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider - friendlyName: te-Univerzawebstre!017enikiskritikal-cfdf38cd-38ba-444d-a34c-269ac64d2fc1 -Key Attributes - X509v3 Key Usage: 10 ------BEGIN PRIVATE KEY----- -MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC3ixOVt/lzi/50 -K6UoRb66gAhtpnSEKYjwlrSSHUNjdi0pL87W7jIQD3Mleqo6ljCLwoR9y9L5+9PP -7/sjcEs1G/1r9A3r1PEb5IMcShUxvnTpaEfCeX23tTic2F5MtQn8Gy4zZ6ARiwk6 -7SbKbyOyAkB51RBcm5xGhKtfmuW2tvV03svXBzRq9yRekAtXkI1D+o4nQJE+4TYW -dN42j+grinloPJdipiYrIkanbmipwWyx8lRykklZnWV/ivcIeKbT6Ii2XOhYbAb6 -yFOsSnuQcL7aBWGvZOTu1oY8j4eilJcPWJjXi+Mw+elpu+qxCIBCSTYpyY4J4qxT -ma2qQ6RNAgMBAAECggEAdG9m6ji+p71sm3fAmy67kwZ70kuhaOIMfEuum26y/FrQ -xWsNtS2AVs3mRyVs7iOvAkpQ0JjH60wFD8l2sQGgxD1QY/Z8ClqY5g/t2LlqfpcL -BbLgqw91YGA3XNCp6dGDVwpLIdMgKWDhZx9g11Tv+RISovc2HPmehuHM8aaLCYAt -M5xTpdmf5Hdt2MI3ZTzeiA34padu3Rk/nLJFpAeLMZN1N3NFcnC+kQ0pVyqT33AX -wvPOk0/dC/LeGJmsPHtQ85Pku2TfekiKVQFk43sNLt3zhynKdJGyjhFnUTH94Ju1 -Bzp07PvwS1DrcQdAATe4niyIZpbLHSGlkLTfmsdChQKBgQDuGxmf+m0TUiHYi82J -Rcf8DLsujLG7YE8UjW5ifVBpvWfBHOyH0kSLj+OaI3ww+bHDZmn+EC9PR2d4ec/r -2u1RW4ZOUJPa2ivrxj7E4Lvz+4zvsfFTSIj9W2uiPabB/2UInF1Q0SQBQOwd3ODt -50xMjPsZSVMnRTVHKi6LEgSubwKBgQDFVkBAwNFKSMYcGFCncvqMqnVT5PcaqINW -EMzI9kfOIGk7MrKxaSTqRJKnfSR/895IX/8rLqeFO5u9mak0zU34o8VOqp3p6fVG -pkZqo4h3bLkvKhC1entu/OcZKAPgiTv46Ek3alf2rlCJy0nnM/RcHVxO/gk3uAsj -t5sZuuB3AwKBgDh5RQKkqupCOLTbs8wzONOXUW4hAKaomRkO0neZsVDjE5DCA3fT -b16KqjkM4Y/cKUVnLQyNWis7jFcOzTnrmw4I3zoD8o2d4XzycEDR7MJZj3vqgIp4 -UcWFwWmhpcOth5EbRSa99AQ4Gcibct36ViZx6bx9n7NYvuI6Jv/lLicRAoGBAJxi -4x6t7+6fx6iCOIDLZPXPLJYk0RNmUlcFj1T/oB4hn2OTpPtl6SRi3ZowWZmxSQow -UYcGPSof+CeEvAylW1Jdb0MNgYHbsE6h/RILsV17YzKWcpFvlJx7fiV4icIK3+U9 -KLDq7PUIZbkdyt6YVOIfPoU3W1S13NYcbqUwbSzDAoGBAJntq/m7bhvkClf29kDh -pEl8opjV+HUKsqKscczjNA3/NPxWzTLUaCjH1RZSMda4x4Bv4looiMwZe+ve50Yy -t5t48rrv1iWBrGWwz4SkqAiibfuS+V0BilJX3txUZOUYrgxF0cUzoOhL8PcbZ8O2 -JrqTlYriW623+DHQfDa4S2dv ------END PRIVATE KEY----- -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: Anketni sistem -subject=C = SI, ST = Slovenia, L = Ljubljana, OU = USI UL, CN = anketnisistem.uni-lj.si, emailAddress = helpdesk@uni-lj.si - -issuer=DC = si, DC = uni-lj, CN = Univerza v Ljubljani CA1 - ------BEGIN CERTIFICATE----- -MIIGOTCCBSGgAwIBAgITRgAAH083kx/WP4Z5LAADAAAfTzANBgkqhkiG9w0BAQsF -ADBPMRIwEAYKCZImiZPyLGQBGRYCc2kxFjAUBgoJkiaJk/IsZAEZFgZ1bmktbGox -ITAfBgNVBAMTGFVuaXZlcnphIHYgTGp1YmxqYW5pIENBMTAeFw0yMTEwMjcxMzUx -MzVaFw0yNDEwMjYxMzUxMzVaMIGKMQswCQYDVQQGEwJTSTERMA8GA1UECBMIU2xv -dmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEPMA0GA1UECxMGVVNJIFVMMSAwHgYD -VQQDExdhbmtldG5pc2lzdGVtLnVuaS1sai5zaTEhMB8GCSqGSIb3DQEJARYSaGVs -cGRlc2tAdW5pLWxqLnNpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA -t4sTlbf5c4v+dCulKEW+uoAIbaZ0hCmI8Ja0kh1DY3YtKS/O1u4yEA9zJXqqOpYw -i8KEfcvS+fvTz+/7I3BLNRv9a/QN69TxG+SDHEoVMb506WhHwnl9t7U4nNheTLUJ -/BsuM2egEYsJOu0mym8jsgJAedUQXJucRoSrX5rltrb1dN7L1wc0avckXpALV5CN -Q/qOJ0CRPuE2FnTeNo/oK4p5aDyXYqYmKyJGp25oqcFssfJUcpJJWZ1lf4r3CHim -0+iItlzoWGwG+shTrEp7kHC+2gVhr2Tk7taGPI+HopSXD1iY14vjMPnpabvqsQiA -Qkk2KcmOCeKsU5mtqkOkTQIDAQABo4IC0DCCAswwPQYJKwYBBAGCNxUHBDAwLgYm -KwYBBAGCNxUIwMJIh8CBcITBkxuDzc5HgsCcU4ETgZDnKoX47ToCAWQCAQwwDgYD -VR0PAQH/BAQDAgUgMB0GA1UdDgQWBBTeMKGyDYKB3X4tkd9MH/5Odw0jkTAfBgNV -HSMEGDAWgBTvvya5O5rw4dn3swQpt5iORUmKqDCCAR0GA1UdHwSCARQwggEQMIIB -DKCCAQigggEEhjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUyMHYlMjBM -anVibGphbmklMjBDQTEoMykuY3JshoHFbGRhcDovLy9DTj1Vbml2ZXJ6YSUyMHYl -MjBManVibGphbmklMjBDQTEoMyksQ049RENWMlVMLENOPUNEUCxDTj1QdWJsaWMl -MjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0aW9uLERD -PXVuaS1saixEQz1zaT9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0P2Jhc2U/b2Jq -ZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnQwggEYBggrBgEFBQcBAQSCAQow -ggEGMEYGCCsGAQUFBzAChjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUy -MHYlMjBManVibGphbmklMjBDQTEoMykuY3J0MIG7BggrBgEFBQcwAoaBrmxkYXA6 -Ly8vQ049VW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExLENOPUFJQSxDTj1Q -dWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0 -aW9uLERDPXVuaS1saixEQz1zaT9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xh -c3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAQEAPAdA -l4QLoJf3OqaqAUEUQdQ0Wgv0PYoWJp/pEWDf7WzZRtBdyT31F9oANIfNUMQO7j4+ -CCJfXmwBze+AYZtAOg/jtxi7ZeS7UwXMoFnA2FDUENnVBl16+Tu37Apl2Mn8XJE0 -q3FLZ6yPLAAs+nBnGXunBNyEvmf6y9xOccnwa3Alo0YdVw2hpHW94NETNqmMGGOZ -KZjhWYM9M9zl0uwK4oKdhFA3eo2W1So7B28/t5LlEg5kFPZEdgt6p7NWp1fCl0Ul -Ss9T8zonZGpGo4cm2m6KRNUCdHuzXpsfqTwDtjUJLli+qtsG6LadFu8Fuxz2tB+8 -12hIOuGDsrSPmvUOpg== ------END CERTIFICATE----- -Bag Attributes: -subject=CN = Univerza v Ljubljani root CA - -issuer=CN = Univerza v Ljubljani root CA - ------BEGIN CERTIFICATE----- -MIIDUTCCAjmgAwIBAgIQEoYALbJIqr1ErYgV3dRtUTANBgkqhkiG9w0BAQsFADAn -MSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTA3MDkx -NzExMTM0MFoXDTM3MDIyMjA4MTgyOVowJzElMCMGA1UEAxMcVW5pdmVyemEgdiBM -anVibGphbmkgcm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AMzkadWMUGjOQvgZY0lYcJpgSIqBS2OkNOz9dG4BCNd4wBlofCm/T1ITnzzCwcAi -U7XH74Vh4WGi06vz29ZkAJUPUS2SORQ6odDQZaM/bBXm781IkHvTdzEPS+g6T0h3 -TlUPJ799RiIatN4BmbVYIgPLZjDMSvCiIIITgVOa6SWny1TcugB29oYEHwYTjOvy -lFLgX+xUDPZQPMliCa06ESf0RvLsCyV12YPVV2xcE7PQKjYfAh1vq1lhQRK55xS9 -+DO1G0M5ORE8Vo/nJJYJ40yPDVLz14aQv/Ymf4ShQ6n+4eaS2zVrUMcQARhqUCe9 -np5yqxs5e4Sw12tGq6k4/fUCAwEAAaN5MHcwCwYDVR0PBAQDAgGGMBIGA1UdEwEB -/wQIMAYBAf8CAQIwHQYDVR0OBBYEFKW3NpfvTtWqo6IRkz6Qy0HOJTN5MBAGCSsG -AQQBgjcVAQQDAgEBMCMGCSsGAQQBgjcVAgQWBBRfQzahJmMh4ePIvbWg/we6LNhv -tjANBgkqhkiG9w0BAQsFAAOCAQEACJDMsNOV1uu/PsSUoyst0kUZK40tb5nWkVB5 -ViIDTymfNQnuL71L7W8WkoDLEmqOEQg8deElO6L6ArM/ChYWGskEPZmVHiMr4hhs -qJWIlb3gIxjBJpRojzBez/gc6GS0JlXl75VdcR7Vyy9FVIrggn2QTPaVXVZhtfYs -jowxRAA3qmzIdtcJwflq5P8V345DR2xL3IbiR1JucesDE0WF5fCHwL5qE4P69xar -UqmbrbbpmLn41CVyQ8kN+0vqqZzkBXsHUm7D59PMtN8vcbuUaQc2F94r5Vt4mvl5 -otS9eMOoIlk5lVR8/rkIUK1egWdV/vDTNIkXPtx+sDfCMI3m/A== ------END CERTIFICATE----- -Bag Attributes: -subject=DC = si, DC = uni-lj, CN = Univerza v Ljubljani CA1 - -issuer=CN = Univerza v Ljubljani root CA - ------BEGIN CERTIFICATE----- -MIIHMDCCBhigAwIBAgITaQAAABapNxW/pNipaQABAAAAFjANBgkqhkiG9w0BAQsF -ADAnMSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTE3 -MDIyMjExMjAwMloXDTI3MDIyMjExMzAwMlowTzESMBAGCgmSJomT8ixkARkWAnNp -MRYwFAYKCZImiZPyLGQBGRYGdW5pLWxqMSEwHwYDVQQDExhVbml2ZXJ6YSB2IExq -dWJsamFuaSBDQTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbaPNm -ESIDHezcWlwggjhmplQ6fFGqIyycPTKG7z1+p1cab4recx+nucyakKQu7Ky2dkf/ -/musjNpv3548EAfNyL7o6GsxV8iCDk+CtKA8Dol7bs0jgIxGP258pMixYfj92M3D -i6pkYkArEIM16DGRPPXmujpDQnFxXfj3OYrHs/CeHwkrWADKK+D8hBJhfd4r8Hdj -5xofyAM30hcvdcBcFz9EVX2mi0RYYXRnnsJ34e+T8h8vymN3ViEmFqQAZYXXrmIp -H/KonhQpAH88z4K7qX7Ff0BLzlw5B7WZgQdwpyF+qMJfiqAEsIuyE+peB+iUY2F7 -OPP1HiIepJQkO/7ZAgMBAAGjggQrMIIEJzASBgkrBgEEAYI3FQEEBQIDAwADMCMG -CSsGAQQBgjcVAgQWBBRtWAAl/z/lTl9BYlSPJ0KLGR0g+TAdBgNVHQ4EFgQU778m -uTua8OHZ97MEKbeYjkVJiqgwggLABgNVHSABAf8EggK0MIICsDCBkgYLKwYBBAGC -j0aDfQEwgYIwWAYIKwYBBQUHAgIwTB5KAFUATAAgAC0AIABDAGUAcgB0AGkAZgBp -AGMAYQB0AGkAbwBuACAAUAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBu -AHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIGuBgsr -BgEEAYKPRoN9CjCBnjB0BggrBgEFBQcCAjBoHmYAVQBMACAALQAgAEwAbwB3ACAA -QQBzAHMAdQByAGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAA -UAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEW -Gmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIG0BgsrBgEEAYKPRoN9FDCBpDB6 -BggrBgEFBQcCAjBuHmwAVQBMACAALQAgAE0AZQBkAGkAdQBtACAAQQBzAHMAdQBy -AGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAAUAByAGEAYwB0 -AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8v -cGtpLnVuaS1sai5zaS9DUFMvMIGwBgsrBgEEAYKPRoN9HjCBoDB2BggrBgEFBQcC -AjBqHmgAVQBMACAALQAgAEgAaQBnAGgAIABBAHMAcwB1AHIAYQBuAGMAZQAgAEMA -ZQByAHQAaQBmAGkAYwBhAHQAaQBvAG4AIABQAHIAYQBjAHQAaQBjAGUAIABTAHQA -YQB0AGUAbQBlAG4AdDAmBggrBgEFBQcCARYaaHR0cHM6Ly9wa2kudW5pLWxqLnNp -L0NQUy8wGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMBIG -A1UdEwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUpbc2l+9O1aqjohGTPpDLQc4l -M3kwTgYDVR0fBEcwRTBDoEGgP4Y9aHR0cDovL3BraS51bmktbGouc2kvVW5pdmVy -emElMjB2JTIwTGp1YmxqYW5pJTIwcm9vdCUyMENBLmNybDBcBggrBgEFBQcBAQRQ -ME4wTAYIKwYBBQUHMAKGQGh0dHA6Ly9wa2kudW5pLWxqLnNpL1VuaXZlcnphJTIw -diUyMExqdWJsamFuaSUyMHJvb3QlMjBDQSgxKS5jcnQwDQYJKoZIhvcNAQELBQAD -ggEBALKDbKSZ67R0iWMHoLnupjE4acMWyBorvL598Yd3R8Uek/7KZSe6kot5a38Z -gnAlp4BwEvbWtSDKg/Z1ZWP8LCxWNl6+ahSf2PHr0qLzMAdESh4L6o1biyl1WFFB -NZVQYi6lRXvMQr9SU9CFzJa2S7z9LxRT3nvYTe1YIe3mzHC+ihDojhMSGAnUMP9Q -81Um4rHmG/1uHZ2tIEjf2QrLAOVsHli5O5AQT22pIItEeeMgqePm+rQfL3weLDaM -RyGqlIzbMMllxtrRskXTk5FL1aOKIz6uMu3mvQq5wiJf55zSNt9HZa7/yiBYWg3T -aip1SuTYt6m2lXhkrYyh4pM+vA4= ------END CERTIFICATE----- diff --git a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021.pfx b/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021.pfx deleted file mode 100644 index 745ecef4c..000000000 Binary files a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021.pfx and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021xxx.pem b/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021xxx.pem deleted file mode 100644 index cf99ebe6b..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem-27102021xxx.pem +++ /dev/null @@ -1,43 +0,0 @@ -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: Anketni sistem -subject=C = SI, ST = Slovenia, L = Ljubljana, OU = USI UL, CN = anketnisistem.uni-lj.si, emailAddress = helpdesk@uni-lj.si - -issuer=DC = si, DC = uni-lj, CN = Univerza v Ljubljani CA1 - ------BEGIN CERTIFICATE----- -MIIGOTCCBSGgAwIBAgITRgAAH083kx/WP4Z5LAADAAAfTzANBgkqhkiG9w0BAQsF -ADBPMRIwEAYKCZImiZPyLGQBGRYCc2kxFjAUBgoJkiaJk/IsZAEZFgZ1bmktbGox -ITAfBgNVBAMTGFVuaXZlcnphIHYgTGp1YmxqYW5pIENBMTAeFw0yMTEwMjcxMzUx -MzVaFw0yNDEwMjYxMzUxMzVaMIGKMQswCQYDVQQGEwJTSTERMA8GA1UECBMIU2xv -dmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEPMA0GA1UECxMGVVNJIFVMMSAwHgYD -VQQDExdhbmtldG5pc2lzdGVtLnVuaS1sai5zaTEhMB8GCSqGSIb3DQEJARYSaGVs -cGRlc2tAdW5pLWxqLnNpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA -t4sTlbf5c4v+dCulKEW+uoAIbaZ0hCmI8Ja0kh1DY3YtKS/O1u4yEA9zJXqqOpYw -i8KEfcvS+fvTz+/7I3BLNRv9a/QN69TxG+SDHEoVMb506WhHwnl9t7U4nNheTLUJ -/BsuM2egEYsJOu0mym8jsgJAedUQXJucRoSrX5rltrb1dN7L1wc0avckXpALV5CN -Q/qOJ0CRPuE2FnTeNo/oK4p5aDyXYqYmKyJGp25oqcFssfJUcpJJWZ1lf4r3CHim -0+iItlzoWGwG+shTrEp7kHC+2gVhr2Tk7taGPI+HopSXD1iY14vjMPnpabvqsQiA -Qkk2KcmOCeKsU5mtqkOkTQIDAQABo4IC0DCCAswwPQYJKwYBBAGCNxUHBDAwLgYm -KwYBBAGCNxUIwMJIh8CBcITBkxuDzc5HgsCcU4ETgZDnKoX47ToCAWQCAQwwDgYD -VR0PAQH/BAQDAgUgMB0GA1UdDgQWBBTeMKGyDYKB3X4tkd9MH/5Odw0jkTAfBgNV -HSMEGDAWgBTvvya5O5rw4dn3swQpt5iORUmKqDCCAR0GA1UdHwSCARQwggEQMIIB -DKCCAQigggEEhjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUyMHYlMjBM -anVibGphbmklMjBDQTEoMykuY3JshoHFbGRhcDovLy9DTj1Vbml2ZXJ6YSUyMHYl -MjBManVibGphbmklMjBDQTEoMyksQ049RENWMlVMLENOPUNEUCxDTj1QdWJsaWMl -MjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0aW9uLERD -PXVuaS1saixEQz1zaT9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0P2Jhc2U/b2Jq -ZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnQwggEYBggrBgEFBQcBAQSCAQow -ggEGMEYGCCsGAQUFBzAChjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUy -MHYlMjBManVibGphbmklMjBDQTEoMykuY3J0MIG7BggrBgEFBQcwAoaBrmxkYXA6 -Ly8vQ049VW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExLENOPUFJQSxDTj1Q -dWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0 -aW9uLERDPXVuaS1saixEQz1zaT9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xh -c3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAQEAPAdA -l4QLoJf3OqaqAUEUQdQ0Wgv0PYoWJp/pEWDf7WzZRtBdyT31F9oANIfNUMQO7j4+ -CCJfXmwBze+AYZtAOg/jtxi7ZeS7UwXMoFnA2FDUENnVBl16+Tu37Apl2Mn8XJE0 -q3FLZ6yPLAAs+nBnGXunBNyEvmf6y9xOccnwa3Alo0YdVw2hpHW94NETNqmMGGOZ -KZjhWYM9M9zl0uwK4oKdhFA3eo2W1So7B28/t5LlEg5kFPZEdgt6p7NWp1fCl0Ul -Ss9T8zonZGpGo4cm2m6KRNUCdHuzXpsfqTwDtjUJLli+qtsG6LadFu8Fuxz2tB+8 -12hIOuGDsrSPmvUOpg== ------END CERTIFICATE----- diff --git a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem.pem b/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem.pem deleted file mode 100644 index ccb0d2882..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem.pem +++ /dev/null @@ -1,149 +0,0 @@ -Bag Attributes - Microsoft Local Key set: - localKeyID: 01 00 00 00 - Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider - friendlyName: te-Univerzawebstre!017enikiskritikal-cfdf38cd-38ba-444d-a34c-269ac64d2fc1 -Key Attributes - X509v3 Key Usage: 10 ------BEGIN PRIVATE KEY----- -MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC3ixOVt/lzi/50 -K6UoRb66gAhtpnSEKYjwlrSSHUNjdi0pL87W7jIQD3Mleqo6ljCLwoR9y9L5+9PP -7/sjcEs1G/1r9A3r1PEb5IMcShUxvnTpaEfCeX23tTic2F5MtQn8Gy4zZ6ARiwk6 -7SbKbyOyAkB51RBcm5xGhKtfmuW2tvV03svXBzRq9yRekAtXkI1D+o4nQJE+4TYW -dN42j+grinloPJdipiYrIkanbmipwWyx8lRykklZnWV/ivcIeKbT6Ii2XOhYbAb6 -yFOsSnuQcL7aBWGvZOTu1oY8j4eilJcPWJjXi+Mw+elpu+qxCIBCSTYpyY4J4qxT -ma2qQ6RNAgMBAAECggEAdG9m6ji+p71sm3fAmy67kwZ70kuhaOIMfEuum26y/FrQ -xWsNtS2AVs3mRyVs7iOvAkpQ0JjH60wFD8l2sQGgxD1QY/Z8ClqY5g/t2LlqfpcL -BbLgqw91YGA3XNCp6dGDVwpLIdMgKWDhZx9g11Tv+RISovc2HPmehuHM8aaLCYAt -M5xTpdmf5Hdt2MI3ZTzeiA34padu3Rk/nLJFpAeLMZN1N3NFcnC+kQ0pVyqT33AX -wvPOk0/dC/LeGJmsPHtQ85Pku2TfekiKVQFk43sNLt3zhynKdJGyjhFnUTH94Ju1 -Bzp07PvwS1DrcQdAATe4niyIZpbLHSGlkLTfmsdChQKBgQDuGxmf+m0TUiHYi82J -Rcf8DLsujLG7YE8UjW5ifVBpvWfBHOyH0kSLj+OaI3ww+bHDZmn+EC9PR2d4ec/r -2u1RW4ZOUJPa2ivrxj7E4Lvz+4zvsfFTSIj9W2uiPabB/2UInF1Q0SQBQOwd3ODt -50xMjPsZSVMnRTVHKi6LEgSubwKBgQDFVkBAwNFKSMYcGFCncvqMqnVT5PcaqINW -EMzI9kfOIGk7MrKxaSTqRJKnfSR/895IX/8rLqeFO5u9mak0zU34o8VOqp3p6fVG -pkZqo4h3bLkvKhC1entu/OcZKAPgiTv46Ek3alf2rlCJy0nnM/RcHVxO/gk3uAsj -t5sZuuB3AwKBgDh5RQKkqupCOLTbs8wzONOXUW4hAKaomRkO0neZsVDjE5DCA3fT -b16KqjkM4Y/cKUVnLQyNWis7jFcOzTnrmw4I3zoD8o2d4XzycEDR7MJZj3vqgIp4 -UcWFwWmhpcOth5EbRSa99AQ4Gcibct36ViZx6bx9n7NYvuI6Jv/lLicRAoGBAJxi -4x6t7+6fx6iCOIDLZPXPLJYk0RNmUlcFj1T/oB4hn2OTpPtl6SRi3ZowWZmxSQow -UYcGPSof+CeEvAylW1Jdb0MNgYHbsE6h/RILsV17YzKWcpFvlJx7fiV4icIK3+U9 -KLDq7PUIZbkdyt6YVOIfPoU3W1S13NYcbqUwbSzDAoGBAJntq/m7bhvkClf29kDh -pEl8opjV+HUKsqKscczjNA3/NPxWzTLUaCjH1RZSMda4x4Bv4looiMwZe+ve50Yy -t5t48rrv1iWBrGWwz4SkqAiibfuS+V0BilJX3txUZOUYrgxF0cUzoOhL8PcbZ8O2 -JrqTlYriW623+DHQfDa4S2dv ------END PRIVATE KEY----- -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: Anketni sistem -subject=C = SI, ST = Slovenia, L = Ljubljana, OU = USI UL, CN = anketnisistem.uni-lj.si, emailAddress = helpdesk@uni-lj.si - -issuer=DC = si, DC = uni-lj, CN = Univerza v Ljubljani CA1 - ------BEGIN CERTIFICATE----- -MIIGOTCCBSGgAwIBAgITRgAAH083kx/WP4Z5LAADAAAfTzANBgkqhkiG9w0BAQsF -ADBPMRIwEAYKCZImiZPyLGQBGRYCc2kxFjAUBgoJkiaJk/IsZAEZFgZ1bmktbGox -ITAfBgNVBAMTGFVuaXZlcnphIHYgTGp1YmxqYW5pIENBMTAeFw0yMTEwMjcxMzUx -MzVaFw0yNDEwMjYxMzUxMzVaMIGKMQswCQYDVQQGEwJTSTERMA8GA1UECBMIU2xv -dmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEPMA0GA1UECxMGVVNJIFVMMSAwHgYD -VQQDExdhbmtldG5pc2lzdGVtLnVuaS1sai5zaTEhMB8GCSqGSIb3DQEJARYSaGVs -cGRlc2tAdW5pLWxqLnNpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA -t4sTlbf5c4v+dCulKEW+uoAIbaZ0hCmI8Ja0kh1DY3YtKS/O1u4yEA9zJXqqOpYw -i8KEfcvS+fvTz+/7I3BLNRv9a/QN69TxG+SDHEoVMb506WhHwnl9t7U4nNheTLUJ -/BsuM2egEYsJOu0mym8jsgJAedUQXJucRoSrX5rltrb1dN7L1wc0avckXpALV5CN -Q/qOJ0CRPuE2FnTeNo/oK4p5aDyXYqYmKyJGp25oqcFssfJUcpJJWZ1lf4r3CHim -0+iItlzoWGwG+shTrEp7kHC+2gVhr2Tk7taGPI+HopSXD1iY14vjMPnpabvqsQiA -Qkk2KcmOCeKsU5mtqkOkTQIDAQABo4IC0DCCAswwPQYJKwYBBAGCNxUHBDAwLgYm -KwYBBAGCNxUIwMJIh8CBcITBkxuDzc5HgsCcU4ETgZDnKoX47ToCAWQCAQwwDgYD -VR0PAQH/BAQDAgUgMB0GA1UdDgQWBBTeMKGyDYKB3X4tkd9MH/5Odw0jkTAfBgNV -HSMEGDAWgBTvvya5O5rw4dn3swQpt5iORUmKqDCCAR0GA1UdHwSCARQwggEQMIIB -DKCCAQigggEEhjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUyMHYlMjBM -anVibGphbmklMjBDQTEoMykuY3JshoHFbGRhcDovLy9DTj1Vbml2ZXJ6YSUyMHYl -MjBManVibGphbmklMjBDQTEoMyksQ049RENWMlVMLENOPUNEUCxDTj1QdWJsaWMl -MjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0aW9uLERD -PXVuaS1saixEQz1zaT9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0P2Jhc2U/b2Jq -ZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnQwggEYBggrBgEFBQcBAQSCAQow -ggEGMEYGCCsGAQUFBzAChjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUy -MHYlMjBManVibGphbmklMjBDQTEoMykuY3J0MIG7BggrBgEFBQcwAoaBrmxkYXA6 -Ly8vQ049VW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExLENOPUFJQSxDTj1Q -dWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0 -aW9uLERDPXVuaS1saixEQz1zaT9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xh -c3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAQEAPAdA -l4QLoJf3OqaqAUEUQdQ0Wgv0PYoWJp/pEWDf7WzZRtBdyT31F9oANIfNUMQO7j4+ -CCJfXmwBze+AYZtAOg/jtxi7ZeS7UwXMoFnA2FDUENnVBl16+Tu37Apl2Mn8XJE0 -q3FLZ6yPLAAs+nBnGXunBNyEvmf6y9xOccnwa3Alo0YdVw2hpHW94NETNqmMGGOZ -KZjhWYM9M9zl0uwK4oKdhFA3eo2W1So7B28/t5LlEg5kFPZEdgt6p7NWp1fCl0Ul -Ss9T8zonZGpGo4cm2m6KRNUCdHuzXpsfqTwDtjUJLli+qtsG6LadFu8Fuxz2tB+8 -12hIOuGDsrSPmvUOpg== ------END CERTIFICATE----- -Bag Attributes: -subject=CN = Univerza v Ljubljani root CA - -issuer=CN = Univerza v Ljubljani root CA - ------BEGIN CERTIFICATE----- -MIIDUTCCAjmgAwIBAgIQEoYALbJIqr1ErYgV3dRtUTANBgkqhkiG9w0BAQsFADAn -MSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTA3MDkx -NzExMTM0MFoXDTM3MDIyMjA4MTgyOVowJzElMCMGA1UEAxMcVW5pdmVyemEgdiBM -anVibGphbmkgcm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AMzkadWMUGjOQvgZY0lYcJpgSIqBS2OkNOz9dG4BCNd4wBlofCm/T1ITnzzCwcAi -U7XH74Vh4WGi06vz29ZkAJUPUS2SORQ6odDQZaM/bBXm781IkHvTdzEPS+g6T0h3 -TlUPJ799RiIatN4BmbVYIgPLZjDMSvCiIIITgVOa6SWny1TcugB29oYEHwYTjOvy -lFLgX+xUDPZQPMliCa06ESf0RvLsCyV12YPVV2xcE7PQKjYfAh1vq1lhQRK55xS9 -+DO1G0M5ORE8Vo/nJJYJ40yPDVLz14aQv/Ymf4ShQ6n+4eaS2zVrUMcQARhqUCe9 -np5yqxs5e4Sw12tGq6k4/fUCAwEAAaN5MHcwCwYDVR0PBAQDAgGGMBIGA1UdEwEB -/wQIMAYBAf8CAQIwHQYDVR0OBBYEFKW3NpfvTtWqo6IRkz6Qy0HOJTN5MBAGCSsG -AQQBgjcVAQQDAgEBMCMGCSsGAQQBgjcVAgQWBBRfQzahJmMh4ePIvbWg/we6LNhv -tjANBgkqhkiG9w0BAQsFAAOCAQEACJDMsNOV1uu/PsSUoyst0kUZK40tb5nWkVB5 -ViIDTymfNQnuL71L7W8WkoDLEmqOEQg8deElO6L6ArM/ChYWGskEPZmVHiMr4hhs -qJWIlb3gIxjBJpRojzBez/gc6GS0JlXl75VdcR7Vyy9FVIrggn2QTPaVXVZhtfYs -jowxRAA3qmzIdtcJwflq5P8V345DR2xL3IbiR1JucesDE0WF5fCHwL5qE4P69xar -UqmbrbbpmLn41CVyQ8kN+0vqqZzkBXsHUm7D59PMtN8vcbuUaQc2F94r5Vt4mvl5 -otS9eMOoIlk5lVR8/rkIUK1egWdV/vDTNIkXPtx+sDfCMI3m/A== ------END CERTIFICATE----- -Bag Attributes: -subject=DC = si, DC = uni-lj, CN = Univerza v Ljubljani CA1 - -issuer=CN = Univerza v Ljubljani root CA - ------BEGIN CERTIFICATE----- -MIIHMDCCBhigAwIBAgITaQAAABapNxW/pNipaQABAAAAFjANBgkqhkiG9w0BAQsF -ADAnMSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTE3 -MDIyMjExMjAwMloXDTI3MDIyMjExMzAwMlowTzESMBAGCgmSJomT8ixkARkWAnNp -MRYwFAYKCZImiZPyLGQBGRYGdW5pLWxqMSEwHwYDVQQDExhVbml2ZXJ6YSB2IExq -dWJsamFuaSBDQTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbaPNm -ESIDHezcWlwggjhmplQ6fFGqIyycPTKG7z1+p1cab4recx+nucyakKQu7Ky2dkf/ -/musjNpv3548EAfNyL7o6GsxV8iCDk+CtKA8Dol7bs0jgIxGP258pMixYfj92M3D -i6pkYkArEIM16DGRPPXmujpDQnFxXfj3OYrHs/CeHwkrWADKK+D8hBJhfd4r8Hdj -5xofyAM30hcvdcBcFz9EVX2mi0RYYXRnnsJ34e+T8h8vymN3ViEmFqQAZYXXrmIp -H/KonhQpAH88z4K7qX7Ff0BLzlw5B7WZgQdwpyF+qMJfiqAEsIuyE+peB+iUY2F7 -OPP1HiIepJQkO/7ZAgMBAAGjggQrMIIEJzASBgkrBgEEAYI3FQEEBQIDAwADMCMG -CSsGAQQBgjcVAgQWBBRtWAAl/z/lTl9BYlSPJ0KLGR0g+TAdBgNVHQ4EFgQU778m -uTua8OHZ97MEKbeYjkVJiqgwggLABgNVHSABAf8EggK0MIICsDCBkgYLKwYBBAGC -j0aDfQEwgYIwWAYIKwYBBQUHAgIwTB5KAFUATAAgAC0AIABDAGUAcgB0AGkAZgBp -AGMAYQB0AGkAbwBuACAAUAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBu -AHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIGuBgsr -BgEEAYKPRoN9CjCBnjB0BggrBgEFBQcCAjBoHmYAVQBMACAALQAgAEwAbwB3ACAA -QQBzAHMAdQByAGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAA -UAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEW -Gmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIG0BgsrBgEEAYKPRoN9FDCBpDB6 -BggrBgEFBQcCAjBuHmwAVQBMACAALQAgAE0AZQBkAGkAdQBtACAAQQBzAHMAdQBy -AGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAAUAByAGEAYwB0 -AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8v -cGtpLnVuaS1sai5zaS9DUFMvMIGwBgsrBgEEAYKPRoN9HjCBoDB2BggrBgEFBQcC -AjBqHmgAVQBMACAALQAgAEgAaQBnAGgAIABBAHMAcwB1AHIAYQBuAGMAZQAgAEMA -ZQByAHQAaQBmAGkAYwBhAHQAaQBvAG4AIABQAHIAYQBjAHQAaQBjAGUAIABTAHQA -YQB0AGUAbQBlAG4AdDAmBggrBgEFBQcCARYaaHR0cHM6Ly9wa2kudW5pLWxqLnNp -L0NQUy8wGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMBIG -A1UdEwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUpbc2l+9O1aqjohGTPpDLQc4l -M3kwTgYDVR0fBEcwRTBDoEGgP4Y9aHR0cDovL3BraS51bmktbGouc2kvVW5pdmVy -emElMjB2JTIwTGp1YmxqYW5pJTIwcm9vdCUyMENBLmNybDBcBggrBgEFBQcBAQRQ -ME4wTAYIKwYBBQUHMAKGQGh0dHA6Ly9wa2kudW5pLWxqLnNpL1VuaXZlcnphJTIw -diUyMExqdWJsamFuaSUyMHJvb3QlMjBDQSgxKS5jcnQwDQYJKoZIhvcNAQELBQAD -ggEBALKDbKSZ67R0iWMHoLnupjE4acMWyBorvL598Yd3R8Uek/7KZSe6kot5a38Z -gnAlp4BwEvbWtSDKg/Z1ZWP8LCxWNl6+ahSf2PHr0qLzMAdESh4L6o1biyl1WFFB -NZVQYi6lRXvMQr9SU9CFzJa2S7z9LxRT3nvYTe1YIe3mzHC+ihDojhMSGAnUMP9Q -81Um4rHmG/1uHZ2tIEjf2QrLAOVsHli5O5AQT22pIItEeeMgqePm+rQfL3weLDaM -RyGqlIzbMMllxtrRskXTk5FL1aOKIz6uMu3mvQq5wiJf55zSNt9HZa7/yiBYWg3T -aip1SuTYt6m2lXhkrYyh4pM+vA4= ------END CERTIFICATE----- diff --git a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem222.pem b/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem222.pem deleted file mode 100644 index c7dbd11d0..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/AnketniSistem222.pem +++ /dev/null @@ -1,151 +0,0 @@ -Bag Attributes - Microsoft Local Key set: - localKeyID: 01 00 00 00 - Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider - friendlyName: te-Univerzawebstre!017enikiskritikal-cfdf38cd-38ba-444d-a34c-269ac64d2fc1 -Key Attributes - X509v3 Key Usage: 10 ------BEGIN ENCRYPTED PRIVATE KEY----- -MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQIQ4f9qDW94KcCAggA -MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECH1csk3aBpcZBIIEyPu4CkaXvpAS -M5KbduIWhrI6WujgZ6wXVmDWaEY74l8CivxAUQ0MErbaK7jXOLFNPJYKOxaQwdRM -/Z7dXcvqsdbGMuzy0Hs10sUUnh1M5lYaVMDZvkwAXeceBcJlhVXe/kNo/3UxvFnh -UeqWTBTPK1/BjnqqMPXgLDNugoILYPS84VIOx/onijlw8t1efN/+vVut3devkJ1y -EA6g1b5DXqWzdojmY1ucAMOBG0KVEz+Lii86DUburCK552wRl99XFCE9VVXd4RaU -VaxDo6fLVnDhzGUimP2RcD2I0RBGewekzSrUAM6DR3zUZ537tncTmeWwC2mv+fK2 -zODMjI2EjQB1oYryoAl4DsMxlxYGK0Me1vIWjWkWb0B6rel4j2AWmyEPSplR/PKz -gBP4m+PaUdOV57CPz74Y33NVYRCQIPr/C5yVdg54p01kTj/nAxO5c70zxS2Xe3X5 -sjwSdiMa90dO+bfYRYz6qgbhMk0vUK4erjCdxtISuunXbjws39JTfltXbE4RVtvR -FRNCVpvJfapZpOP9F4H/unB3xixXQnmV6uSeDf3dma36Czd18FF5Mc6NA8R6pCtk -fzB/bqQC+8lAcrwsgfr4KK0cR6RmJdfzGpWVKRakey7FJPBpKSbNz7XV0SeCSa/R -18CQlpZ4ZhJUKl33RL3eNjSY7lHGwUfFtVBjuTQ+06HT7d3VqbWsCGpuxUwXsqFf -hZLEVFOvi+ZE7+Yo6Xh8hm9KkFAyz2gP0lm5Zby6Wh+MsFEiARS3g/yVdrDkSaa6 -soooe7fVNtQAyL0gIYKLIbiMW0fhPks91EsKantAEjRnf7eO6fmsE/Gsjk6EDmab -ZKdKhjFFIFL4TmEnGlcUsuVxH3/2YnlMsMcbvOonh2KpbLZrld1MEVBJcP0OozfT -yaaGQhqFE9zt+pkdayCAD/Lqylvn+DuFCVYKzIbJot3OYBo2jLv9BHkPuPVP6v57 -bXCQrE1PNtMyCdfeeZpkXA42GLdC0rmvlOEd4TyBff6Lrwy7KFJNSJINRh1Ar3LV -jdxMSdnTdQQNTMrMy6LDiZZNHXi0wB14vBwwPFLaCC2++5sEaStE5aN1u4s43gKg -Mc2hLqFsT8sn7aJoJRT5kLHLiQENrsHrue42vXtOZEVjkREyVhlCw1+62Pa61W2x -vXDNnoO+laNb/3tRgO7zDwSWDFoo7++BlEM2O1GTV19zP+qeGtP4FuhkZm1bO1P2 -SjvEZzj093wPayHlzxrYdby/YJeOqHtsCicAZBcXZsB6knp7j7Lg+xuGefAKNnnU -fpZ+IrufFKU5/SDoC/mhVNEufmrsF5kZuuwlbWTtWe5IGWkvyi3WBsYcgsZxxgzt -42fGA6hluOzzZPpTIXVnWlyZEIyb/JcPxfWh2lV/bL7kDobZQhFKFi53TWx9MmOI -UnIftwnMt0ALDM/T+Q7qoRwWfi6jN0qubw4pE6g1uwq5L9rwh6irRUk0uZvfasOj -ivuBe2PNEXxKxo3eK2a2+NKBhTQAe9xaDLP4vWCHUeefqIKFZCK/f1YJPgIB+QY9 -a4lBbTTcvZFj4ptZoKA761zaUaa77AHHUJeO7KLR7o9bOBqwpkSQBeNFWgoXJK9c -h/RdN9iOJ/JBOqZ/a0waeA== ------END ENCRYPTED PRIVATE KEY----- -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: Anketni sistem -subject=C = SI, ST = Slovenia, L = Ljubljana, OU = USI UL, CN = anketnisistem.uni-lj.si, emailAddress = helpdesk@uni-lj.si - -issuer=DC = si, DC = uni-lj, CN = Univerza v Ljubljani CA1 - ------BEGIN CERTIFICATE----- -MIIGOTCCBSGgAwIBAgITRgAAH083kx/WP4Z5LAADAAAfTzANBgkqhkiG9w0BAQsF -ADBPMRIwEAYKCZImiZPyLGQBGRYCc2kxFjAUBgoJkiaJk/IsZAEZFgZ1bmktbGox -ITAfBgNVBAMTGFVuaXZlcnphIHYgTGp1YmxqYW5pIENBMTAeFw0yMTEwMjcxMzUx -MzVaFw0yNDEwMjYxMzUxMzVaMIGKMQswCQYDVQQGEwJTSTERMA8GA1UECBMIU2xv -dmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEPMA0GA1UECxMGVVNJIFVMMSAwHgYD -VQQDExdhbmtldG5pc2lzdGVtLnVuaS1sai5zaTEhMB8GCSqGSIb3DQEJARYSaGVs -cGRlc2tAdW5pLWxqLnNpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA -t4sTlbf5c4v+dCulKEW+uoAIbaZ0hCmI8Ja0kh1DY3YtKS/O1u4yEA9zJXqqOpYw -i8KEfcvS+fvTz+/7I3BLNRv9a/QN69TxG+SDHEoVMb506WhHwnl9t7U4nNheTLUJ -/BsuM2egEYsJOu0mym8jsgJAedUQXJucRoSrX5rltrb1dN7L1wc0avckXpALV5CN -Q/qOJ0CRPuE2FnTeNo/oK4p5aDyXYqYmKyJGp25oqcFssfJUcpJJWZ1lf4r3CHim -0+iItlzoWGwG+shTrEp7kHC+2gVhr2Tk7taGPI+HopSXD1iY14vjMPnpabvqsQiA -Qkk2KcmOCeKsU5mtqkOkTQIDAQABo4IC0DCCAswwPQYJKwYBBAGCNxUHBDAwLgYm -KwYBBAGCNxUIwMJIh8CBcITBkxuDzc5HgsCcU4ETgZDnKoX47ToCAWQCAQwwDgYD -VR0PAQH/BAQDAgUgMB0GA1UdDgQWBBTeMKGyDYKB3X4tkd9MH/5Odw0jkTAfBgNV -HSMEGDAWgBTvvya5O5rw4dn3swQpt5iORUmKqDCCAR0GA1UdHwSCARQwggEQMIIB -DKCCAQigggEEhjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUyMHYlMjBM -anVibGphbmklMjBDQTEoMykuY3JshoHFbGRhcDovLy9DTj1Vbml2ZXJ6YSUyMHYl -MjBManVibGphbmklMjBDQTEoMyksQ049RENWMlVMLENOPUNEUCxDTj1QdWJsaWMl -MjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0aW9uLERD -PXVuaS1saixEQz1zaT9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0P2Jhc2U/b2Jq -ZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnQwggEYBggrBgEFBQcBAQSCAQow -ggEGMEYGCCsGAQUFBzAChjpodHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUy -MHYlMjBManVibGphbmklMjBDQTEoMykuY3J0MIG7BggrBgEFBQcwAoaBrmxkYXA6 -Ly8vQ049VW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExLENOPUFJQSxDTj1Q -dWJsaWMlMjBLZXklMjBTZXJ2aWNlcyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0 -aW9uLERDPXVuaS1saixEQz1zaT9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xh -c3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAQEAPAdA -l4QLoJf3OqaqAUEUQdQ0Wgv0PYoWJp/pEWDf7WzZRtBdyT31F9oANIfNUMQO7j4+ -CCJfXmwBze+AYZtAOg/jtxi7ZeS7UwXMoFnA2FDUENnVBl16+Tu37Apl2Mn8XJE0 -q3FLZ6yPLAAs+nBnGXunBNyEvmf6y9xOccnwa3Alo0YdVw2hpHW94NETNqmMGGOZ -KZjhWYM9M9zl0uwK4oKdhFA3eo2W1So7B28/t5LlEg5kFPZEdgt6p7NWp1fCl0Ul -Ss9T8zonZGpGo4cm2m6KRNUCdHuzXpsfqTwDtjUJLli+qtsG6LadFu8Fuxz2tB+8 -12hIOuGDsrSPmvUOpg== ------END CERTIFICATE----- -Bag Attributes: -subject=CN = Univerza v Ljubljani root CA - -issuer=CN = Univerza v Ljubljani root CA - ------BEGIN CERTIFICATE----- -MIIDUTCCAjmgAwIBAgIQEoYALbJIqr1ErYgV3dRtUTANBgkqhkiG9w0BAQsFADAn -MSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTA3MDkx -NzExMTM0MFoXDTM3MDIyMjA4MTgyOVowJzElMCMGA1UEAxMcVW5pdmVyemEgdiBM -anVibGphbmkgcm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AMzkadWMUGjOQvgZY0lYcJpgSIqBS2OkNOz9dG4BCNd4wBlofCm/T1ITnzzCwcAi -U7XH74Vh4WGi06vz29ZkAJUPUS2SORQ6odDQZaM/bBXm781IkHvTdzEPS+g6T0h3 -TlUPJ799RiIatN4BmbVYIgPLZjDMSvCiIIITgVOa6SWny1TcugB29oYEHwYTjOvy -lFLgX+xUDPZQPMliCa06ESf0RvLsCyV12YPVV2xcE7PQKjYfAh1vq1lhQRK55xS9 -+DO1G0M5ORE8Vo/nJJYJ40yPDVLz14aQv/Ymf4ShQ6n+4eaS2zVrUMcQARhqUCe9 -np5yqxs5e4Sw12tGq6k4/fUCAwEAAaN5MHcwCwYDVR0PBAQDAgGGMBIGA1UdEwEB -/wQIMAYBAf8CAQIwHQYDVR0OBBYEFKW3NpfvTtWqo6IRkz6Qy0HOJTN5MBAGCSsG -AQQBgjcVAQQDAgEBMCMGCSsGAQQBgjcVAgQWBBRfQzahJmMh4ePIvbWg/we6LNhv -tjANBgkqhkiG9w0BAQsFAAOCAQEACJDMsNOV1uu/PsSUoyst0kUZK40tb5nWkVB5 -ViIDTymfNQnuL71L7W8WkoDLEmqOEQg8deElO6L6ArM/ChYWGskEPZmVHiMr4hhs -qJWIlb3gIxjBJpRojzBez/gc6GS0JlXl75VdcR7Vyy9FVIrggn2QTPaVXVZhtfYs -jowxRAA3qmzIdtcJwflq5P8V345DR2xL3IbiR1JucesDE0WF5fCHwL5qE4P69xar -UqmbrbbpmLn41CVyQ8kN+0vqqZzkBXsHUm7D59PMtN8vcbuUaQc2F94r5Vt4mvl5 -otS9eMOoIlk5lVR8/rkIUK1egWdV/vDTNIkXPtx+sDfCMI3m/A== ------END CERTIFICATE----- -Bag Attributes: -subject=DC = si, DC = uni-lj, CN = Univerza v Ljubljani CA1 - -issuer=CN = Univerza v Ljubljani root CA - ------BEGIN CERTIFICATE----- -MIIHMDCCBhigAwIBAgITaQAAABapNxW/pNipaQABAAAAFjANBgkqhkiG9w0BAQsF -ADAnMSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTE3 -MDIyMjExMjAwMloXDTI3MDIyMjExMzAwMlowTzESMBAGCgmSJomT8ixkARkWAnNp -MRYwFAYKCZImiZPyLGQBGRYGdW5pLWxqMSEwHwYDVQQDExhVbml2ZXJ6YSB2IExq -dWJsamFuaSBDQTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbaPNm -ESIDHezcWlwggjhmplQ6fFGqIyycPTKG7z1+p1cab4recx+nucyakKQu7Ky2dkf/ -/musjNpv3548EAfNyL7o6GsxV8iCDk+CtKA8Dol7bs0jgIxGP258pMixYfj92M3D -i6pkYkArEIM16DGRPPXmujpDQnFxXfj3OYrHs/CeHwkrWADKK+D8hBJhfd4r8Hdj -5xofyAM30hcvdcBcFz9EVX2mi0RYYXRnnsJ34e+T8h8vymN3ViEmFqQAZYXXrmIp -H/KonhQpAH88z4K7qX7Ff0BLzlw5B7WZgQdwpyF+qMJfiqAEsIuyE+peB+iUY2F7 -OPP1HiIepJQkO/7ZAgMBAAGjggQrMIIEJzASBgkrBgEEAYI3FQEEBQIDAwADMCMG -CSsGAQQBgjcVAgQWBBRtWAAl/z/lTl9BYlSPJ0KLGR0g+TAdBgNVHQ4EFgQU778m -uTua8OHZ97MEKbeYjkVJiqgwggLABgNVHSABAf8EggK0MIICsDCBkgYLKwYBBAGC -j0aDfQEwgYIwWAYIKwYBBQUHAgIwTB5KAFUATAAgAC0AIABDAGUAcgB0AGkAZgBp -AGMAYQB0AGkAbwBuACAAUAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBu -AHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIGuBgsr -BgEEAYKPRoN9CjCBnjB0BggrBgEFBQcCAjBoHmYAVQBMACAALQAgAEwAbwB3ACAA -QQBzAHMAdQByAGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAA -UAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEW -Gmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIG0BgsrBgEEAYKPRoN9FDCBpDB6 -BggrBgEFBQcCAjBuHmwAVQBMACAALQAgAE0AZQBkAGkAdQBtACAAQQBzAHMAdQBy -AGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAAUAByAGEAYwB0 -AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8v -cGtpLnVuaS1sai5zaS9DUFMvMIGwBgsrBgEEAYKPRoN9HjCBoDB2BggrBgEFBQcC -AjBqHmgAVQBMACAALQAgAEgAaQBnAGgAIABBAHMAcwB1AHIAYQBuAGMAZQAgAEMA -ZQByAHQAaQBmAGkAYwBhAHQAaQBvAG4AIABQAHIAYQBjAHQAaQBjAGUAIABTAHQA -YQB0AGUAbQBlAG4AdDAmBggrBgEFBQcCARYaaHR0cHM6Ly9wa2kudW5pLWxqLnNp -L0NQUy8wGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMBIG -A1UdEwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUpbc2l+9O1aqjohGTPpDLQc4l -M3kwTgYDVR0fBEcwRTBDoEGgP4Y9aHR0cDovL3BraS51bmktbGouc2kvVW5pdmVy -emElMjB2JTIwTGp1YmxqYW5pJTIwcm9vdCUyMENBLmNybDBcBggrBgEFBQcBAQRQ -ME4wTAYIKwYBBQUHMAKGQGh0dHA6Ly9wa2kudW5pLWxqLnNpL1VuaXZlcnphJTIw -diUyMExqdWJsamFuaSUyMHJvb3QlMjBDQSgxKS5jcnQwDQYJKoZIhvcNAQELBQAD -ggEBALKDbKSZ67R0iWMHoLnupjE4acMWyBorvL598Yd3R8Uek/7KZSe6kot5a38Z -gnAlp4BwEvbWtSDKg/Z1ZWP8LCxWNl6+ahSf2PHr0qLzMAdESh4L6o1biyl1WFFB -NZVQYi6lRXvMQr9SU9CFzJa2S7z9LxRT3nvYTe1YIe3mzHC+ihDojhMSGAnUMP9Q -81Um4rHmG/1uHZ2tIEjf2QrLAOVsHli5O5AQT22pIItEeeMgqePm+rQfL3weLDaM -RyGqlIzbMMllxtrRskXTk5FL1aOKIz6uMu3mvQq5wiJf55zSNt9HZa7/yiBYWg3T -aip1SuTYt6m2lXhkrYyh4pM+vA4= ------END CERTIFICATE----- diff --git a/admin/survey/modules/Evalvacija/GC_cert/GcService.wsdl b/admin/survey/modules/Evalvacija/GC_cert/GcService.wsdl deleted file mode 100644 index 22e552989..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/GcService.wsdl +++ /dev/null @@ -1,893 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/GC_cert/GcService_OLD.wsdl b/admin/survey/modules/Evalvacija/GC_cert/GcService_OLD.wsdl deleted file mode 100644 index 9435c7663..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/GcService_OLD.wsdl +++ /dev/null @@ -1,879 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/GC_cert/GcService_TEST.wsdl b/admin/survey/modules/Evalvacija/GC_cert/GcService_TEST.wsdl deleted file mode 100644 index aff743348..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/GcService_TEST.wsdl +++ /dev/null @@ -1,733 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem-07102021.pem b/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem-07102021.pem deleted file mode 100644 index 4fa0bdda2..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem-07102021.pem +++ /dev/null @@ -1,143 +0,0 @@ -Bag Attributes - Microsoft Local Key set: - localKeyID: 01 00 00 00 - Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider - friendlyName: te-Univerzawebstre!017enikiskritikal-b4bd8b4e-e47f-49f0-8dc8-61abe9198e17 -Key Attributes - X509v3 Key Usage: 10 ------BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCgt1nSPr0D2BP1 -f0G55rrTtH+rfrKNoniq2rGQshUL/n0oTLadMrbUoN79Qy8KLHbBCxnqfNZ4pCjI -c2xZL6fTj6+TZnOn3zWEhEfWqXatoDUCOW5MJIhyjHHau0CcuBKbOCNaqQpq1iCe -zuemGovOU4bdBou8Y5o1TgLSQvJhqbB54Wy3UKQjO1mHFa0xx6wsDR/sU5EJRNFT -JB1qO/LYE9uqdhQ2guaJRx8BKM5YyM8cbba+4QsZ+AUKEGNco7rJ3S34GtMjM9ru -1wA3fRLHDio6kS/gJs16+B2vue7e6UrBbXwJ8k9HksLrHp3wiAJKbLe6SzsLgJWx -U2g5SZMBAgMBAAECggEASdQwhO6hMdTfRlWRQe8GQB6Yz5VCPOI4AHS6QTgthvb/ -U7X55bjYWFEWXs2wHEJUw1VwMFHszDrNKVgsm8PSmtNU2qej1agqE5gY0DnE9Pm1 -oDH1wzC9JbHy04JVqii9E2T0iL9Cs9Vt4sY1kA59zuh7+aj6JC61NmuBzElIwyfQ -MXehQXJLaO3RrotSTjyLkQcSVWYtm3FZrS4iJ0sCbyLe2C+qIxDDQIiqP17JZBXt -cbKBJynSzhlzUkfUC2VkGUA+TJvuC4dCazhh3QqoG8Yduu5whvbxUcMoskbmc3uo -TvHG7SerU5+lgEt9jipK5L1qEPrCnxrCql2hLdd8aQKBgQDOL+ZF/x/iea939v8L -0cFwQnUbKbDk6sr1r1UuXcwAAuUkEpk93vOAA/L1YV9gst7cxMSHhbFO7FtDGBjc -GjKo2BUAvRGp/rZnlhmo2NqUu0K70gIUnXH9KQ0Bn1Q+5lxCP5qlRoKPtW4/lXhe -l8NBPAzaNvg3RQnVbAJNuaSxTwKBgQDHizPpveQ4OMPt+XyT287YZMRcNECE0fAy -fOp5HOPIXbeab1lBMCpPiK4EyaGXqfebX71Lx76KIOOlXAKYzMcpZB0/Vdpry8Fx -fSTVh4Odm0tTMGKFFJ98LrXxc0s8aG+ugNHJHcDdl+8AMoW7bf57geofNL8ybOmZ -MnQ52KJCrwKBgA/g4nPrhNIVGu07KUMIwUPa6lfQKx5F8qFfAklS0d4CWxEfGYwJ -OmlWZIR/HjA9Nip8QMJLCm+QhiqxlWCF5/bWxS9MYCreQb/ScGFvac3gafA66Qwb -X+bmHWlNkthRNzOm4ErwFifpCfd9lEp8l33TmQ3JA+6Fs48rBTZlIIjDAoGAFaXu -fd9SER9ncjvs3gWszSExhGdO0JoOGwweTAFsXOJ99s05u67ECFjluDM/yrpv2HVs -jfofm9CxodD3nygoOz9XRPXFeohidjODeX74MnMUmvPW3GU+YDSZHJbLhMQ3yZDE -MbN+pwvCrBzPEWR/hVq00anhTFEwjqRAo73y7JUCgYEAgX3Rb8a5nyB+RNwgo+cv -C9yUz3thVdtrWVYWyOa/SfjqB38xc90WjpJxzaa5382U99Y155QsHHuLPBnHgXg0 -lTrPKCXqCC+1RI6JKiUiBtSRPLtspWBSr+neIgkaLMeGgWM8sfOtprKMXxy4zP6z -ViOaYM18wMyCL+bGE+iZOH8= ------END PRIVATE KEY----- -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: Anketni sistem -subject=/C=SI/ST=Slovenia/L=Ljubljana/O=Univerza v Ljubljani/OU=USI/CN=anketnisistem.uni-lj.si/emailAddress=helpdesk@uni-lj.si -issuer=/DC=si/DC=uni-lj/CN=Univerza v Ljubljani CA1 ------BEGIN CERTIFICATE----- -MIIGVTCCBT2gAwIBAgITRgAAHN/OrnRwho0zcgADAAAc3zANBgkqhkiG9w0BAQsF -ADBPMRIwEAYKCZImiZPyLGQBGRYCc2kxFjAUBgoJkiaJk/IsZAEZFgZ1bmktbGox -ITAfBgNVBAMTGFVuaXZlcnphIHYgTGp1YmxqYW5pIENBMTAeFw0xODEwMDgwODIw -MTBaFw0yMTEwMDcwODIwMTBaMIGmMQswCQYDVQQGEwJTSTERMA8GA1UECBMIU2xv -dmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEdMBsGA1UEChMUVW5pdmVyemEgdiBM -anVibGphbmkxDDAKBgNVBAsTA1VTSTEgMB4GA1UEAxMXYW5rZXRuaXNpc3RlbS51 -bmktbGouc2kxITAfBgkqhkiG9w0BCQEWEmhlbHBkZXNrQHVuaS1sai5zaTCCASIw -DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKC3WdI+vQPYE/V/QbnmutO0f6t+ -so2ieKrasZCyFQv+fShMtp0yttSg3v1DLwosdsELGep81nikKMhzbFkvp9OPr5Nm -c6ffNYSER9apdq2gNQI5bkwkiHKMcdq7QJy4Eps4I1qpCmrWIJ7O56Yai85Tht0G -i7xjmjVOAtJC8mGpsHnhbLdQpCM7WYcVrTHHrCwNH+xTkQlE0VMkHWo78tgT26p2 -FDaC5olHHwEozljIzxxttr7hCxn4BQoQY1yjusndLfga0yMz2u7XADd9EscOKjqR -L+AmzXr4Ha+57t7pSsFtfAnyT0eSwusenfCIAkpst7pLOwuAlbFTaDlJkwECAwEA -AaOCAtAwggLMMD0GCSsGAQQBgjcVBwQwMC4GJisGAQQBgjcVCMDCSIfAgXCEwZMb -g83OR4LAnFOBE4GQ5yqF+O06AgFkAgEMMA4GA1UdDwEB/wQEAwIFIDAdBgNVHQ4E -FgQUD1ZQmAwsAUaQakP37pkFpTXawWowHwYDVR0jBBgwFoAU778muTua8OHZ97ME -KbeYjkVJiqgwggEdBgNVHR8EggEUMIIBEDCCAQygggEIoIIBBIY6aHR0cDovL3Br -aS51bmktbGouc2kvVW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExKDMpLmNy -bIaBxWxkYXA6Ly8vQ049VW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExKDMp -LENOPURDVjJVTCxDTj1DRFAsQ049UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049 -U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz11bmktbGosREM9c2k/Y2VydGlm -aWNhdGVSZXZvY2F0aW9uTGlzdD9iYXNlP29iamVjdENsYXNzPWNSTERpc3RyaWJ1 -dGlvblBvaW50MIIBGAYIKwYBBQUHAQEEggEKMIIBBjBGBggrBgEFBQcwAoY6aHR0 -cDovL3BraS51bmktbGouc2kvVW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0Ex -KDMpLmNydDCBuwYIKwYBBQUHMAKGga5sZGFwOi8vL0NOPVVuaXZlcnphJTIwdiUy -MExqdWJsamFuaSUyMENBMSxDTj1BSUEsQ049UHVibGljJTIwS2V5JTIwU2Vydmlj -ZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz11bmktbGosREM9c2k/ -Y0FDZXJ0aWZpY2F0ZT9iYXNlP29iamVjdENsYXNzPWNlcnRpZmljYXRpb25BdXRo -b3JpdHkwDQYJKoZIhvcNAQELBQADggEBAFov1HbNVmLzbrsQzsevdwC0uRCwmfJX -mndiKICecINjpD9NfQzr7n0ApqULGzpJAOS+BEdSJvFFRSiW3yyAn3d8tVqYzCTO -fpcEv+SRPByiTxc6NZY8+H3Tr8+QTBcJ8mTynrAKEfQ+MLohcSQ3o1IlCBIMPgI6 -l0fMA7jZ1fhbcHCZmCItfMGgVDgSOJFEVvHdAkJ8uRaVf3tjhtcYfmC9sOdMPo+X -XDcYV6z/wJZjTLMWOBl7Zi+QZPRH+LD9F3lX8LBdksYnxYGwLOdHBdOGaQOhdpDn -BX/2++cbgc8WLVeKkG2llDh5wFynYpHEw3b9W1Hq77BEDulTvCDtJCY= ------END CERTIFICATE----- -Bag Attributes: -subject=/CN=Univerza v Ljubljani root CA -issuer=/CN=Univerza v Ljubljani root CA ------BEGIN CERTIFICATE----- -MIIDUTCCAjmgAwIBAgIQEoYALbJIqr1ErYgV3dRtUTANBgkqhkiG9w0BAQsFADAn -MSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTA3MDkx -NzExMTM0MFoXDTM3MDIyMjA4MTgyOVowJzElMCMGA1UEAxMcVW5pdmVyemEgdiBM -anVibGphbmkgcm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AMzkadWMUGjOQvgZY0lYcJpgSIqBS2OkNOz9dG4BCNd4wBlofCm/T1ITnzzCwcAi -U7XH74Vh4WGi06vz29ZkAJUPUS2SORQ6odDQZaM/bBXm781IkHvTdzEPS+g6T0h3 -TlUPJ799RiIatN4BmbVYIgPLZjDMSvCiIIITgVOa6SWny1TcugB29oYEHwYTjOvy -lFLgX+xUDPZQPMliCa06ESf0RvLsCyV12YPVV2xcE7PQKjYfAh1vq1lhQRK55xS9 -+DO1G0M5ORE8Vo/nJJYJ40yPDVLz14aQv/Ymf4ShQ6n+4eaS2zVrUMcQARhqUCe9 -np5yqxs5e4Sw12tGq6k4/fUCAwEAAaN5MHcwCwYDVR0PBAQDAgGGMBIGA1UdEwEB -/wQIMAYBAf8CAQIwHQYDVR0OBBYEFKW3NpfvTtWqo6IRkz6Qy0HOJTN5MBAGCSsG -AQQBgjcVAQQDAgEBMCMGCSsGAQQBgjcVAgQWBBRfQzahJmMh4ePIvbWg/we6LNhv -tjANBgkqhkiG9w0BAQsFAAOCAQEACJDMsNOV1uu/PsSUoyst0kUZK40tb5nWkVB5 -ViIDTymfNQnuL71L7W8WkoDLEmqOEQg8deElO6L6ArM/ChYWGskEPZmVHiMr4hhs -qJWIlb3gIxjBJpRojzBez/gc6GS0JlXl75VdcR7Vyy9FVIrggn2QTPaVXVZhtfYs -jowxRAA3qmzIdtcJwflq5P8V345DR2xL3IbiR1JucesDE0WF5fCHwL5qE4P69xar -UqmbrbbpmLn41CVyQ8kN+0vqqZzkBXsHUm7D59PMtN8vcbuUaQc2F94r5Vt4mvl5 -otS9eMOoIlk5lVR8/rkIUK1egWdV/vDTNIkXPtx+sDfCMI3m/A== ------END CERTIFICATE----- -Bag Attributes: -subject=/DC=si/DC=uni-lj/CN=Univerza v Ljubljani CA1 -issuer=/CN=Univerza v Ljubljani root CA ------BEGIN CERTIFICATE----- -MIIHMDCCBhigAwIBAgITaQAAABapNxW/pNipaQABAAAAFjANBgkqhkiG9w0BAQsF -ADAnMSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTE3 -MDIyMjExMjAwMloXDTI3MDIyMjExMzAwMlowTzESMBAGCgmSJomT8ixkARkWAnNp -MRYwFAYKCZImiZPyLGQBGRYGdW5pLWxqMSEwHwYDVQQDExhVbml2ZXJ6YSB2IExq -dWJsamFuaSBDQTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbaPNm -ESIDHezcWlwggjhmplQ6fFGqIyycPTKG7z1+p1cab4recx+nucyakKQu7Ky2dkf/ -/musjNpv3548EAfNyL7o6GsxV8iCDk+CtKA8Dol7bs0jgIxGP258pMixYfj92M3D -i6pkYkArEIM16DGRPPXmujpDQnFxXfj3OYrHs/CeHwkrWADKK+D8hBJhfd4r8Hdj -5xofyAM30hcvdcBcFz9EVX2mi0RYYXRnnsJ34e+T8h8vymN3ViEmFqQAZYXXrmIp -H/KonhQpAH88z4K7qX7Ff0BLzlw5B7WZgQdwpyF+qMJfiqAEsIuyE+peB+iUY2F7 -OPP1HiIepJQkO/7ZAgMBAAGjggQrMIIEJzASBgkrBgEEAYI3FQEEBQIDAwADMCMG -CSsGAQQBgjcVAgQWBBRtWAAl/z/lTl9BYlSPJ0KLGR0g+TAdBgNVHQ4EFgQU778m -uTua8OHZ97MEKbeYjkVJiqgwggLABgNVHSABAf8EggK0MIICsDCBkgYLKwYBBAGC -j0aDfQEwgYIwWAYIKwYBBQUHAgIwTB5KAFUATAAgAC0AIABDAGUAcgB0AGkAZgBp -AGMAYQB0AGkAbwBuACAAUAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBu -AHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIGuBgsr -BgEEAYKPRoN9CjCBnjB0BggrBgEFBQcCAjBoHmYAVQBMACAALQAgAEwAbwB3ACAA -QQBzAHMAdQByAGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAA -UAByAGEAYwB0AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEW -Gmh0dHBzOi8vcGtpLnVuaS1sai5zaS9DUFMvMIG0BgsrBgEEAYKPRoN9FDCBpDB6 -BggrBgEFBQcCAjBuHmwAVQBMACAALQAgAE0AZQBkAGkAdQBtACAAQQBzAHMAdQBy -AGEAbgBjAGUAIABDAGUAcgB0AGkAZgBpAGMAYQB0AGkAbwBuACAAUAByAGEAYwB0 -AGkAYwBlACAAUwB0AGEAdABlAG0AZQBuAHQwJgYIKwYBBQUHAgEWGmh0dHBzOi8v -cGtpLnVuaS1sai5zaS9DUFMvMIGwBgsrBgEEAYKPRoN9HjCBoDB2BggrBgEFBQcC -AjBqHmgAVQBMACAALQAgAEgAaQBnAGgAIABBAHMAcwB1AHIAYQBuAGMAZQAgAEMA -ZQByAHQAaQBmAGkAYwBhAHQAaQBvAG4AIABQAHIAYQBjAHQAaQBjAGUAIABTAHQA -YQB0AGUAbQBlAG4AdDAmBggrBgEFBQcCARYaaHR0cHM6Ly9wa2kudW5pLWxqLnNp -L0NQUy8wGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMBIG -A1UdEwEB/wQIMAYBAf8CAQEwHwYDVR0jBBgwFoAUpbc2l+9O1aqjohGTPpDLQc4l -M3kwTgYDVR0fBEcwRTBDoEGgP4Y9aHR0cDovL3BraS51bmktbGouc2kvVW5pdmVy -emElMjB2JTIwTGp1YmxqYW5pJTIwcm9vdCUyMENBLmNybDBcBggrBgEFBQcBAQRQ -ME4wTAYIKwYBBQUHMAKGQGh0dHA6Ly9wa2kudW5pLWxqLnNpL1VuaXZlcnphJTIw -diUyMExqdWJsamFuaSUyMHJvb3QlMjBDQSgxKS5jcnQwDQYJKoZIhvcNAQELBQAD -ggEBALKDbKSZ67R0iWMHoLnupjE4acMWyBorvL598Yd3R8Uek/7KZSe6kot5a38Z -gnAlp4BwEvbWtSDKg/Z1ZWP8LCxWNl6+ahSf2PHr0qLzMAdESh4L6o1biyl1WFFB -NZVQYi6lRXvMQr9SU9CFzJa2S7z9LxRT3nvYTe1YIe3mzHC+ihDojhMSGAnUMP9Q -81Um4rHmG/1uHZ2tIEjf2QrLAOVsHli5O5AQT22pIItEeeMgqePm+rQfL3weLDaM -RyGqlIzbMMllxtrRskXTk5FL1aOKIz6uMu3mvQq5wiJf55zSNt9HZa7/yiBYWg3T -aip1SuTYt6m2lXhkrYyh4pM+vA4= ------END CERTIFICATE----- diff --git a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem-07102021.pfx b/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem-07102021.pfx deleted file mode 100644 index dadfd7a63..000000000 Binary files a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem-07102021.pfx and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem.pfx b/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem.pfx deleted file mode 100644 index ec67df428..000000000 Binary files a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem.pfx and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem2.pem b/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem2.pem deleted file mode 100644 index 0aac25262..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem2.pem +++ /dev/null @@ -1,129 +0,0 @@ -Bag Attributes - localKeyID: 01 00 00 00 - Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider - friendlyName: 11d916833353d4e6a0e3e0223469ef0e_63111073-f7cf-4958-98c2-f3cbe4c2691e -Key Attributes - X509v3 Key Usage: 10 ------BEGIN ENCRYPTED PRIVATE KEY----- -MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIsIAKFfvzkQ8CAggA -MBQGCCqGSIb3DQMHBAiiJuHiB+1AIQSCBMj5Kxp7qHNASWuw9+4Oq3S9GalUk+Zy -eawfgVyzdiZS3Hgn/6HkEYzlS/UNUDFO5x2dmXwlwNBx922+aFtniCxlXJOia3mM -9Vcc7A31Gj35+FlZRFkvgb6arAx/Kpkhzdh2pqy/uOXJ9ivZl25/k0onJEwLwyN9 -l/E6scLCppryFr2qb3jElh5ysq2hUVrjr9jAZMeMSWzoefxsEqIh6wBkCmqmFpN0 -HJOKaQxT43ocVYgQ/Wk8d5AdYp+ggKNjDYpyysZAhiNSL+RszogV0eZUNqc2YKoN -F7qZ+pgKp0+pWoEb2IEZVWmG0J54ed2elfxj02Q06PKkMGtbwZ+mN9ssAx3lYR6b -fdK6opfCKRceUOSjKvmDqzRXV5O5a15d957cNL/pDDecHQkDWM6Anufabe4uwSHb -owrbTXKVP8fwcI14WE+ovEJKruiFN2omV9uBM0tqsq3MQvCDSj+zuHVc1PSu03a2 -H/Mlq9zzOwYVCVtyrv2iOVdtUyU3UPkReXuWsrGre+JbMpBsg9UFt4NVky1iaxnp -HTnVSRzSFAb3xMNQC66WDSA5OYDXqeW51zx01DDbORm5JB5oX8JQzVui3CW/Bey2 -zyxf+1mVyk1hXjFN6ywiLquCn2XHJwKKet0sw0BLx1mPWBSxPhu6pDua3PsnZgqZ -DuzgP4zQ1CJsmmp4E6aw/h9E3167JBUBIjIH7hEeBE9V6Lolry4EyMETQwc4h/Mw -34yIbuDy9gO4tAFQrdH/FWCkZUy4TZ2kbkbTeQwiub4i4ZQ7B8stPtxp5kcMcPoq -hFTx/psC/fJ0qNsrTH06i24PyA7RFs5OX6re7XbHzz7NIzP1COgAMbS8fFnVn70B -1JVfDTFM/WITPxnyDv6GXjWwoEkz5sRp1VMZceFKTmQkv9OP9zA8MJzEshwrrsGa -0CAx3ePE3/X6dLwUpPVwHmoaGozthzVoU1F3kvom7X9oQ5rk2liWtsrzCB4GDe4Y -eEiS3mfeX4l6CyxV64PPiKDqhuN9nwiDVPGaUken9FRx+nLkGGaWY+h3GOhiuJvF -yAaF+hbIPNlXXuCFxZyntViEIS9sToqV9YH/s6n+MUBlQz5nhJFk/r0bl49Wtb3H -8CXqwoeXBdAuXGWj5n2TtAo3O9BTEIAj1kLO8dZqP0/j9Jiir7F8mJostr0PI6J7 -3nXYGl0wVh+F+y1z8BNwriEdyYY1tE50MGPn4nI+iMHg3LD6o7qbtjGYvZs+qsYY -hcnNsrSjiSOLta4VBhwb9NR5g7p2qIUsyU1wLTB0m7Qrgfp2DrPZUVVoNjTGsEUz -QVIl4rSu63/GdFUqzL6ewFtnLewTB15zOv18VU4ySK9rjoXy/8eEgsAoXtL1/nMw -uhRUyErhkByrE0FLXbrjStFRtH95BEcdHuDg3dsmGAtnAfDet3xW5yjafU/c3K5o -rZmXGkkYLL0l/20Ony+0r3S6iD+cj/kfkP8MjCSSR1HUAwj0tM2ryfRyA6sdGdTy -jMEjxU0bF6NQywultEZgj3PTveRDOaALvcjAdeoz1jMQokcNldQBcvqlFe+Sm/LB -/60BOryGhyT3O3tD7s0ZBK3Pe93MQ2pap9K8AMWsCXccH7IwV6JSegKcLN6+6Cwq -ZnI= ------END ENCRYPTED PRIVATE KEY----- -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: Anketni sistem -subject=/C=SI/ST=Slovenija/L=Ljubljana/O=Univerza v Ljubljani/OU=USI UL/CN=Anketni sistem -issuer=/DC=si/DC=uni-lj/CN=Univerza v Ljubljani CA1 ------BEGIN CERTIFICATE----- -MIIGHDCCBQSgAwIBAgIKKrB/tgABAAAZnDANBgkqhkiG9w0BAQUFADBPMRIwEAYK -CZImiZPyLGQBGRYCc2kxFjAUBgoJkiaJk/IsZAEZFgZ1bmktbGoxITAfBgNVBAMT -GFVuaXZlcnphIHYgTGp1YmxqYW5pIENBMTAeFw0xNjAzMDQxMDI0MTFaFw0xNjA5 -MTgxMzEwMzlaMH4xCzAJBgNVBAYTAlNJMRIwEAYDVQQIEwlTbG92ZW5pamExEjAQ -BgNVBAcTCUxqdWJsamFuYTEdMBsGA1UEChMUVW5pdmVyemEgdiBManVibGphbmkx -DzANBgNVBAsTBlVTSSBVTDEXMBUGA1UEAxMOQW5rZXRuaSBzaXN0ZW0wggEiMA0G -CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGMOIEuNGZCPOFiJ9zABUMXHdJqjxw -YH57iP1sL0oxnF5kKwar8aXQa390CVgz2QVdgy+9xIBi4Ar6VMafEX4o0fiLIbfj -Y5JMwO2szbhCFz7jZ6K4I3HJSLGTSDgkWpYdALvQh/VkB88WxE7Mrke6RDWFIBj3 -d1T3vAnIs/6LDkGZFQWvo3kCuZ2ZOQAhz+OgMRrMApY+7yyT7xX34OfsqahGiEgm -J3fZz4UcsYMh+5H5/FNUwoWLlVea2MUTuZvHozJ36xX810hN0iZY9JdSIQNLvnns -RcNTsaIRBLY0zDFJCOhRATro1MIMNVUf7ki8MRMcPrTPvrBo75LnK5zrAgMBAAGj -ggLJMIICxTAOBgNVHQ8BAf8EBAMCBSAwHQYDVR0OBBYEFDYeEmDKCXDeyfVu9U1+ -RiObob0UMD0GCSsGAQQBgjcVBwQwMC4GJisGAQQBgjcVCMDCSIfAgXCEwZMbg83O -R4LAnFOBE4GQ5yqF+O06AgFkAgEKMB8GA1UdIwQYMBaAFH2Q/3VZsyWUEyy6BWE8 -XYZHJAuOMIIBFgYDVR0fBIIBDTCCAQkwggEFoIIBAaCB/oaBwmxkYXA6Ly8vQ049 -VW5pdmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExLENOPURDVjJVTCxDTj1DRFAs -Q049UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmln -dXJhdGlvbixEQz11bmktbGosREM9c2k/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlz -dD9iYXNlP29iamVjdENsYXNzPWNSTERpc3RyaWJ1dGlvblBvaW50hjdodHRwOi8v -cGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUyMHYlMjBManVibGphbmklMjBDQTEuY3Js -MIIBGAYIKwYBBQUHAQEEggEKMIIBBjCBuwYIKwYBBQUHMAKGga5sZGFwOi8vL0NO -PVVuaXZlcnphJTIwdiUyMExqdWJsamFuaSUyMENBMSxDTj1BSUEsQ049UHVibGlj -JTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixE -Qz11bmktbGosREM9c2k/Y0FDZXJ0aWZpY2F0ZT9iYXNlP29iamVjdENsYXNzPWNl -cnRpZmljYXRpb25BdXRob3JpdHkwRgYIKwYBBQUHMAKGOmh0dHA6Ly9wa2kudW5p -LWxqLnNpL1VuaXZlcnphJTIwdiUyMExqdWJsamFuaSUyMENBMSgxKS5jcnQwDQYJ -KoZIhvcNAQEFBQADggEBAHAXeCr0YrSsDky25rW5coh3pydWyM+KRkNBoQyPEMCw -O5j9IzfZPsvC+MoCbnOFh5zm7/HXq/Y/gK3lIJgDFH6+AQyb+1dSSP1sROgVUBii -HtbSqeFxrZfhKRyfSmiFE5sBUify2/Uu/gh1O+v7Vqkf3GAIBvpZgPSKRR96LmRk -wtYNR8QnaUfULFD5+pl/7rsHri/vA+QhhticBgWHS14DphvVxGsmPXEJTDKSrMix -xdmV9V43azFNTe2oHR4kKAum8U3jNrCDQnQEvfHLgDPArC8gpx4hi5mM11vI702b -y3+5RblKV8dPJPepTseJnEN3gAenLAyLNBh5+iuQY70= ------END CERTIFICATE----- -Bag Attributes: -subject=/CN=Univerza v Ljubljani root CA -issuer=/CN=Univerza v Ljubljani root CA ------BEGIN CERTIFICATE----- -MIIDLDCCAhSgAwIBAgIQZW6UqG+5n4NGQP8po52VbTANBgkqhkiG9w0BAQUFADAn -MSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTA3MDkx -NzExMTM0MFoXDTIzMDkxNzExMTM0MFowJzElMCMGA1UEAxMcVW5pdmVyemEgdiBM -anVibGphbmkgcm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AMzkadWMUGjOQvgZY0lYcJpgSIqBS2OkNOz9dG4BCNd4wBlofCm/T1ITnzzCwcAi -U7XH74Vh4WGi06vz29ZkAJUPUS2SORQ6odDQZaM/bBXm781IkHvTdzEPS+g6T0h3 -TlUPJ799RiIatN4BmbVYIgPLZjDMSvCiIIITgVOa6SWny1TcugB29oYEHwYTjOvy -lFLgX+xUDPZQPMliCa06ESf0RvLsCyV12YPVV2xcE7PQKjYfAh1vq1lhQRK55xS9 -+DO1G0M5ORE8Vo/nJJYJ40yPDVLz14aQv/Ymf4ShQ6n+4eaS2zVrUMcQARhqUCe9 -np5yqxs5e4Sw12tGq6k4/fUCAwEAAaNUMFIwCwYDVR0PBAQDAgGGMBIGA1UdEwEB -/wQIMAYBAf8CAQIwHQYDVR0OBBYEFKW3NpfvTtWqo6IRkz6Qy0HOJTN5MBAGCSsG -AQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBWqUMSqXIeTSgPLQ4CGQPr -2KxM0DOcJzOH0qHCO394HXpHEqIvhAZFM+G6/uNRLHSMwjWagqhPOKLKasQ1vIho -JBSHNTNTuceZv4aPV3ZOfkFw/Iuw9wmZZOEH6CkJz19K3h35akFK7ywOJFZKcP8N -4zkcGBo4OjIXVrKumeC5weEfSG4JEy5QjHaEZUxnFqmCoNgjbVaYavzgGfpHYnxX -JaUfRFB88LyWy1WslpJCEcrP/GopLpqLumeJQqaXpdJxbYPVhRT9U4F+8QlIhEP4 -Q1h5QFCEDTuriKQw3PhrfU32u6pySzlpATKPe1teik6ND44QGapFqre8n1lpK4G3 ------END CERTIFICATE----- -Bag Attributes: -subject=/DC=si/DC=uni-lj/CN=Univerza v Ljubljani CA1 -issuer=/CN=Univerza v Ljubljani root CA ------BEGIN CERTIFICATE----- -MIIExDCCA6ygAwIBAgIKYS95GQAAAAAAAzANBgkqhkiG9w0BAQUFADAnMSUwIwYD -VQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTA4MDkxODEzMDAz -OVoXDTE2MDkxODEzMTAzOVowTzESMBAGCgmSJomT8ixkARkWAnNpMRYwFAYKCZIm -iZPyLGQBGRYGdW5pLWxqMSEwHwYDVQQDExhVbml2ZXJ6YSB2IExqdWJsamFuaSBD -QTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC+oaw3Bpw5MZIzeQk+ -0qg90X/KjMNm9RQ0UPd2t4JBQG/vSD1moQXzFtGaKfInfmwoZ9Ty3+N96zbEcBc4 -nTUj1cy66uuoD8vvZSBLyy4mMpgrsew9UTl4xwfT2vK5iidLEasrgXocDkJVHgJS -P+BOcBj3cNwzQ/VJcnG91F7SO84exR3ccmczYyDsyP0Guv7vJ3C9Ed4rxgd9qRjO -3ZBXQvGj9G9EWHE/TlMvem7K8jYTwExVDlLIw7v9dq4egRqWO+bDcyUNud9mRSna -kwHNLtyH9uxSfCaxta45q56Dh0OmliXp7GyH8KsyVbCYEf/mdB0Avg5AYjYB/pML -JTmVAgMBAAGjggHIMIIBxDASBgNVHRMBAf8ECDAGAQH/AgEBMB0GA1UdDgQWBBR9 -kP91WbMllBMsugVhPF2GRyQLjjALBgNVHQ8EBAMCAYYwEAYJKwYBBAGCNxUBBAMC -AQEwIwYJKwYBBAGCNxUCBBYEFPfRJqs5+1zFn3LOydDjvuKD0/KmMBkGCSsGAQQB -gjcUAgQMHgoAUwB1AGIAQwBBMB8GA1UdIwQYMBaAFKW3NpfvTtWqo6IRkz6Qy0HO -JTN5ME4GA1UdHwRHMEUwQ6BBoD+GPWh0dHA6Ly9wa2kudW5pLWxqLnNpL1VuaXZl -cnphJTIwdiUyMExqdWJsamFuaSUyMHJvb3QlMjBDQS5jcmwwWQYIKwYBBQUHAQEE -TTBLMEkGCCsGAQUFBzAChj1odHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUy -MHYlMjBManVibGphbmklMjByb290JTIwQ0EuY3J0MGQGA1UdIARdMFswWQYlKwYB -BAGCNxUIhIP5YofUrRaG6YExsakfhpmjZjWB1/Q9gvP3RDAwMC4GCCsGAQUFBwIB -FiJodHRwOi8vcGtpLnVuaS1sai5zaS9wa2lwb2xpY3kuaHRtMA0GCSqGSIb3DQEB -BQUAA4IBAQAB76/dNmCyr2JUhBiL25ptD1Lvp6Lli9dXZawVQssOU98TQ7y2RwtV -b7cSHkKnLQaeQEPpKJKEg63Xw6twPQLbxw6oaDeobyjVoXfCXWLeAVHY0KljHc0Y -t57Oj8/+w1qwP+hZQwJVSCtKsESMt4I3hV9lPX4zpk4Ux002cpcqNwtDh6dUnBi0 -ZBe/CL/gl7Q72W45jwOHO8wSqG4nA2dkJ3OqFDT4zsPSAVGcKC680hTEHuSleH/N -b1mXDC2WBfZrxSLKRWfbE9W3RLTaBeCbcfYNmSSS5yuOHrODGGeFEUBklDBxafCH -S8LZIZl8TsQsxSYKTM6MJdNcIvuiqeWb ------END CERTIFICATE----- diff --git a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem2.pfx b/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem2.pfx deleted file mode 100644 index ec67df428..000000000 Binary files a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistem2.pfx and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistemNew.pem b/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistemNew.pem deleted file mode 100644 index f4bd84a72..000000000 --- a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistemNew.pem +++ /dev/null @@ -1,128 +0,0 @@ -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: te-d166257a-9c5f-41a7-bb7b-1c993734e439 - Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider -Key Attributes - X509v3 Key Usage: 10 ------BEGIN ENCRYPTED PRIVATE KEY----- -MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIFWVqlH4k/CkCAggA -MBQGCCqGSIb3DQMHBAiQmgzuNpPipASCBMiW9CAnME4Q9xWznf5ntNT85PqllMzT -sAKvfvuWbTP4YEwDuuZNRIIDrZQjxs8k1Hd5P1WxIXvvpvkBHU+iVPq5AAvjaZnr -yt9pKOYZDu9StAom9ZbgRKHVLqn1HkHZEjS/6rlrcrha7nwRrAupvunvrGT/kYI/ -B3N+R/muVedHWocTVP+wad5AjbHZiaIzMb6dAekCwj7QDfvj/sYhaXEUI5KfnKb/ -l7Vc8pivjMlvHTX00UpqT9lRe1egkbj39GWxKMWkKpFyiPnPyurajFp8QrvR1pFJ -Mp96UDXb812QzNELLv1JiHYJzBbMMtYgjyyphKXt3entHbJUPjKELuAqnylVYe1K -WsbUK8afv84QJ60YnirGLr5H4IwXTeAlv7bPrbOPzTsTx8XCSW4wpiyElI4jOGQG -vtRmZerGA9X5C+8uRgf0XsZp9SivKJHnpCSIuAHe6GpUvWWvjCXrfHrsgTbG8+DX -O1aj+WmN9x0QprrkQia8QaL288zPA8V8xKbrE9S8XdDtulTbH6o1tTgvDiUQS6wo -4S+02cFTTbTbX8eSgXLB0JH7SzeaC6KBpICdN1bmTrQW9KVfA1pDpQhqna7UPwza -OhLAnYHdnUyVh/PE1FpOYKB2iyjDh8Vaoglpoh0pE/2QiDzR7DabyjnOfJmPCu4a -jghKdAFJ9BIv3VocrPeUApkqPNxmild4lhJQ4GG63w7wjiq08gcnELHhzQZQUnO3 -3Ag7mfYwGNZcnrBrlo8OcWfg5GsraSSgljKgLhaaR6PFCvOR9A+w3ITc1+AdFkT1 -rdkKHnd7QrmEty9qTWGTrpa3RDZ8p4aBcZZWTYZOiQfnT2qDcB/dlRcLkmrTwnYW -EHRF2YWvqrR6UkX9XEP+M1aLRk17VuodBYfT4zqMuLdRGXdttv3QPU4WZlPqxk9I -aoPgrmpQvVdwXIYuJRjWocseMN5ATAf43o7GMn9h6rai0fyZ2hN5tb5QqVaksImR -eOCXsOpVXHfThPC7OhRvo+jjj57fF6k2WNUNT5svw6GYCMWWTwmXVhjdAmBJVqGE -40eCfU4SMrmIjbNghhUGC1gUyL3qF/IM9WVNIv5hvQyWiittz8cwN5GKSnPy2cq8 -8Z7xkdx7U7qJzzkOlF1i9i0/Adm9X9oM5F3lQ8w3lM0Tpt0K0z+nYd05O7s7KuPA -PIbvdR2beQWAX4eQcDE00NH9b45kWMlRcaMvZYiGJ2timdzOiKwLMtKV+NAhvVtZ -FGW85tTI4v+xXm8DQtP+XW6ILPBvISItN+OuLr8vlL52kyi9BHKwbizHNKSEBten -A3D4bOb+uYzvEVEhQqWAH7NIqlBFI6HDkE8rC/aDuhHTT0Wwj4DPgrYmJp/j+Gxc -Jef3lzHHYVpXKLtwGQW8yFtGmr3FZCkRQ1z7Zzn0CoROayK6a0TS+3KxRdiWFp/e -F6ep1QsYosnoeavXi2DpeRmr4TgfPFOIwLzWihImSkymboXThdasv9IKQ+DcKJC6 -m2/LIgUQXo6wA9E8oVboHWDPdMU60NdLPOq7b2Wq6CAGowRj6iHfmwUIm1sV/MkG -zH+wakPl6q1q8mzytGn/Ynbbw4vFalq0rtvlfNo/5wGBvFQ5bxlLYq7gzENBgebw -K4U= ------END ENCRYPTED PRIVATE KEY----- -Bag Attributes - localKeyID: 01 00 00 00 - friendlyName: Anketni sistem -subject=/C=SI/ST=Slovenija/L=Ljubljana/O=Univerza v Ljubljani/OU=USI UL/CN=anketnisistem.uni-lj.si/emailAddress=helpdesk@uni-lj.si -issuer=/DC=si/DC=uni-lj/CN=Univerza v Ljubljani CA1 ------BEGIN CERTIFICATE----- -MIIGSTCCBTGgAwIBAgIKH5/KIQACAAAbDDANBgkqhkiG9w0BAQUFADBPMRIwEAYK -CZImiZPyLGQBGRYCc2kxFjAUBgoJkiaJk/IsZAEZFgZ1bmktbGoxITAfBgNVBAMT -GFVuaXZlcnphIHYgTGp1YmxqYW5pIENBMTAeFw0xNjA5MjAxNDM3NDlaFw0xODA5 -MjAxNDQ3NDlaMIGqMQswCQYDVQQGEwJTSTESMBAGA1UECBMJU2xvdmVuaWphMRIw -EAYDVQQHEwlManVibGphbmExHTAbBgNVBAoTFFVuaXZlcnphIHYgTGp1YmxqYW5p -MQ8wDQYDVQQLEwZVU0kgVUwxIDAeBgNVBAMTF2Fua2V0bmlzaXN0ZW0udW5pLWxq -LnNpMSEwHwYJKoZIhvcNAQkBFhJoZWxwZGVza0B1bmktbGouc2kwggEiMA0GCSqG -SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsYD67NJ2FAm2Zv1BI2jjbLngiLPlRhYEc -b6cF3dBntLpL93gucpge01x0vNj3Yt7biT97l1S7IVMMxM5GAkgVlBxrX7mletXF -enTcTE5R8TtTicPXi2U/Fh/BilECSEiRep6COYWMQELK+y82K7gvjM0RrOdR7U6L -eCDoCJy6GFbt8ZYOj16a9yiTyGKmu+kKFivL/mIYK+6rvVNVqLb/kQ2upukqYt+D -srDpNtV0e3i7may0U0HYIDUr2ZrJ+/4YR9jBHGaiFw9KehLU1NyraObeYgXZJax5 -JNvnOxM0/zDCUaUWFRek6Fy0UEVjUjxuxyXvprF211eEUBqvWI9lAgMBAAGjggLJ -MIICxTAOBgNVHQ8BAf8EBAMCBSAwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUI -wMJIh8CBcITBkxuDzc5HgsCcU4ETgZDnKoX47ToCAWQCAQowHQYDVR0OBBYEFL+Z -D2g3oHTAcNsxcTPZt3XJTHCZMB8GA1UdIwQYMBaAFH2Q/3VZsyWUEyy6BWE8XYZH -JAuOMIIBFgYDVR0fBIIBDTCCAQkwggEFoIIBAaCB/oaBwmxkYXA6Ly8vQ049VW5p -dmVyemElMjB2JTIwTGp1YmxqYW5pJTIwQ0ExLENOPURDVjJVTCxDTj1DRFAsQ049 -UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJh -dGlvbixEQz11bmktbGosREM9c2k/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdD9i -YXNlP29iamVjdENsYXNzPWNSTERpc3RyaWJ1dGlvblBvaW50hjdodHRwOi8vcGtp -LnVuaS1sai5zaS9Vbml2ZXJ6YSUyMHYlMjBManVibGphbmklMjBDQTEuY3JsMIIB -GAYIKwYBBQUHAQEEggEKMIIBBjCBuwYIKwYBBQUHMAKGga5sZGFwOi8vL0NOPVVu -aXZlcnphJTIwdiUyMExqdWJsamFuaSUyMENBMSxDTj1BSUEsQ049UHVibGljJTIw -S2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz11 -bmktbGosREM9c2k/Y0FDZXJ0aWZpY2F0ZT9iYXNlP29iamVjdENsYXNzPWNlcnRp -ZmljYXRpb25BdXRob3JpdHkwRgYIKwYBBQUHMAKGOmh0dHA6Ly9wa2kudW5pLWxq -LnNpL1VuaXZlcnphJTIwdiUyMExqdWJsamFuaSUyMENBMSgyKS5jcnQwDQYJKoZI -hvcNAQEFBQADggEBAD/P6PxRaSsTI3/18x6MNLNsD+djNfb7Yy1D4NMVvKgbbKWc -O/jCX8i+GLMXMCQgfLL1sdDA9W4RwIN1ReKbJLN0531XBcU8Ukj9F5y3wFCZ+hcJ -79n/c3FEbwJXzLl2E0pavluuwcrxyoRRZIhR9JggObMdir8/b0CyGAeyKa4H3g53 -hluWhGdjPs5h3p1F4C1o6U8rXllIzIn8/3lLyEk5DbuE0oR6F4QQccR/1irUyx12 -QwbEHbLmfl6pphhuUTATkhgrMs2bLx9QJj4uwEeZR0r8Whs7lCD/lFRSok8KTd3G -kNPjJK2LDidzZW/WqBevi86+3i+poVRIPTcBcBg= ------END CERTIFICATE----- -Bag Attributes: -subject=/CN=Univerza v Ljubljani root CA -issuer=/CN=Univerza v Ljubljani root CA ------BEGIN CERTIFICATE----- -MIIDLDCCAhSgAwIBAgIQZW6UqG+5n4NGQP8po52VbTANBgkqhkiG9w0BAQUFADAn -MSUwIwYDVQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTA3MDkx -NzExMTM0MFoXDTIzMDkxNzExMTM0MFowJzElMCMGA1UEAxMcVW5pdmVyemEgdiBM -anVibGphbmkgcm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AMzkadWMUGjOQvgZY0lYcJpgSIqBS2OkNOz9dG4BCNd4wBlofCm/T1ITnzzCwcAi -U7XH74Vh4WGi06vz29ZkAJUPUS2SORQ6odDQZaM/bBXm781IkHvTdzEPS+g6T0h3 -TlUPJ799RiIatN4BmbVYIgPLZjDMSvCiIIITgVOa6SWny1TcugB29oYEHwYTjOvy -lFLgX+xUDPZQPMliCa06ESf0RvLsCyV12YPVV2xcE7PQKjYfAh1vq1lhQRK55xS9 -+DO1G0M5ORE8Vo/nJJYJ40yPDVLz14aQv/Ymf4ShQ6n+4eaS2zVrUMcQARhqUCe9 -np5yqxs5e4Sw12tGq6k4/fUCAwEAAaNUMFIwCwYDVR0PBAQDAgGGMBIGA1UdEwEB -/wQIMAYBAf8CAQIwHQYDVR0OBBYEFKW3NpfvTtWqo6IRkz6Qy0HOJTN5MBAGCSsG -AQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBWqUMSqXIeTSgPLQ4CGQPr -2KxM0DOcJzOH0qHCO394HXpHEqIvhAZFM+G6/uNRLHSMwjWagqhPOKLKasQ1vIho -JBSHNTNTuceZv4aPV3ZOfkFw/Iuw9wmZZOEH6CkJz19K3h35akFK7ywOJFZKcP8N -4zkcGBo4OjIXVrKumeC5weEfSG4JEy5QjHaEZUxnFqmCoNgjbVaYavzgGfpHYnxX -JaUfRFB88LyWy1WslpJCEcrP/GopLpqLumeJQqaXpdJxbYPVhRT9U4F+8QlIhEP4 -Q1h5QFCEDTuriKQw3PhrfU32u6pySzlpATKPe1teik6ND44QGapFqre8n1lpK4G3 ------END CERTIFICATE----- -Bag Attributes: -subject=/DC=si/DC=uni-lj/CN=Univerza v Ljubljani CA1 -issuer=/CN=Univerza v Ljubljani root CA ------BEGIN CERTIFICATE----- -MIIEXjCCA0agAwIBAgIKEcQlBgAAAAAAFDANBgkqhkiG9w0BAQUFADAnMSUwIwYD -VQQDExxVbml2ZXJ6YSB2IExqdWJsamFuaSByb290IENBMB4XDTE2MDkwMTE0MTc1 -NloXDTIzMDkxNzExMTM0MFowTzESMBAGCgmSJomT8ixkARkWAnNpMRYwFAYKCZIm -iZPyLGQBGRYGdW5pLWxqMSEwHwYDVQQDExhVbml2ZXJ6YSB2IExqdWJsamFuaSBD -QTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC+oaw3Bpw5MZIzeQk+ -0qg90X/KjMNm9RQ0UPd2t4JBQG/vSD1moQXzFtGaKfInfmwoZ9Ty3+N96zbEcBc4 -nTUj1cy66uuoD8vvZSBLyy4mMpgrsew9UTl4xwfT2vK5iidLEasrgXocDkJVHgJS -P+BOcBj3cNwzQ/VJcnG91F7SO84exR3ccmczYyDsyP0Guv7vJ3C9Ed4rxgd9qRjO -3ZBXQvGj9G9EWHE/TlMvem7K8jYTwExVDlLIw7v9dq4egRqWO+bDcyUNud9mRSna -kwHNLtyH9uxSfCaxta45q56Dh0OmliXp7GyH8KsyVbCYEf/mdB0Avg5AYjYB/pML -JTmVAgMBAAGjggFiMIIBXjASBgNVHRMBAf8ECDAGAQH/AgEBMB0GA1UdDgQWBBR9 -kP91WbMllBMsugVhPF2GRyQLjjALBgNVHQ8EBAMCAYYwEAYJKwYBBAGCNxUBBAMC -AQIwIwYJKwYBBAGCNxUCBBYEFKPNqFhEdzmJypggG2UpXthYZuWjMBkGCSsGAQQB -gjcUAgQMHgoAUwB1AGIAQwBBMB8GA1UdIwQYMBaAFKW3NpfvTtWqo6IRkz6Qy0HO -JTN5ME4GA1UdHwRHMEUwQ6BBoD+GPWh0dHA6Ly9wa2kudW5pLWxqLnNpL1VuaXZl -cnphJTIwdiUyMExqdWJsamFuaSUyMHJvb3QlMjBDQS5jcmwwWQYIKwYBBQUHAQEE -TTBLMEkGCCsGAQUFBzAChj1odHRwOi8vcGtpLnVuaS1sai5zaS9Vbml2ZXJ6YSUy -MHYlMjBManVibGphbmklMjByb290JTIwQ0EuY3J0MA0GCSqGSIb3DQEBBQUAA4IB -AQC1e/YRYXA/I0xyHzD2QehR75ocsG8/keScVVUrqvnYBo0GDT6iK9bdss0uepOP -jzF+mK0uupJUWWl2vgeMbj8BTV7aOQv8WXoLBGtH7fj8/RifhJwv0MF6UfQiUAbr -QieYTbFJNMBdFZlUO0POiVt6kCWHjTBtVsltSLSV6Z3WWN4wvVZYI6itePjIHk4q -H/Y4dCKY39sn3kiBC/2wx81ggnJZOMnb0qw/tAcYKyIvrC+SCaQK1YaILPuLm9dN -lzz48uq2cCBd2a/p+O2BSAU9HvMo4SgnC7spWYxp+CDjRP1D2L8mgcB9OHgcMkpw -kVeOAJOXttvLoy84UGStT8Of ------END CERTIFICATE----- diff --git a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistemNew.pfx b/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistemNew.pfx deleted file mode 100644 index 4f886cb34..000000000 Binary files a/admin/survey/modules/Evalvacija/GC_cert/old/AnketniSistemNew.pfx and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/PDF_mailer/fgg_logo.jpg b/admin/survey/modules/Evalvacija/PDF_mailer/fgg_logo.jpg deleted file mode 100644 index 09fd1b019..000000000 Binary files a/admin/survey/modules/Evalvacija/PDF_mailer/fgg_logo.jpg and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/PDF_mailer/mailer.php b/admin/survey/modules/Evalvacija/PDF_mailer/mailer.php deleted file mode 100644 index 36a801be4..000000000 --- a/admin/survey/modules/Evalvacija/PDF_mailer/mailer.php +++ /dev/null @@ -1,196 +0,0 @@ -'; -echo ''; - -echo ''; -echo 'Pošiljanje rezultatov'; -echo ''; -echo ''; - - -echo ''; - -$type = (isset($_GET['type'])) ? $_GET['type'] : 0; - -$m = new Mailer(); - -if($type == 1) - $m->do_it_predmeti(); -else - $m->do_it_izvajalci(); - -echo ''; - -echo ''; - - - -class Mailer { - - // Posiljanje izvajalcem - function do_it_izvajalci () { - - mysqli_set_charset($GLOBALS['connect_db'], "UTF8"); - - $start = microtime(true); - - //$sql = sisplet_query("SELECT * FROM eval_pdf_mailer_izvajalci ORDER BY v1 ASC"); - $sql = sisplet_query("SELECT * FROM eval_pdf_mailer_izvajalci WHERE v6 LIKE '%vasja.vehovar%' or v6 LIKE '%berce%' or v6 LIKE '%podnar%' ORDER BY v1 ASC"); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - while ($row = mysqli_fetch_array($sql)) { - - //$email = trim($row['v6']); - $email = 'peter@1ka.si'; - $name = trim($row['v4']); - $attachment_name = trim($row['v5']); - $subject = 'Evalvacijsko Poročilo: '.$name.' 2015/2016'; - - if ($email != '') { - $this->send_mail($email, $name, $attachment_name, $subject); - $end = microtime(true); - - echo 'POŠILJAM: na email '.$email.' za ime '.$name.' in priponko '.$attachment_name.', ' . $subject; - echo '
Čas pošiljanja: '.round($end - $start, 2).'s
'; - } - } - } - - // Posiljanje za predmete - function do_it_predmeti () { - - $start = microtime(true); - - $sql = sisplet_query("SELECT * FROM eval_pdf_mailer_predmeti ORDER BY v1 ASC"); - //$sql = sisplet_query("SELECT * FROM eval_pdf_mailer_predmeti WHERE v8 LIKE '%vasja.vehovar%' ORDER BY v1 ASC"); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - while ($row = mysqli_fetch_array($sql)) { - - $email = trim($row['v8']); - //$email = 'peter@1ka.si'; - $name = trim($row['v6']); - $predmet = trim($row['v4']); - $attachment_name = trim($row['v7']); - $subject = 'Poročilo'; - - if ($email != '') { - $this->send_mail($email, $name, $attachment_name, $subject); - $end = microtime(true); - - echo "POŠILJAM: na email $email za ime $name in priponko $attachment_name, " . $subject; - echo '
Čas pošiljanja: '.round($end - $start, 2).'s
'; - } - } - } - - function send_mail($to, $to_name, $attachment, $subject) { - - if (trim($to) == '') return; - - $mail = new PHPMailer; - - #$mail->IsSMTP(); // Set mailer to use SMTP - $mail->Host = 'mail.fdv.uni-lj.si'; // Specify main and backup server - #$mail->Host = 'mail.sisplet.org'; // Specify main and backup server - $mail->SMTPAuth = true; // Enable SMTP authentication - $mail->Username = 'anketa'; // SMTP username - #$mail->Username = 'ul1kasi'; // SMTP username - $mail->Password = 'anketa2013fdv'; // SMTP password - #$mail->Password = 'masovka'; // SMTP password - $mail->SMTPSecure = 'tls'; // Enable encryption, 'ssl' also accepted - $mail->CharSet = 'UTF-8'; - - $mail->From = 'anketa@fdv.uni-lj.si'; - #$mail->From = 'ul@1ka.si'; - $mail->FromName = 'Anketa'; - $mail->AddAddress($to, $to_name); // Add a recipient - #$mail->AddAddress('ellen@example.com'); // Name is optional - #$mail->AddReplyTo('peter@1ka.si', 'Peter Hrvatin'); - #$mail->AddReplyTo('ul@1ka.si', 'Anketa'); - $mail->AddReplyTo('anketa@fdv.uni-lj.si', 'Anketa'); - #$mail->AddCC('cc@example.com'); - #$mail->AddBCC('peter@1ka.si'); - - // Set word wrap to 50 characters - $mail->WordWrap = 50; - - // Add attachments - if (file_exists(dirname(__FILE__) . '/pdf/' . $attachment)) - $mail->AddAttachment( dirname(__FILE__) . '/pdf/' . $attachment ); - else - echo ' -- no attachment ('.dirname(__FILE__) . '/pdf/' . $attachment.') '; - - #$mail->AddAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name - - $mail->IsHTML(true); // Set email format to HTML - - $mail->Subject = $subject; - - /*$mail->AddEmbeddedImage('fgg_logo.jpg', 'logo', 'fgg_logo.jpg'); - $mail->AddEmbeddedImage('okolje.jpg', 'okolje', 'okolje.jpg');*/ - - $mail->Body = - '

Spoštovana kolegica, spoštovani kolega!

- -

Podobno kot lani smo tudi v študijskem letu 2014/2015 pripravili analizo študentske ankete. Kot veste, je vsebino in obliko te ankete predpisala Univerza v Ljubljani (pravilnik: https://www.uni-lj.si/o_univerzi_v_ljubljani/organizacija__pravilniki_in_porocila/predpisi_statut_ul_in_pravilniki/2014092609210542/). Sodelovanje v anketi je bilo prostovoljno.

- -

Pošiljamo ocene vašega dela pri premetih, kjer ste bili (so)izvajalec. Ocene bodo prejeli tudi skrbniki programov – z oznako poslovne tajnosti in s pravnim obvestilom o varovanju podatkov - vendar brez odprtih komentarjev in samo za ocene, ki temeljijo na vsaj 4. enotah. Del poročila so tudi metodološka pojasnila, kjer so opisane podrobnosti interpretacije rezultatov anket.

- -

Ob koncu drugega semestra boste prejeli nove izpise, kjer bodo vključeni rezultati tako prvega kot tudi drugega semestra.

- -

V primeru metodoloških vprašanj smo vam na voljo za pojasnila, vprašanja lahko posredujete kot odgovor na prejeto sporočilo.

- -

red. prof. dr. Rado Bohinc

- -

Dekan FDV

'; - - - $mail->AltBody = - '

Spoštovana kolegica, spoštovani kolega!

- -

Podobno kot lani smo tudi v študijskem letu 2014/2015 pripravili analizo študentske ankete. Kot veste, je vsebino in obliko te ankete predpisala Univerza v Ljubljani (pravilnik: https://www.uni-lj.si/o_univerzi_v_ljubljani/organizacija__pravilniki_in_porocila/predpisi_statut_ul_in_pravilniki/2014092609210542/). Sodelovanje v anketi je bilo prostovoljno.

- -

Pošiljamo ocene vašega dela pri premetih, kjer ste bili (so)izvajalec. Ocene bodo prejeli tudi skrbniki programov – z oznako poslovne tajnosti in s pravnim obvestilom o varovanju podatkov - vendar brez odprtih komentarjev in samo za ocene, ki temeljijo na vsaj 4. enotah. Del poročila so tudi metodološka pojasnila, kjer so opisane podrobnosti interpretacije rezultatov anket.

- -

Ob koncu drugega semestra boste prejeli nove izpise, kjer bodo vključeni rezultati tako prvega kot tudi drugega semestra.

- -

V primeru metodoloških vprašanj smo vam na voljo za pojasnila, vprašanja lahko posredujete kot odgovor na prejeto sporočilo.

- -

red. prof. dr. Rado Bohinc

- -

Dekan FDV

'; - - - - /*$mail->AltBody = - '

Spoštovani!

- -

V priponki pošiljamo pilotne rezultate univerzitetne študentske ankete v zimskem semestru 2014/2015.

- -

Vsebino in obliko ankete je predpisala Univerza v Ljubljani. Sodelovanje študentov v anketi je bilo prostovoljno; podrobnosti so v metodoloških pojasnilih.

- -

Ker gre za pilotno izvedbo, prosimo, da z nami delite vaše mnenje. Predvsem nas zanima, ali so poročila dovolj razumljiva.

- -

Vse metodološke pripombe, komentarje, predloge izboljšav ipd., sporočite neposredno na https://www.1ka.si/KUL.

- -

Za vprašanja v zvezi z anketo in študijskim procesom na FGG pa se obrnite na mojca.lorber@fgg.uni-lj.si.

- -

Hvala in lep pozdrav,

- -

Referat za študijske zadeve UL FGG.

';*/ - - if(!$mail->Send()) { - echo 'Message could not be sent.'; - echo 'Mailer Error: ' . $mail->ErrorInfo; - exit; - } - - echo 'Message has been sent ('.$to.' '.$to_name.')
'; - } -} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/PDF_mailer/okolje.jpg b/admin/survey/modules/Evalvacija/PDF_mailer/okolje.jpg deleted file mode 100644 index f61b136eb..000000000 Binary files a/admin/survey/modules/Evalvacija/PDF_mailer/okolje.jpg and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/PDF_mailer/pdf/.gitignore b/admin/survey/modules/Evalvacija/PDF_mailer/pdf/.gitignore deleted file mode 100644 index c96a04f00..000000000 --- a/admin/survey/modules/Evalvacija/PDF_mailer/pdf/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/.Rhistory b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/.Rhistory deleted file mode 100644 index e69de29bb..000000000 diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/00_dataanalysis.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/00_dataanalysis.R deleted file mode 100644 index 1045e5fb8..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/00_dataanalysis.R +++ /dev/null @@ -1,854 +0,0 @@ -# Created by Miha 2015. Updated by Miha 22.7.2019 in parts in progress!!!! # - -# PREVERI!!!!!!!!!!! -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - - -######################################### -# KRATEK OPIS STRUKTURE POROIL IN KODE # -######################################### -# Poroilo je sestavljeno na podlagi R kode (izrauni) in latex kode (.tex, struktura poroil) -# Vhodne datoteke se nahajajo v mapi "temp", kjer sta dve loeni datoteki s podatki za + -# ANKETO PRED IZPITOM in ANKETO PO IZPITU -# V mapi se nahajajo tudi ifranti (ki sluijo opredelitvi izvajalcev fakultete, predmetov, + -# naina tudija, tudijskih programov), itd: + -# Podrobno preberi: http://ul.1ka.si/index.php?fl=2&lact=1&bid=40&parent=3 -# V poroilu so ocenjene, obarvane in v tabelah predstavljene vrednosti komponent za izvajalca, + -# vrednosti komponent predmetov PRED izpitom in vrednosti komponent PO izpitu. -#' @param Komponente za izvajalca so: Kakovost, Pripravljenost, Razumljivost, Zanimivost, Kritinost, Korektnost -#' @param Komponente predmeta (ANKETA PRED): Zadovoljstvo, Usklajenost, Samostojnost, Literatura, Obveenost, Info. na spletu, Preverjanje -#' @param Komponente predmeta (ANKETA PO):Vsebine, naloge, Ocenjevanje, Kompetence, Ustreznost Kreditnih tok -######## -# OSNOVNA SKIPTA # -#================# -#' skripta: @name 00_dataanalysis.R je osnova (ki jo vedno najprej poenemo) in je namenjena opredelitvi + -# spremenljivk, vektorjev, podatkovnih okvirjev in izraunu povpreij, kvantilnih rangov, + -# obarvanju, itd. -# Obarvanja povpreij komponent in kvantilnih rangov opredelimo v skkripti funkcije.R -# Skripto tabelaBy.r pa uporabimo samo pri izpisu PDF za izvajalca. Pri izpisu za programe, fakulteto tega ne uporabljamo. -# Ko smo pognali skrpto kodo.r, lahko generiramo poroilo za izvajalce, tako da poenemo + -# skirpto koda-izvajalec_predmet.r. -# Skripta koda-fakulteta.r slui generiranju poroila za fakulteto. -# Skripta koda-programi pa generira poroila za tudijske programe. -######## -# Glavo dokumenta, obarvanje vrednosti, irino tabel, rotiranje stolpcev, + -# nove strani, poglavja, kazalo itd. generiramo s pomojo latex kode, ki je + -# prenesena v R. -# V mapi latexkosi so denifirane tex. datoteke, ki so namenjene generiranju + -# glave (prva stran, kazalo) in noge (zakljuek) poroila -### Poroilo za izvajalca: glavno dokumenta definira tex datoteka a-glava.tex, + -#' ki jo preberemo v skripti @nam07_PDF_izvajalec.r -### Poroilo za fakulteto: glavo dokumenta definira tex datoteka -# a-glava-program.tex (glej skripto koda-fakulteta.r) -### Excel datoteka "navodila" je narejena s strani programerja in + -# slui opredelitvi anketnih vpraanj za izvajalca, ter predmete (ANKETA PRED IN PO IZPITU) + -# oz. komponent, po katerih raunamo povpreja, kvantilne range, itd. -#----------------------- //KRATEK OPIS STRUKTURE POROIL// -----------------------------------# - - -#---------------------- 1KA strenik -------------------------# -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo -# za posamezno fakulteto na streniku -# Tega trenutno ne rabimo -#params <- commandArgs(trailingOnly = TRUE) -#ID <- params[1] -#---------------------- //1KA strenik// ---------------------# - - -#------------- List packages we need -----------------# -# List packages we want -# install packages from CRAN -p_needed <- - c("tools", - "psych", - "Hmisc", - "reports", - "fmsb", - "car", - "Cairo", - "openxlsx", - "qpcR", - "rio", - "dplyr") # import data (trendi fakulteta) - - -## Install new packages -packages <- rownames(installed.packages()) -p_to_install <- p_needed[!(p_needed %in% packages)] - -if (length(p_to_install) > 0) { - install.packages(p_to_install) -} - -# Load the packages -lapply(p_needed, require, character.only = TRUE) -#------------ //List packages we need// --------------# - - -#---------------------------- DEFINE FACULTY ID -------------------------------# -# Opredelimo ID fakultete, ki skrbi za to da se v poroilu (kjer je dogovorjeno) -# izpie kratice fakultete, ime fakultete ter izrie logo fakultete. -# (glej poroilo za izvajalca, ki ga generira R. skripta koda-izvajalec_predmet) -# ID skrbi tudi, da preberemo ustrezne CSV datoteke za ustrezno Fakulteto. -# Ko se koda prenese na strenik ID zakomentiramo, saj ga Peter ne Potrebuje -ID <- 3000025 -fakulteta <- "" -ime.fakultete <- "" -source("Evalvacija/R/02_IDfaculty.R", encoding = "UTF-8") -#-------------------------- //DEFINE FACULTY ID// -----------------------------# - - -# ----------------------------- CUSTOM DEFINED FUNCTIONS ------------------------------# -# Naloimo dodatne funkcije (obarvanje povpreja + generiranje tabel v -# poglavju Analiza predmeta po programih in letnikih: -# glej poroilo za izvajalca ) -#' e elimo spremeniti barvo, moramo novo barvo defnirati v: -#' skripti @name funkcije.r in v @name tex. datotekah (npr za izvajalca: @a-glava.tex ) -#' @POMEMBNO!!! v 01_funkcije.r opredelimo minimalno tevilo enot na podlagi katerega -#' prikaemo vrednosti povpreij. -source('Evalvacija/R/funkcije/01_funkcije.r', encoding = "UTF-8") -#' Funkcije, ki vodo skrbele za @Agregate in Trende -source('Evalvacija/R/funkcije/agregati_funkcije.r', encoding = "UTF-8") - -# --------------------------- //CUSTOM DEFINED FUNCTIONS// ----------------------------# - - -#--------- WARNINGS ----------# -options(nwarnings = 10000) -# ignore these warnings: -# "[DATA NOT ENOUGH] at 3 NA" <- fmsb::radarchart ne more naredit radar grafa predmeta ker ni vsaj 3 vrednosti za ocene komponent predmeta -# "In FUN(newX[, i], ...) : no non-missing arguments to min; returning Inf/-Inf" <- ne more izraunat min in max ker je n=0 -#------- //WARNINGS// --------# - - -# --------------------------------- FOLDERS FOR OUTPUT ---------------------------------------# -# Ustvarimo mapo, kjer se bodo shranjevale slike (grafi, histogrami, barploti) -# PDF Slike grafov izvajalca -dir.create(paste0("Evalvacija/results/",fakulteta), showWarnings = FALSE) -dir.create(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike"), showWarnings = FALSE) -# PDF Slike grafov za predmet -dir.create(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike"), showWarnings = FALSE) -# Mapa, kamor se bodo shranjevali PDF-ji tudijskih praks (praksa, trendi prakse za lanico) -dir.create(paste0("Evalvacija/results/",fakulteta,"/praksa"), showWarnings = FALSE) -# Folder kamor bomo shranjevlai podatke za agregate, ki pridejo v upotev pri poroilu -# za fakulteto in program -dir.create(paste0("Evalvacija/results/",fakulteta,"/Agregati"), showWarnings = FALSE) -# Folder, kjer se bodo generirali Trendi za izvajalca -dir.create(paste0("Evalvacija/results/",fakulteta,"/Trendi"), showWarnings = FALSE) -# Trendi za habilitacijsko komisijo na nivoju izvaajalca -# Gre za enako poroilo kot v primeru Trendov z aizvajalca, le, da so v tem poroilu -# e tabele IPP (ocene izvajalca pri predmetih) in odprti odgovori tudentov za IPP -dir.create(paste0("Evalvacija/results/",fakulteta,"/Habilitacijska"), showWarnings = FALSE) -# Folder, kjer se bodo generirala poroila za tudijske programe -dir.create(paste0("Evalvacija/results/",fakulteta,"/Programi"), showWarnings = FALSE) -# ------------------------------- //FOLDERS FOR OUTPUT// -------------------------------------# - - - -#---------------------------------------- IMPORT AND PREPARE DATA -----------------------------------------# -#!!!!!! OLD (vasih somo to delali iz SPSS baze (2014) zato smo) ohranili datoteko "navodila.xlsx" -# V navodilih so opredeljene komponente in definirana imena vpraanj + -# ankete 1KA za izvajalca (npr. IZPOUC1) in za predmet (npr. IZPREDa) -# Vrstice predstavljajo komponente za izvajalca in za predmete. -# Definirana so tudi imena komponent, ki jih zapiemo v latex tabelah + -# (stolpec: ime.kratko) ter celotna imena komponent oz. anketnih vpraanj -# (glej stolpec: ime.dolgo) -# V navodilih so opredeljene spremenljivke, ki se nanaajo na spremenljivke v bazi -# (anketa pred in anketa po izpitu) ter dodana nova imena teh spremenljivk, -# ki smo jih generirali sami zaradi lajega in hitrejega pisanja nadalnje kode -# (klicanje teh spremenljivk, ki se raunajo) -# Glej excel navodila!!! -navodila <- - openxlsx::read.xlsx(xlsxFile = "Evalvacija/temp/navodila.xlsx", - colNames = TRUE, - rowNames = TRUE) - -# Preberemo vhodne datoteke Fakultete glede na ID, ki smo ga opredelili # -# Vse vhodne podatke pripravi Peter oziroma dobim na naslovu: -# https://anketa.uni-lj.si/student//index.php -# V tudijskem letu 2016/2017 je prilo do spremembe v ifrantih, -# in sicer v obeh bazah odgovorov tudentov 1KA (anketa pred izpitom in anketa PO izpitu) -# ne sem biti ve IFER TUDENTOV, ki pa je v prejnjih leti bila. -# Ker smo dve loeni bazi (anketa pred in po izpitu) -# zdruevali na podlagi ifre tudentov to ve ni mogoe. Zato -# 1) Celotno kodo preuredimo tako, da bomo podatke "vlekli" iz dveh razlinih baz -# (data_pred_izpitom, data_po_izpitu) - -#' Podatki za: @name Anketa PRED izpitom---------------------- -data_pred_izpitom <- - read.csv2( - paste0("Evalvacija/temp/anketa_pred_izp_", fakulteta, ".csv"), - header = TRUE, - fill = TRUE, - stringsAsFactors = FALSE - ) -# Read from second row (first rows are labels) -if (data_pred_izpitom[1, 1] == "Ustreznost") { - data_pred_izpitom <- data_pred_izpitom[2:nrow(data_pred_izpitom), ] -} - - -#' Podatki za: @name Anketa PO izpitu----------------------- -data_po_izpitu <- - read.csv2( - paste0("Evalvacija/temp/anketa_po_izpitu_", fakulteta, ".csv"), - header = TRUE, - fill = TRUE, - stringsAsFactors = FALSE - ) - -# Read from second row -if (data_po_izpitu[1, 1]=="Ustreznost") { - data_po_izpitu <- data_po_izpitu[2:nrow(data_po_izpitu),] -} - -#' @name sifrantX1 -------------------------------------# -# Je edini obvezni ifrant, kjer se nahajajo vsi pomembni -# podatki za generiranje poroil. -sifrant <- - read.csv2( - paste0("Evalvacija/temp/sifrant_", fakulteta, ".csv"), - header = TRUE, - fill = TRUE, - stringsAsFactors = FALSE - ) -# TIDY DATA --------------------------# -# remove extra spaces # trim funkcija je definirana v funkcije.r -sifrant$PREDMET <- trim(sifrant$PREDMET) -# remove dots in front of course names (FDV!) -sifrant$PREDMET <- sub("^\\.", "", sifrant$PREDMET) -# remove extra spaces -sifrant$NAZIV.PEDAGOGA <- trim(sifrant$NAZIV.PEDAGOGA) -# Novi ifranti, ki smo jih prodobili s strani UL in ne Petra -# if (ID == 3000018) { -# sifrant$IDP <- -# ifelse(sifrant$NACIN_STUDIJA == "1", -# paste0(sifrant$IDP, "_1"), -# paste0(sifrant$IDP, "_2")) -# } -#------------------------ //TIDY DATA// ------------------------# - - -# ifrant X3: STUDENT PROGRAM NAMES------------------------------ -programi.imena <- - read.csv2( - paste0("Evalvacija/temp/programi_", fakulteta, ".csv"), - fill = TRUE, - header = TRUE, - stringsAsFactors = FALSE - ) - -# UPDATED 29.10.2019 # -# ZA POTREBE FDV DODAMO IMENA PRENOVLJENIH IN STARIH PROGRMOV--------- -# Trenutno je namre tako, da imamo za dva razlina programa isto -# ime a razlini ifri. Z imena programa pa izvajalec ne ve -# ali gre z anov ali star program. -# FDV je zato izrazil eljo, da bi prenovljene in predhodne programe -# loili tako, da bi k imenu dodali (prendovljeni) ali (predhodni) -# Torej to naredio le v primeru FDV, za druge fakultete pa po -# NAROILU -if (ID == 3000021) { - # Programe bomo poimenovali v vseh bazah in ifrantu programov - # Druboslovna informatika UNI stari program ima ID = 1000229 - # Druboslovna informatika UNI prenovljeni program ima ID = 1001021 - source("Evalvacija/R/funkcije/nova_imena_programov.R", encoding = "UTF-8") - # ANKETA PRED IZPITOM - data_pred_izpitom <- prenPredh(data_pred_izpitom, "program", "idprog") - # ANKETA PO IZPITU - data_po_izpitu <- prenPredh(data_po_izpitu, "program", "idprog") - # ifrant vse programov: - programi.imena <- prenPredh(programi.imena, program = "Naziv", idprog = "ID") -} - -# Dodatno pa e: -# Loimo univerzitetne in visokoolske programe z vrsto tudija, -# ker so drugae podvojena imena (npr. Druboslovna informatika (uni)) -# Imenu programa prilepimo vrsto tudija (npr. uni ali vs) -programi.imena$Naziv <- - paste0(programi.imena$Naziv, " (", programi.imena$Vrsta, ")") - - -# e so pokvarjeni Ȏ-ji zaradi napanega encodinga v ifrantih to ustrezno popravimo - #Encoding(programi.imena$Naziv) <- "UTF-8" -#------------------------------------ //IMPORT AND PREPARE DATA// --------------------------------------# - - - -#------------------------- ERROR CHECK -------------------------# -# MOREBITNE NESKLADNOSTI Z 1KA BAZO podatkov IN -# IFRANTOM X1, KI BI LAHKO VPLIVALE NA PRAVILNOST -# IZDELAVE PDF POROIL -source('Evalvacija/R/funkcije/errorCheck.r', encoding = "UTF-8") -#---------------------- //ERROR CHECK// ------------------------# - - -#--------------------------------------- AGREGAT SUMARNIH PREDMETOV -----------------------------------------# -# UPDATE 23.12.2019 -# Zaasno zakomenentiramo tale del, saj so bile neke napake v poroilih. Se vrnemo kasneje k temu -# e je ID == Fakulteta za Glasbo zdruimo doloene predmete iz ifranta x7 v meta predmet -# if (ID == 3000043){ -# source('Evalvacija/R/zdruzevanje_predmetov_AG.R') -# source('Evalvacija/R/funkcije/errorCheck.r', encoding = "UTF-8") -# } -#------------------------------------ //AGREGAT SUMARNIH PREDMETOV// ----------------------------------------# - - -#------------------- DEFINE VARIABLES FOR CALUCLATIONS -------------------# -# We create list of variables which will be called for descriptive -# statistics and Latex tables purposes -source("Evalvacija/R/03_variables.R") -#------------------- DEFINE VARIABLES FOR CALUCLATIONS -------------------# - - -#------------------------------- MAIN PART -----------------------------------# -# V tem delu pripravimo vse potrebne izraune, in sicer: -#' opisne statistike, kvantilne range in frekvence glede -#' na \predmet, \izvajalca, \program in \letnik tudentov za: -#' sedem @komponent v anketi PRED -#' est @komponent za izvajalca pri predemtih v anketi PRED -#' tri @komponente za predmet v anketi PO -#' @kompetence v anketi PO -#' @Utreznost KT v anketi PO -#' komponente @prakse v anketi PO - -# PODATKI ZA PREDMETE (ANKETA PRED) ----------------------# -source("Evalvacija/R/04_Anketa_PRED.R", encoding = "UTF-8") -#---------------------------------------------------------# - -# PODATKI ZA IZVAJALCE (ANKETA PRED) ---------------------# -source("Evalvacija/R/05_Izvajalci_PRED.R", encoding = "UTF-8") -#---------------------------------------------------------# - -# PODATKI ZA PREDMETE (ANKETA PRED) ----------------------# -source("Evalvacija/R/06_Anketa_PO.R", encoding = "UTF-8") -#---------------------------------------------------------# - -################### -# UPDATE 3.9.2018 # -################### -# TRENUTNO, bomo kasneje preuredili. -# Za potrebe Agregatov zapiemo vse ocene tudi za tiste predmete z manj kot -# tirimi odgovori. -# IZVAJALCI PRI PREDMETIH (ANKETA PRED)------------- -# Dodamo e tudijsko leto -year <- strsplit(semester.leto, " ")[[1]] -year <- grep("/", year, value = TRUE) # dates -povprecja.izvajalci.programi.brez.cenzure$leto <- year -povprecja.predmeti.programi.PO.brez.cenzure.PO$leto <- year -povprecja.predmeti.programi.brez.cenzure$leto <- year - -write.csv2( - povprecja.izvajalci.programi.brez.cenzure, - paste0( - "Evalvacija/results/", - fakulteta, - "/Agregati/izv_agregat_18_19.csv" - ) -) -# PREDMETI (ANKETA PO)----------------- -write.csv2( - povprecja.predmeti.programi.PO.brez.cenzure.PO, - paste0( - "Evalvacija/results/", - fakulteta, - "/Agregati/po_agregat_18_19.csv" - ) -) -# PREDMETI (ANKETA PRED) --------------- -write.csv2( - povprecja.predmeti.programi.brez.cenzure, - paste0( - "Evalvacija/results/", - fakulteta, - "/Agregati/pred_agregat_18_19.csv" - ) -) - - -#----------------------------- //MAIN PART// ---------------------------------# - - -#--------------------------- FACULTY DESCRIPTIVE STATISTICS --------------------------------# -# Za potrebe Latex tabel, kjer primerjamo povpreje posameznega izvajalca ali programa -# s povprejem celotne fakultete, za posamezne komponente izraunamo e to. - -# Povpreje izvajalcev celotne fakultete----------------------------------- -F.avg.izv <- - colMeans(povprecja.izvajalci[c(paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ")], na.rm = TRUE) -# For Latex table purposes -F.avg.izv <- round(F.avg.izv, 1) -#------------------------------------------------------------------------# - -# Povpreja izvajalcev pri vseh predmetih------------------------------------ -# Povpreje vsek izvajalcev fakultete in insert v tabelo 1.3 (zadnja vrstica) -# Predmeti, ki imajo dovolj ocen -predmeti.izbor <- povprecja.predmeti$predmet.sifra -# Preverimo kateri izvajalci vse sodelujejo pri doloenem predmetu (IPP) -izvajalci.izbor <- unique(povprecja.izvajalci$izvajalec.sifra) -# Naredimo Podmnoico -izbor.izvajalci <- - subset( - povprecja.izvajalci, - predmet.sifra %in% predmeti.izbor & - izvajalec.sifra %in% izvajalci.izbor - ) -# Izraunamo povpreje IPP -izbor.izvajalci.skupaj <- - aggregate(izbor.izvajalci[c(paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ")], - by = izbor.izvajalci[c("izvajalec.sifra", "predmet.sifra")], - FUN = mean, - na.rm = TRUE) -# TOTAL Mean of all IPP (izvajalci pri predmetih) -F.avg.ipp <- - colMeans(izbor.izvajalci.skupaj[3:ncol(izbor.izvajalci.skupaj)], na.rm = - TRUE) -#---------------------------------------------------------------------------# - - -# Povpreje predmetov (anketa PRED izpitom, anketa PO izpitu, tudijska praksa) -------------------- -F.avg.pred <- - colMeans(povprecja.predmeti[c(paste0(vars.cours, "_mean"), "predmet.ocena.SKUPAJ")], na.rm = TRUE) -F.avg.po <- - colMeans(povprecja.predmeti.po[c(paste0(vars.cours.po, "_mean"), "predmet.ocena.SKUPAJ")], na.rm = TRUE) -# For latex tabel purposes we wil change the order of components in F.avg.po -F.avg.po.tab <- F.avg.po[c(2:4,length(F.avg.po), 1, 5)] -# Povpreje tudijskih praks -F.avg.prak <- - colMeans(povprecja.predmeti.po[c(paste0(vars.predmet$cont$praksa, "_mean"), - "predmet.ocena.SKUPAJ.praksa")], na.rm = TRUE) - -# Povpreje Ustreznost KT -F.avg.KT <- - colMeans(povprecja.predmeti.po["predmet.ocena.krediti_mean"], na.rm = TRUE) -# Povpreni Standardni odklon za ustreznost KT -F.avg.sd.KT <- - colMeans(povprecja.predmeti.po["predmet.ocena.krediti_sd"], na.rm = TRUE) -# Povpreni odstotek odgovorov na lestvici od 1 do 5 -F.avg.KT.likert <- - colMeans(povprecja.predmeti.po[paste0("krediti_razporejanje_pct_", 1:5)], na.rm = TRUE) - -# Povpreje kompetence -F.avg.kom <- - colMeans(povprecja.predmeti.po["predmet.ocena.kompetence_mean"], na.rm = TRUE) -# Povpreni Standardni odklon za kompetence -F.avg.sd.kom <- - colMeans(povprecja.predmeti.po["predmet.ocena.kompetence_sd"], na.rm = TRUE) -F.avg.kom.likert <- - colMeans(povprecja.predmeti.po[paste0("kompetence1_razporejanje_pct_", 1:5)], na.rm = TRUE) - -#--------------------------------------------------------------------------------------------# - - - -# Skupna Povpreja IZVAJLCEV fakultete glede na STOPNJO ------------------------# -Fizv <- - rbind(skupaj = colMeans(povprecja.izvajalci[c( - "ST_STUD", - "N_anket", - "N_anketTotal", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct" - )], na.rm = T), - "1" = colMeans(povprecja.izvajalci[povprecja.izvajalci$STOPNJA == 1, c( - "ST_STUD", - "N_anket", - "N_anketTotal", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct" - )], na.rm = T), - "2" = colMeans(povprecja.izvajalci[povprecja.izvajalci$STOPNJA == 2, c( - "ST_STUD", - "N_anket", - "N_anketTotal", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct" - )], na.rm = T)) - -#-------------------------------------------------------------------------------------# - - -# Skupna Povpreja PREDMETOV fakultete glede na STOPNJO in glede na SEMESTER IZVAJANJA--------- -# Anketa PRED -Fpred <- - rbind( - skupaj = colMeans(povprecja.predmeti[c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], na.rm = T), - "1" = colMeans(povprecja.predmeti[povprecja.predmeti$STOPNJA == 1, - c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], na.rm = T), - "2" = colMeans(povprecja.predmeti[povprecja.predmeti$STOPNJA == 2, - c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], na.rm = T), - "prvi_semester" = colMeans( - subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester) - [c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], - na.rm = T - ), - "drugi_semester" = colMeans( - subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester) - [c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], - na.rm = T - ) - ) - -# ANKETA PO -Fpo <- - rbind( - skupaj = colMeans(povprecja.predmeti.po[c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], na.rm = T), - "1" = colMeans(povprecja.predmeti.po[povprecja.predmeti.po$STOPNJA == 1, - c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], na.rm = T), - "2" = colMeans(povprecja.predmeti.po[povprecja.predmeti.po$STOPNJA == 2, - c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], na.rm = T), - "prvi_semester" = colMeans( - subset(povprecja.predmeti.po, SEMESTER_IZV %in% prvi_semester) - [c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], - na.rm = T - ), - "drugi_semester" = colMeans( - subset(povprecja.predmeti.po, SEMESTER_IZV %in% drugi_semester) - [c("ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct")], - na.rm = T - ) - ) -#---------------------------------------------------------------------------------# - - - -################## -# 1.8.2019 Se vrnemo k temu delu #################################### -################## - - - -#------------------------------- Poglavje SPLONA METODOLOGIJA -------------------------------------# -#Podatki, ki generirajo vrednosti v latex datoteki metodolosko.pojasnilo. Glej mapo latexkosi -# S funkcijo scan preberemo tex. datoteko metodolosko.pojasnilo.tex -# Gre za poglavje, ki se nahajaa na koncu (skoraj) vsakega PDF poroila -tex.okvir <- - scan( - "Evalvacija/latexkosi/metodolosko.pojasnilo.tex", - character(0), - sep = "\n", - quiet = TRUE, - encoding = 'UTF-8' - ) - -tex.okvir.izv <- - scan( - "Evalvacija/latexkosi/metodolosko.pojasnilo.izv.tex", - character(0), - sep = "\n", - quiet = TRUE, - encoding = 'UTF-8' - ) - -#tevilka oz povpreji za dodiplomski in podpilomski tudij za anketo PRED izpitom -## ZIMSKI SEMESTER ## -# tevilo predmetov -metod_XXX <- length(unique(subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDP)) -# tevilo pedagogov -metod_YYY <- length(unique(subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDPEDAGOGA)) -# tevilo izvedb.. -metod_UUU <- nrow(subset(sifrant, SEMESTER_IZV %in% prvi_semester)) -# number of prepared evaluations for courses -metod_VVV <- metod_XXX -# number of prepared evaluations for lecturers -metod_RRR <- metod_UUU -tex.okvir <- gsub(pattern=":IME:", replacement=fakulteta, x=tex.okvir) - -# Tekst v poglavju Metodoloko pojasnilo -# da npr. v I. semestru vsak predmet izvaja 2.2 (:RRR:/:XXX:) pedagogov 266/123 -method_IZR <- round(metod_RRR/metod_XXX, digits = 1) -#vsak pedagog pa v povpreju izvaja 2.5 (266/105) predmetov. -method_IZR1 <- round(metod_RRR/metod_YYY, digits = 1) -#Trenutni datum oz stanje izvoza, ki se izpie pod tabelo v poglavju: Metodoloko pojasnilo -date <- format(Sys.time(), "%d.%m.%Y") - - - -# Vpraanje komponente Kompetence -Kompetence.note <- "{\\footnotesize \\textit{* \\guillemotright Tekst vpraanja: V kolikni meri -ste pri predmetu pridobili priakovane \\textbf{kompetence}? \\guillemotleft }}" - -# Kvantilni rangi -kvan.pojas <- "{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je kvantilni rang -za odgovarjajoe vrednosti, vendar ni obarvan, saj gre za administrativni podatek.}}" -kvan.pojas1 <- "{\\footnotesize \\textit{* Gre za vse predmete z vsaj 4 odgovori (tudi predmete drugih programov, -e so bili izbirni), ki so jih vpisali tudenti doloenega programa. \\newline ** Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ -je kvantilni rang za odgovarjajoe vrednosti v tabeli 1.1 (poloaj predmeta med vsemi predmeti doloenega programa), -vendar ni obarvan, saj gre za administrativni podatek.}}" -kvan.pojas3 <- c(paste0("{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je kvantilni rang - za odgovarjajoe vrednosti v tabeli 1.3 (poloaj IPP med vsemi IPP doloenega programa v pogledu tevila vpisanih tudentov). - \\newline ** Gre za vse predmete z vsaj 4 odgovori - (vkljuno s predmeti drugih programov, e so bili izbirni), ki so jih vpisali tudenti doloenega programa. - \\newline *** \\guillemotright t. IPP\\guillemotleft \\ - tevilo vseh izvajalcev pri predmetih na doloenem programu - (v povpreju ima vsak predmet ", method_IZR ," izvajalca).}}")) - - - - -############################################################## -# KOMENTARJI PRI POVPREJIH IZVAJALCEV HABILITACIJSKA KOMISIJA -# K povpreni ocenam izvajalcev dodamo e komentarje tudentov -# # Uporabimo le v pimeru, da delamo poroila za habilitacijsko komisijo -# Habilitacijska <- TRUE -# if (Habilitacijska == TRUE) { -# povprecja.izvajalci.habili <- -# merge( -# povprecja.izvajalci, -# data.izvajalci[c( -# "izvajalec.sifra", -# "predmet.sifra", -# "izvajalec.komentar.dobro", -# "izvajalec.komentar.slabo" -# )], -# by = c("izvajalec.sifra", "predmet.sifra"), -# all = T, -# sort = F -# ) -# # Ustvarimo csv datoteki, ki ju nato uporabimo za generiranje poroil TRENDOV in HABILITACIJSKE KOMISIJE -# write.csv2(povprecja.izvajalci.habili, -# paste0("povprecja.izvajalci_",format(Sys.Date(), "%Y"),".csv")) -# write.csv2(povprecja.predmeti, paste0("povprecja.predmeti_",format(Sys.Date(), "%Y"),".csv")) -# } -############################################################# -povprecja.predmeti <- merge(povprecja.predmeti, poNLurkerji, by = "predmet.sifra", all = TRUE, sort = FALSE) - - - -#----------------------------------- TRENDI ZA TUDIJSKE PROGRAME PO PREMDETIH ------------------------------# -# Tredni tudijskih programov lanice po predmetih -# Za vsako leto elimo imeti podatke posebej, da jih zapiemo v skupno mapo -trendi.prog.predmeti <- TRUE -if (trendi.prog.predmeti == TRUE) { - # Dodamo e stolpec let po katerem bomo filtrirali trende - year <- strsplit(semester.leto, " ")[[1]] - year <- grep("/", year, value = TRUE) # dates - povprecja.predmeti.programi$leto <- year - povprecja.predmeti.programi.PO$leto <- year - # Anketa PRED------------------------------ - #(dodamo letnico da bo razvidno - # za katero leto imamo podatke) - write.csv2( - povprecja.predmeti.programi, - paste0( - "povprecja.predmeti.programi.pred.", - as.numeric(format(Sys.Date(), "%Y")) - 1, - "_", - format(Sys.Date(), "%Y"), - ".csv" - )) - # Anketa PO----------------------- - write.csv2( - povprecja.predmeti.programi.PO, - paste0( - "povprecja.predmeti.programi.po.", - as.numeric(format(Sys.Date(), "%Y")) - 1, - "_", - format(Sys.Date(), "%Y"), - ".csv" - )) - # FAKULTETA------------------------- - # Zapisemo se povprecja za fakulteto, - # ki jjh bomo zapisali v latex tabelo - # Najprej pripravimo podatke - F.tr.df <- c(F.avg.pred, F.avg.po, F.avg.prak["predmet.ocena.SKUPAJ.praksa"]) - names(F.tr.df)[8] <- "predmet.ocena.SKUPAJ.pred" - names(F.tr.df)[23] <- "predmet.ocena.SKUPAJ.po" - colnames(F.tr.df) <- - # Write - write.csv2( - F.tr.df, - row.names = names(F.tr.df), - paste0( - "povprecja.fakultete.", - as.numeric(format(Sys.Date(), "%Y")) - 1, - "_", - format(Sys.Date(), "%Y"), - ".csv" - ) - ) -} -#--------------------------------- //TRENDI ZA TUDIJSKE PROGRAME PO PREMDETIH// ----------------------------# - -############################################################################### -# 19.1.2019 -# trenutno bomo tu ustvarili funkcijo, ki bo sluila za izrisovanje latex tabel pri -# IZDELAVI PDF POROIL ZA TUDIJSKE PROGRAME in FAKULTETO -# Sicer je e tako ali tako preve kode, ampak bomo naknadno vse preuredili -# ANKETA PRED -tb.lat <- - function(data, - tabname, - row.just, - namen = "PRED", - Agregati = FALSE, - agregatNote = FALSE) { - # Funkcija sprejme podatkovni okvir, ime tabele, - # velikost tabele in tevilo stolpcev - - # First check if we are doing latex table - # for the coruse or for the lecturer - # due to different columns in latex table - if (namen == "PRED") { # PRED - n.col = c("c|", rep_len("c", 7), "|c") - note <- paste("{\\footnotesize \\textit{}}") - } else if (namen == "PO") { # PO - n.col = c("c|", rep_len("c", 3), "|c", "|c", "c") - note <- paste( - "{\\footnotesize \\textit{* {\\color{Orange}Oranno} - so oznaena {\\color{Orange}opozorilna} odstopanja - ({\\color{Orange}2.4-2.6}) in - ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa - {\\color{BrickRed}kritina} - odstopanja (pod {\\color{BrickRed}2.4}) - in (nad {\\color{BrickRed}3.6}). }}" - ) - } else if (namen == "IPP") { # Izvajalci pri predmetih - n.col = c("c|", rep_len("c", 6), "|c") - note <- paste( - "{\\footnotesize \\textit{* - t. IPP - tevilo vseh - izvajalcev pri predmetih na - doloenem programu.}}" - ) - } else { - # If we are doing tables for Trends - n.col = c(rep_len("c", ncol(data))) - note <- NULL - } - - # Preverimo ali delamo Latex tabelo za potrebe Agregatov - if (Agregati == TRUE) { - if ("Povp. a" %in% colnames(data) & "Povp. b" %in% colnames(data)) { - n.col = c(rep_len("c", ncol(data) - 2), "|c", "c") - } else if ("Povp. a" %in% colnames(data) & !"Povp. b" %in% colnames(data)) { - n.col = c(rep_len("c", ncol(data) - 1), "|c") - } else { - n.col = c(rep_len("c", ncol(data))) - } - note <- NULL - } - - # Update 2.11.2019 - # Pri agregatih PROGRAMOV bomo v tabeli - # kjer predstavljamo kreditne toke - # Dodali e opombo pod tabelo glede - # barvanja - if (agregatNote == TRUE) { - note <- paste( - "{\\footnotesize \\textit{* {\\color{Orange}Oranno} - so oznaena {\\color{Orange}opozorilna} odstopanja - ({\\color{Orange}2.4-2.6}) in - ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa - {\\color{BrickRed}kritina} - odstopanja (pod {\\color{BrickRed}2.4}) - in (nad {\\color{BrickRed}3.6}). }}" - ) - } - - # Latex table - table <- capture.output( - Hmisc::latex( - data, - caption = tabname, - rowlabel = "", - file = "", - where = "H", - rowlabel.just = row.just, - multicol = FALSE, - longtable = TRUE, - lines.page = 1000, # table will be 1000 line long per page - insert.bottom = note, - col.just = n.col - ) - ) - return(table) -} - -#----------------------# -# Update 22.12.2019 -# Za potrebe poroil habilitacijske komisije -# moramo k povprejem izvajalcev dodati e -# komentarje izvajalcev pri posameznem predmetu -# vse skupaj pa zapisati v bazo iz katere -# bomo nato v habilitacijskem poroilu -# za posamezen predemt zapisali komentarje -izvajalci.komentarji <- - merge( - povprecja.izvajalci, - data.izvajalci[c( - "izvajalec.sifra", - "predmet.sifra", - "izvajalec.komentar.dobro", - "izvajalec.komentar.slabo" - )], - by = c("izvajalec.sifra", "predmet.sifra"), - all = T, - sort = F - ) - -year <- strsplit(semester.leto, " ")[[1]] -year <- grep("/", year, value = TRUE) # dates -year <- gsub("/", "-", year) # dates -izvajalci.komentarji$leto <- year -# Ustvarimo csv datoteki, ki ju nato uporabimo za generiranje poroil TRENDOV in HABILITACIJSKE KOMISIJE -write.csv2(izvajalci.komentarji, paste0("Evalvacija/results/",fakulteta,"/Trendi/izvajalci.komentarji.csv")) - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/010_0_agregati_trendi_prog_priprava.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/010_0_agregati_trendi_prog_priprava.R deleted file mode 100644 index 70218a64a..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/010_0_agregati_trendi_prog_priprava.R +++ /dev/null @@ -1,1648 +0,0 @@ -# Created by Miha: 14. 7. 2018 and modified 23. 7. 2018 and finallized on 2. 8. 2018 -# Code is optimised and dinamically detects (calculations, tables in PDF) if there are only data for single year or multiple year -# Trendi predmetov po programih. -library(tidyverse) - - -#---------------------------------------------------------- IMPORT DATA --------------------------------------------------------------# -# # Check all files that match desired pattern -# PREVERI!!!!!!!!!!! -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - - - -# Agregati za PREDMET (Anketa PRED, podatki po letih) ------------- -ag.pred <- list.files(path = paste0("Evalvacija/results/",fakulteta,"/Agregati"), pattern = "pred") - -# Agregati za PREDMET (Anketa PO, podatki po letih) ------------- -ag.po <- list.files(path = paste0("Evalvacija/results/",fakulteta,"/Agregati"), pattern = "po") - - -# PREVERI!!!!!!!!!!! -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path(paste0("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED/Evalvacija/results/",fakulteta,"/Agregati")) - -if (!dir.exists(fpath)){ - output_dir <- paste0("E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED/Evalvacija/results/",fakulteta,"/Agregati") - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# -# Prepare path in order to read files with -# read.csv2 in lapply function -# home = setwd(getwd()) -# # construct path to file -# #fpath = "E:/Work/Vasja Vehovar/EVALVACIJE 2018_2019 PREDELAVA/AVGUST UPDATE KODE/Agregati/FDV" # DOMA -# setwd(fpath) -# # READ DATA - - -# Agregat za predmete (PRED) # -#============================# -agr.pr.pred <- - lapply(ag.pred, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - -# Agregat za predmete (PO, KT, KOMEPTENCE IN PRAKSO) # -#====================================================# -agr.pr.po <- - lapply(ag.po, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - - - -# Update: 19.9.2019 Po novem vse predmete, ki so PRAKSA -# iz poročila trendov predmetov odstranili in prikazali -# v svoji tabeli V ta namen bomo v podatke agregatov -# oz trendov zapisali še stolpec PRAKSA. Za fdv pa bomo -# kar to ločili po imenih predmetov, kjer je jasno razvidno, -# kje gre za prakso. Pri ostralih članicah pa bomo -# že v "00_dataanalysis.r" zapisali stolpec -# PRAKSA in potem filtrirali podatke glede na ta stolpec -# Torej ločili predmete, ki so praksa, saj jih bomo -# prikazali v ločeni tabeli -if(fakulteta == "FDV") { - # Imena FDV PRAKS (zaradi časovne stiske delamo tako :)) - # Pri ostalih članicah za katere moramo podatke še zapsiati pa - # bomo naredili na "pravilen" način :) - prakse <- - c( - "BD Novinarska praksa I", - "BD Novinarska praksa II", - "BD Vojaška praksa I", - "BD Strokovna praksa (POL-OBR)", - "BD Praksa (DI-UN)", - "BD Praksa (DI-UNI)", - "BD Strokovna praksa (POL-OBR)", - "BD Praktikum (60 ur) KULT", - "BD Praksa (DI-VS) - 15 KT", - "BD Diplomski praktikum in diplomsko delo - AS", - "BD Novinarska praksa II", - "BD Praktikum (180 ur)", - "BD Strokovna praksa (POL-APJU)", - "BD Praktikum (60 ur) MO" - ) - - # Ločeno zapišemo še prakso, za katero bomo naredili ločeno tabelo - # Komponente prakse se nahajaajo v anketi PO - agr.pr.praksa <- agr.pr.po %>% - lapply(., function(x) filter(x, ime.predmeta %in% prakse)) - - # Prakso izločimo iz ankete PRED - agr.pr.pred <- agr.pr.pred %>% - lapply(., function(x) filter(x, !(ime.predmeta %in% prakse))) - - # Prakso izločimo iz ankete PO - agr.pr.po <- agr.pr.po %>% - lapply(., function(x) filter(x, !(ime.predmeta %in% prakse))) - - -} else { - - # Ločeno zapišemo še prakso, za katero bomo naredili ločeno tabelo - # Komponente prakse se nahajaajo v anketi PO - agr.pr.praksa <- agr.pr.po %>% - lapply(., function(x) filter(x, PRAKSA == "1")) - - # Prakso izločimo iz ankete PRED - agr.pr.pred <- agr.pr.pred %>% - lapply(., function(x) subset(x, PRAKSA != "1")) - - # Prakso izločimo iz ankete PO - agr.pr.po <- agr.pr.po %>% - lapply(., function(x) subset(x, PRAKSA != "1")) -} - - -# testno -agregat1 <- function(x, namen = "PRED") { - - # Define vector also globally for export - # purposes - namen <<- namen - #----------------------------------------- - # Group calculate mean and return data --- - x <- x %>% - group_by_at(vars("program.studentov","ime.predmeta")) %>% - # Get only courses where there wer less - # than 4 answers according to lecturer - #' @NOTE: ker smo v študijskem letu 14/15 in 15/16 ocene - #' za anekto PRED in PO izpitu zapisali v skupno bazo - #' je število anket za anketo PO izpitu v stolpcu - #' N_anket_po_izpitu. Za preostala leta pa je tt - #' stolpec poimenovan "N_anket", ker imamo ločeni - #' bazi za anekto PRED in PO - filter({ - if ("N_anket_po_izpitu" %in% names(.) & namen == "PO") - N_anket_po_izpitu < 4 - else - N_anket < 4 - }) %>% - # Dont need courses or lecturers - # without answers - filter({ - if ("N_anket_po_izpitu" %in% names(.) & namen == "PO") - N_anket_po_izpitu > 0 - else - N_anket > 0 - }) %>% - - as.data.frame() - #--------------------------------------- - return(x) -} - - -# PRED ------------ -agreg.pr.pred <- lapply(agr.pr.pred, function(x) agregat1(x, namen = "PRED")) - - -# PO (inlcuding kompetence, praksa, KT) ----- -# V zadnjem letu (2019) smo kodo predelali tako, da v -# Anketi PO, število v za posamezen predmet ali izvajalca ni poimenovano -# več kot "N_anket_po_izpitu" ampak kot "N_anket". Zato to ustrezno -# preimenujemo, saj imamo pri prejšnjih letih -# N_anket_po_izpitu -imen.c <- function(x) { - ifelse( - !"N_anket_po_izpitu" %in% colnames(x), - colnames(x)[colnames(x) == "N_anket"] <- - "N_anket_po_izpitu", - colnames(x) - ) - return(x) - -} -agreg.pr.po <- lapply(agr.pr.po, imen.c) %>% - lapply(., function(x) agregat1(x, namen = "PO")) - -agreg.pr.praksa <- lapply(agr.pr.praksa, imen.c) %>% - lapply(., function(x) agregat1(x, namen = "PO")) - - - - -prog.pred <- NULL -prog.po <- NULL -prog.praksa <- NULL - -# Načeloma imamo za vse namene (PRED, PO, IPP) podatke -# za enako število let, zato v loopu vzamemo kar -# seq_along(agreg.pred) -for (i in 1:length(agreg.pr.pred)) { # Testno delamo za štiri leta, ker imamo trenutno 5 let le za FDV in FGG - # Prepare data for ANKETA PRED --------------------------- - df.pred <- - agreg.pr.pred[[i]][grepl( - "zadovoljstvo_mean|usklajenost_mean|samostojnost_mean|literatura_mean|obvescenost_mean|informiranost_mean|znanje_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime|NACIN_STUDIJA", - colnames(agreg.pr.pred[[i]]) - )] - # Write data - prog.pred[[i]] <- df.pred - # Rbind in data frame with years - agreg.prog.pred <- do.call("rbind", prog.pred) - - # Prepare data for ANKETA PO --------------------------- - df.po <- - agreg.pr.po[[i]][grepl( - "vsebine_mean|naloge_mean|kriteriji_mean|kompetence_mean|krediti_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime|NACIN_STUDIJA", - colnames(agreg.pr.po[[i]]) - )] - # Write data - prog.po[[i]] <- df.po - # Rbind in data frame with years - agreg.prog.po <- do.call("rbind", prog.po) - - # Prepare data for ŠTUDIJSKA PRAKSA ANKETA (PO) --------------------------- - df.praksa <- - agreg.pr.praksa[[i]][grepl( - "ponudba_mean|pomoč_mean|navodila_mean|korist_mean|učinkovitost_mean|strokovnost_mean|podpora_mean|primernost_mean|dolzina_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime|NACIN_STUDIJA", - colnames(agreg.pr.praksa[[i]]) - )] - # Write data - prog.praksa[[i]] <- df.praksa - # Rbind in data frame with years - agreg.prog.praksa <- do.call("rbind", prog.praksa) -} - - -agergati.PRED <- -agreg.prog.pred %>% - # Za potrebe barvanjanja in računanja števila odgovorov - # bomo agregate ločili glede na ime predmeta in šifro programa - # da lahko dobimo oceno predmet apri poasmeznem programu, saj isti predmet - # lahko nastopa v večih programih - split(list(agreg.prog.pred$ime.predmeta, agreg.prog.pred$program.studentov)) %>% - # Nato bomo povsod tam, kjer ni bilo predmet apri programu prazne vrstice izločili - # Zaradi funkcije "kolone", ki skrbi za pripravo agregatov - .[sapply(., nrow) > 0] %>% - lapply(kolone) %>% - # Vse prazne vrednosti zopet izložimo - # TO so tiste, ki v vseh leti hniso imele dovolj podatkov - .[lengths(.) != 0] %>% - # Za potrebe latex tabele združimo - do.call(plyr::rbind.fill, .) %>% - # Dodamo še oklepaje za posamezno leto - oklepaj(., agregati = TRUE) -# Ko naredimo merg se leta podvojijo, kar pa -# za potrebe Agregatov ne želimo -agergati.PRED$LETA <- agergati.PRED$leto - -agregati.PO <- -agreg.prog.po %>% - # V anketi Po se skupno povprečje računa brez kompetenc in KT - select(-c('predmet.ocena.kompetence_mean',"predmet.ocena.krediti_mean")) %>% - dplyr::rename(N_anket = "N_anket_po_izpitu") %>% - split(list(agreg.prog.po$ime.predmeta, agreg.prog.po$program.studentov)) %>% - .[sapply(., nrow) > 0] %>% - lapply(kolone) %>% - .[lengths(.) != 0] %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.PO$LETA <- agregati.PO$leto - -# Krediti -agregati.KT <- -agreg.prog.po %>% - # V anketi Po se skupno povprečje računa brez kompetenc in kT - select(c("predmet.ocena.krediti_mean","N_anket_po_izpitu","ime.predmeta","leto","program.studentov","program.studentov.ime","NACIN_STUDIJA")) %>% - dplyr::rename(N_anket = "N_anket_po_izpitu") %>% - split(list(agreg.prog.po$ime.predmeta, agreg.prog.po$program.studentov)) %>% - .[sapply(., nrow) > 0] %>% - lapply(., function(x) kolone(x, KTtrend = TRUE)) %>% - .[lengths(.) != 0] %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.KT$LETA <- agregati.KT$leto - - -# Kompetence -agregati.KOM <- - agreg.prog.po %>% - # V anketi Po se skupno povprečje računa brez kompetenc in kT - select(c("predmet.ocena.kompetence_mean","N_anket_po_izpitu","ime.predmeta","leto","program.studentov","program.studentov.ime","NACIN_STUDIJA")) %>% - dplyr::rename(N_anket = "N_anket_po_izpitu") %>% - split(list(agreg.prog.po$ime.predmeta, agreg.prog.po$program.studentov)) %>% - .[sapply(., nrow) > 0] %>% - lapply(kolone) %>% - .[lengths(.) != 0] %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.KOM$LETA <- agregati.KOM$leto - - -# ŠTUDIJSKA PRAKSA -agregati.PRAKSA <- -agreg.prog.praksa %>% - # V anketi Po se skupno povprečje računa brez kompetenc in KT - dplyr::rename(N_anket = "N_anket_po_izpitu") %>% - split(list(agreg.prog.praksa$ime.predmeta, agreg.prog.praksa$program.studentov)) %>% - .[sapply(., nrow) > 0] %>% - lapply(kolone) %>% - .[lengths(.) != 0] %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.PRAKSA$LETA <- agregati.PRAKSA$leto - - - -# Poleg agregatov rabimo tudi trende -trend <- function(x, namen = "PRED") { - - # Define vector also globally for export - # purposes - namen <<- namen - #----------------------------------------- - # Group calculate mean and return data --- - x <- x %>% - group_by_at(vars("program.studentov","ime.predmeta")) %>% - # Get only courses where there wer less - # than 4 answers according to lecturer - #' @NOTE: ker smo v študijskem letu 14/15 in 15/16 ocene - #' za anekto PRED in PO izpitu zapisali v skupno bazo - #' je število anket za anketo PO izpitu v stolpcu - #' N_anket_po_izpitu. Za preostala leta pa je tt - #' stolpec poimenovan "N_anket", ker imamo ločeni - #' bazi za anekto PRED in PO - filter({ - if ("N_anket_po_izpitu" %in% names(.) & namen == "PO") - N_anket_po_izpitu >= 0 - else - N_anket >= 0 - }) %>% - - - as.data.frame() - #--------------------------------------- - return(x) -} - - -# TRENDI!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -# PRED ------------ -trend.pr.pred <- lapply(agr.pr.pred, function(x) trend(x, namen = "PRED")) - - -# PO (inlcuding kompetence, praksa, KT) ----- -trend.pr.po <- lapply(agr.pr.po, imen.c) %>% - lapply(., function(x) trend(x, namen = "PO")) - - -trend.pr.praksa <- lapply(agr.pr.praksa, imen.c) %>% - lapply(., function(x) trend(x, namen = "PO")) - - - -trend.pred <- NULL -trend.po <- NULL -trend.praksa <- NULL - -for (i in 1:length(trend.pr.pred)) { # Testno delamo za štiri leta, ker imamo trenutno 5 let le za FDV in FGG - # Prepare data for ANKETA PRED --------------------------- - df.pred <- - trend.pr.pred[[i]][grepl( - "zadovoljstvo_mean|usklajenost_mean|samostojnost_mean|literatura_mean|obvescenost_mean|informiranost_mean|znanje_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime|NACIN_STUDIJA", - colnames(trend.pr.pred[[i]]) - )] - # Write data - trend.pred[[i]] <- df.pred - # Rbind in data frame with years - trend.prog.pred <- do.call("rbind", trend.pred) - - # Prepare data for ANKETA PO --------------------------- - df.po <- - trend.pr.po[[i]][grepl( - "vsebine_mean|naloge_mean|kriteriji_mean|kompetence_mean|krediti_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime|NACIN_STUDIJA", - colnames(trend.pr.po[[i]]) - )] - # Write data - trend.po[[i]] <- df.po - # Rbind in data frame with years - trend.prog.po <- do.call("rbind", trend.po) - - - # Prepare data for ŠTUDIJSKA PRAKSA ANKETA PO --------------------------- - df.praksa <- - trend.pr.praksa[[i]][grepl( - "ponudba_mean|pomoč_mean|navodila_mean|korist_mean|učinkovitost_mean|strokovnost_mean|podpora_mean|primernost_mean|dolzina_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime|NACIN_STUDIJA", - colnames(trend.pr.praksa[[i]]) - )] - # Write data - trend.praksa[[i]] <- df.praksa - # Rbind in data frame with years - trend.prog.praksa <- do.call("rbind", trend.praksa) -} - - -##################################################### -tidy.m <- function(x, KT = FALSE) { - y <- rowMeans(x[grepl("_mean", colnames(x))], na.rm = TRUE) - SKUPAJ <- data.frame(SKUPAJ = y) - SKUPAJ <- formatval(SKUPAJ, KTtrend = KT) - n <- x[grepl("N_anket", colnames(x))] - SKUPAJ <- - ifelse(n[, 1] > 4 & n[, 1] < 10, - paste0("(", SKUPAJ[, 1], ")"), - ifelse(n[, 1] == 4, paste0("((", SKUPAJ[, 1], "))"), - ifelse(n[, 1] >= 0 & n[, 1] < 4, paste0("."), - SKUPAJ[, 1]))) - x$SKUPAJ <- SKUPAJ - return(x) - -} - -############################################## -agreg.prog <- function(x, dtLeto) { - #rownam <- x$ime.predmeta - # Za nekatera leta imamo lahko - # tudi manjkajoči podatek - leta <- length(unique(dtLeto$leto)) - x1 <- x[1:2] - x1[is.na(x1[, 1]), 2] <- "--" - if(leta > 1) { - x2 <- x[3:4] - x2[is.na(x2[, 1]), 2] <- "--" - } - if(leta > 2) { - x3 <- x[5:6] - x3[is.na(x3[, 1]), 2] <- "--" - } - if(leta > 3) { - x4 <- x[7:8] - x4[is.na(x4[, 1]), 2] <- "--" - - } - if (leta > 4) { - x5 <- x[9:10] - x5[is.na(x5[, 1]), 2] <- "--" - - } - - if (leta == 1) { - x.out <- cbind(x1) - } else if (leta == 2 ){ - x.out <- cbind(x1, x2) - } else if( leta == 3){ - x.out <- cbind(x1, x2, x3) - - } else if( leta == 4){ - x.out <- cbind(x1, x2, x3, x4) - - } else if( leta == 5){ - x.out <- cbind(x1, x2, x3, x4, x5) - - } - - x[colnames(x.out)] <- x.out - return(x) -} -############################################ -# x <- trAgPred -# dtLeto =program.predmeti.pred.redni -############################################# -tabelaProg <- function(x, imetabele = "", dtLeto, ...) { - # Preverimo ali sploh imamo podatke agregatov za določen program - df <- x[!grepl(pattern = paste0("SKUPAJ.ag|LETA|stolpec"), colnames(x))] - if ("LETA" %in% colnames(x) & !all(is.na(x$LETA))) { - # Najprej pridobimo za koliko let imamo podatke - df <- x[!grepl(pattern = paste0("SKUPAJ.ag|LETA|stolpec"), colnames(x))] - leto <- x[grepl("LETA", colnames(x))] - - # NAto Preverimo ali imamo eno ali dve leti, - # Torej ali imamo agregat za dve leti - if ("stolpec" %in% colnames(x)) { - # Če stolpec obstaja pomeni, da - # moramo v latex tabeli dodatni dva - # nova stolpca, ki bosta predstavljala - # povprečji za predmete, kjer v preteklosti - # posamezen predmet ni imel dovolj ocen - # Nato pripravimo dodatna stolpca, ki bosta vsebovala povprečje in leto - # na podlagi katerega bomo v stolpec ocen zapisali ali "a" ali "b" - data <- x[grepl(paste0("SKUPAJ|LETA|stolpec"), colnames(x))] - # Preuredimo leto, in povprečja: En predmet je ena vrstica - data$leto1[grepl("Stolpec 1", data$stolpec)] <- - data$LETA[grepl("Stolpec 2", data$stolpec)] - # Še povprečje - data$SKUPAJ.ag.1[grepl("Stolpec 1", data$stolpec)] <- - data$SKUPAJ.ag[grepl("Stolpec 2", data$stolpec)] - # ODstranimo vse vrstice, kjer se nahaja string "Stolpec 2", kar pomeni, da gre za podvojene vrednosti - data <- data[!grepl("Stolpec 2", data$stolpec),] - # V stolpce na ustrezna mesta namesto NA dodamo "a" ali "b" glede na leto - data <- - data[grepl("kompetence\\.|Ustreznost KT|SKUPAJ|LETA|leto1|stolpec", - colnames(data) - )] - } - # Preverimo ali je fakulteta FDV/FGG ali Katera Druga - # In ustrezno poimenujemo stolpce - # Če delamo za FDV ali FGG imamo v letu 2018/2019 - # podatke že za pet let, prvo leto pa je bilo - # 2014/15. Če delamo za ostale članice imamo - # podatke za štiri leta, prvo pa je bilo - # 2015/16 - - col.names <- - gsub("_", "/", gsub("20", "", unique(dtLeto$leto))) - - # Imean stolpcev dodamo k Podatkov - if (!"stolpec" %in% colnames(x)) { - data <- - x[grepl(pattern = paste0("kompetence\\.|Ustreznost KT|SKUPAJ|LETA"), - colnames(x))] - } - colnames(data)[colnames(data) %in% colnames(df)] <- col.names - - # Preverimo za katero študijsko leto imamo premalo podatkov in to zapišemo - # Preverimo ali obstaja oz imamo podatke za 14/15 - if ("14/15" %in% colnames(data)) { - data$`14/15` <- ifelse(grepl("2014/2015|2014/15|14/15", data$LETA), "a", data$`14/15`) - if ("leto1" %in% colnames(data)) { - data$`14/15` <- ifelse(grepl("2014/2015|2014/15|14/15", data$leto1), "b", data$`14/15`) - } - } - # Preverimo ali obstaja oz imamo podatke za 15/16 - if ("15/16" %in% colnames(data)) { - data$`15/16` <- ifelse(grepl("2015/2016|2015/16|15/16", data$LETA), "a", data$`15/16`) - if ("leto1" %in% colnames(data)) { - data$`15/16` <- ifelse(grepl("2015/2016|2015/16|15/16", data$leto1), "b", data$`15/16`) - } - } - # Preverimo ali obstaja oz imamo podatke za 16/17 - if ("16/17" %in% colnames(data)) { - data$`16/17` <- ifelse(grepl("2016/2017|2016/17|16/17", data$LETA), "a", data$`16/17`) - if ("leto1" %in% colnames(data)) { - data$`16/17` <- ifelse(grepl("2016/2017|2016/17|16/17", data$leto1), "b", data$`16/17`) - } - } - # Preverimo ali obstaja oz imamo podatke za 17/18 - if ("17/18" %in% colnames(data)) { - data$`17/18` <- ifelse(grepl("2017/2018|2017/18|17/18", data$LETA), "a", data$`17/18`) - if ("leto1" %in% colnames(data)) { - data$`17/18` <- ifelse(grepl("2017/2018|2017/18|17/18", data$leto1), "b", data$`17/18`) - } - } - # Preverimo ali obstaja oz imamo podatke za 18/19 - if ("18/19" %in% colnames(data)) { - data$`18/19` <- ifelse(grepl("2018/2019|2018/19|18/19", data$LETA), "a", data$`18/19`) - if ("leto1" %in% colnames(data)) { - data$`18/19` <- ifelse(grepl("2018/2019|2018/19|18/19", data$leto1), "b", data$`18/19`) - } - } - # Preverimo ali obstaja oz imamo podatke za 19/20 - if ("19/20" %in% colnames(data)) { - data$`19/20` <- ifelse(grepl("2019/2020|2019/20|19/20", data$LETA), "a", data$`19/20`) - if ("leto1" %in% colnames(data)) { - data$`19/20` <- ifelse(grepl("2019/2020|2019/20|19/20", data$leto1), "b", data$`19/20`) - } - } - - # Preverimo ali obstaja oz imamo podatke za 20/21 - if ("20/21" %in% colnames(data)) { - data$`20/21` <- ifelse(grepl("2020/2021|2020/21|20/21", data$LETA), "a", data$`20/21`) - if ("leto1" %in% colnames(data)) { - data$`20/21` <- ifelse(grepl("2020/2021|2020/21|20/21", data$leto1), "b", data$`20/21`) - } - } - - # Subset in priprava za Latex tabelo - data <- data[!grepl("LETA|leto1|stolpec", colnames(data))] - # Preverimo ali imamo dva dodatna stolpca ali samo enega - if (length(df) + 2 == length(data[1:ncol(data)])) { - colnames(data)[c(ncol(data) - 1):ncol(data)] <- c("Povp. a", "Povp. b") - # Update 17.9.2019 - # V kolikor se v stolpcu pojavi a ali b želimo to kot - # zapisati kot superscript oziroma na potenco - data$`Povp. a` <- - ifelse( - !is.na(data$`Povp. a`), - paste0(data$`Povp. a`, "\\textsuperscript{a}"), - data$`Povp. a` - ) - data$`Povp. b` <- - ifelse( - !is.na(data$`Povp. b`), - paste0(data$`Povp. b`, "\\textsuperscript{b}"), - data$`Povp. b` - ) - } else { - colnames(data)[ncol(data)] <- c("Povp. a") - data$`Povp. a` <- - ifelse( - !is.na(data$`Povp. a`), - paste0(data$`Povp. a`, "\\textsuperscript{a}"), - data$`Povp. a` - ) - } - - data[is.na(data)] <- "." - # Dodamo še morebitne opombe, ki se bodo izpisale pod - # Latex tabelo - opomba <- "" - } else { - - data <- x[!grepl("SKUPAJ.ag|stolpec|LETA", colnames(x))] - if (ncol(data) == 0){ - data <- NULL - } else { - col.names <- - gsub("_", "/", gsub("20", "", unique(dtLeto$leto))) - colnames(data)[colnames(data) %in% colnames(df)] <- col.names - - } - } - - #' Create \Latex Table - if (!is.null(data)) { - data.tex <- tb.lat( - data, - tabname = imetabele, - "A{8cm}", - namen = "TRENDI", - Agregati = TRUE, - ... - ) - } else { - data.tex <- "Ni ocen." - } - # Vrni latex tabelo - return(data.tex) -} - - - -############################################## - - - -#---------------------- //IMPORT DATA "BREZ CENZURE"// ---------------------------# - -#--------------------------------------------------------- //IMPORT DATA// ------------------------------------------------------------# - -#----------------------------------------------- PREPARING DATA FOR EACH STUDENT PROGRAM ----------------------------------------------# -######################################################################################################################################## -# Start with making latex files -# Na koncu bomo v vektor zapisali vrednosti določenega programa -programi.tex.I <- NULL # I stopnja -programi.tex.II <- NULL # II stopnja -# Update 19.9.2019 -# Po novem bomo zapisali tudi trende komponent UL -# Glej na koncu!! -komponente.tex.I <- NULL # I stopnja -komponente.tex.II <- NULL # II stopnja -# Množica progrmov za katere bomo naredili poročilo -Prog.all <- unique(trend.prog.pred$program.studentov) -Prog.all <- Prog.all[!is.na(Prog.all)] -# V letu 14/15 je imel FDV drugačne šifre in imena programov, -# zato te, ki se ne ujemajo odstranimo (Enako je v primeru FGG) -Prog.all <- - Prog.all[!Prog.all %in% c(45, 34, 43, 74, 18, 14, 16, 15, 93, 20, 17, 22, 92, 19, 23, 21)] - -for (program in Prog.all) { - - # Name of the program - ime.programa <- unique(Hmisc::latexTranslate(trend.prog.pred[trend.prog.pred$program.studentov == program, "program.studentov.ime"])) - # Level of program 1 = dodiplomski, 2 = podpiplomski - programi.imena.stopnja <- programi.imena[programi.imena$ID == program,c("ID","Stopnja","Naziv" )] - stopnja <- programi.imena.stopnja$Stopnja - - - #----------------------------------------- OCENE PREDMETOV (ANKETA PRED IZPITOM: REDNI ŠTUDIj) ----------------------------------------# - # Subset data according to program ID, nacin studija (1 = redni) and data (anketa pred) - program.predmeti.pred.redni <- - subset( - trend.prog.pred, - program.studentov == program & - c(NACIN_STUDIJA == "1" | NACIN_STUDIJA == "redni") & N_anket > 0 - ) - - # We create tables only if data for course exist - if (nrow(program.predmeti.pred.redni) > 0) { - # Subset and select the columns that will be added into latex tables - program.predmeti.pred.redni.program <- - subset(program.predmeti.pred.redni, program.studentov == program)[c( - paste0(vars.predmet$cont$pred, "_mean"), - "N_anket", - "ime.predmeta", - "leto", - "program.studentov", - "program.studentov.ime" - - )] - - # We want to split data according to year in order to be able to write year as columns in latex tables - split.data.pred.by.year <- - split(program.predmeti.pred.redni.program, program.predmeti.pred.redni.program$leto) %>% - lapply(., tidy.m) - # After the data is splitted we want to join (merge) different years accoridng to course name - data.pred.by.year <- split.data.pred.by.year %>% reduce(full_join, by = "ime.predmeta") - - - # Agregati le za predmete rednega študija - if ("program.studentov.x" %in% colnames(data.pred.by.year)) { - - sk.stolpci <-c("program.studentov.x", "ime.predmeta") - } else { - sk.stolpci <- c("program.studentov", "ime.predmeta") - } - agergati.PRED.redni <- subset(agergati.PRED, NACIN_STUDIJA %in% c("1","redni")) - #Združimo trende in morebitne agregate za otrebe latex tabele - trAgPred <- - suppressWarnings(merge( - data.pred.by.year, - agergati.PRED.redni, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - - - # Podatki, ki jih potrebujemo v latex tabeli - trAgPred <- - trAgPred[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgPred))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgPred) <- make.unique(trAgPred$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgPred$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgPred <- agreg.prog(trAgPred, dtLeto = program.predmeti.pred.redni) - # Final data for latex table - trAgPred <- trAgPred[grepl("SKUPAJ|stolpec|LETA", colnames(trAgPred))] - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgPred , - imetabele = "Povprečja za agregirane - ocene sedmih komponent \\textbf{predmeta} - (anketa PRED izpitom)", - dtLeto = program.predmeti.pred.redni - ) - program.predmeti.pred.redni.program.tex <- t.tex - - - } else { # If there is no data for program, in PDF report we will say that there was no grades for ANKETA PRED - program.predmeti.pred.redni.program.tex <- "Za anketo PRED izpitom ni ocen." - #zad.trend.program.tex <- "Za komponente ni ocen." - } - #------------------------------------- //OCENE PREDMETOV (ANKETA PRED IZPITOM: REDNI ŠTUDIj)// -------------------------------------# - - - # ------------------------------------- OCENE PREDMETOV (ANKETA PRED IZPITOM: IZREDNI ŠTUDIj) ---------------------------------------# - # Subset data according to program ID, nacin studija (2 = izredni) and data (anketa pred) - program.predmeti.pred.izredni <- subset(trend.prog.pred, program.studentov == program & c(NACIN_STUDIJA == "2" | NACIN_STUDIJA == "izredni") & N_anket > 0) - # Only if there are data for "izredni študij" - if (nrow(program.predmeti.pred.izredni) > 0) { - # Subset and select the columns that will be added into latex tables - program.predmeti.pred.izredni.program <- - subset(program.predmeti.pred.izredni, program.studentov == program)[c( - paste0(vars.predmet$cont$pred, "_mean"), - "N_anket", - "ime.predmeta", - "leto", - "program.studentov", - "program.studentov.ime" - - )] - - - - # We want to split data according to year in order to be bale to write year as columns in latex tables - split.data.pred.by.year.izr <- - split(program.predmeti.pred.izredni.program, program.predmeti.pred.izredni.program$leto) %>% - lapply(., tidy.m) - # After the data is splitted we want to join (merge) different years accoridng to course name - data.pred.by.year <- split.data.pred.by.year.izr %>% reduce(full_join, by = "ime.predmeta") - # Number of all courses on program (we dont need this now but we might in the future) - - - agergati.PRED.izr <- subset(agergati.PRED, NACIN_STUDIJA %in% c("2","izredni")) - #Združimo trende in morebitne agregate za potrebe latex tabele - # Včasih imamo podatke samo za eno leto zaot to preverimo - if ("program.studentov.x" %in% colnames(data.pred.by.year)) { - - sk.stolpci <-c("program.studentov.x", "ime.predmeta") - } else { - sk.stolpci <- c("program.studentov", "ime.predmeta") - } - trAgPred <- - suppressWarnings(merge( - data.pred.by.year, - agergati.PRED.izr, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - - # Podatki, ki jih potrebujemo v latex tabeli - trAgPred <- - trAgPred[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgPred))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgPred) <- make.unique(trAgPred$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgPred$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgPred <- agreg.prog(trAgPred, dtLeto = program.predmeti.pred.izredni.program) - # Final data for latex table - trAgPred <- trAgPred[grepl("SKUPAJ|stolpec|LETA", colnames(trAgPred))] - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgPred , - imetabele = "Povprečja za agregirane - ocene sedmih komponent \\textbf{predmeta} - (anketa PRED izpitom)", - dtLeto = program.predmeti.pred.izredni.program - ) - program.predmeti.pred.izredni.program.tex <- t.tex - - } else { # If there is no data for program, in PDF report we will say that there was no grades for ANKETA PRED izredni studij - program.predmeti.pred.izredni.program.tex <- "Za anketo PRED izpitom ni ocen." - } - # ------------------------------------ //OCENE PREDMETOV (ANKETA PRED IZPITOM: IZREDNI ŠTUDIj)// -----------------------------------# - - - - #---------------------------------------- OCENE PREDMETOV (ANKETA PO IZPITU: REDNI ŠTUDIj) ----------------------------------------# - # ANKETA PO IZPITU VSEBUJE TRI TABELE: KOPONENTE ZA ANEKTO PO IZPITU, OCENE UTREZNOSTI KT TOČK IN OCENE KOMPETENC!!! - - # Subset data according to program ID, nacin studija (1 = izredni) and data (anketa po) - program.predmeti.po.redni <- - subset( - trend.prog.po, - program.studentov == program & - c(NACIN_STUDIJA == "1" | NACIN_STUDIJA == "redni") & N_anket_po_izpitu >0 - ) - # Only if there are data for "anket po izpitu redni studij" - if (nrow(program.predmeti.po.redni) > 0) { - # Select the columns that will be added into latex tables - program.predmeti.po.redni.program <- - subset( - program.predmeti.po.redni, - program.studentov == program - )[c( - "N_anket_po_izpitu", - paste0(vars.predmet$cont$po[-1], "_mean"), - "ime.predmeta", - "leto", - "program.studentov" - )] - - - program.predmeti.po.redni.program$N_anket <- program.predmeti.po.redni.program$N_anket_po_izpitu - program.predmeti.po.redni.program$N_anket_po_izpitu <- NULL - - - # We want to split data according to year in order to be bale to write year as columns in latex tables - split.data.po.by.year <- - split(program.predmeti.po.redni.program, program.predmeti.po.redni.program$leto) %>% - lapply(., tidy.m) - # After the data is splitted we want to join (merge) different years accoridng to course name - data.pred.by.year <- split.data.po.by.year %>% reduce(full_join, by = "ime.predmeta") - # Number of all courses on program (we dont need this now but we might in the future) - - # Agregati le za predmete rednega študija - if ("program.studentov.x" %in% colnames(data.pred.by.year)) { - sk.stolpci <- c("program.studentov.x", "ime.predmeta") - } else { - sk.stolpci <- c("program.studentov", "ime.predmeta") - } - agergati.PO.redni <- subset(agregati.PO, NACIN_STUDIJA %in% c("1","redni")) - #Združimo trende in morebitne agregate za otrebe latex tabele - trAgPO <- - suppressWarnings(merge( - data.pred.by.year, - agergati.PO.redni, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - - # Podatki, ki jih potrebujemo v latex tabeli - trAgPO <- - trAgPO[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgPO))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgPO) <- make.unique(trAgPO$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgPO$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgPO <- agreg.prog(trAgPO, dtLeto = program.predmeti.po.redni.program) - # Final data for latex table - trAgPO <- trAgPO[grepl("SKUPAJ|stolpec|LETA", colnames(trAgPO))] - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgPO , - imetabele = "Povprečja za agregirane ocene treh - komponent \\textbf{predmeta} (anketa PO izpitu)", - dtLeto = program.predmeti.po.redni.program - ) - program.predmeti.po.redni.program.skupaj.tex <- t.tex - - - - # USZREZNOST KT--------------------------------------------------------------------------------------------- - # get data for kretitne tocke and do the same steps as in case of ANKETA PO - # Združim s s skupnim povprečjem (colmeans) - data.po.by.year.krediti <- program.predmeti.po.redni[c("N_anket_po_izpitu", - "predmet.ocena.krediti_mean", - "ime.predmeta", - "leto", - "program.studentov")] - - data.po.by.year.krediti$N_anket <- data.po.by.year.krediti$N_anket_po_izpitu - data.po.by.year.krediti$N_anket_po_izpitu <- NULL - # Split data according to year - split.data.KT.by.year <- split(data.po.by.year.krediti, data.po.by.year.krediti$leto) %>% - lapply(., function(x) tidy.m(x, KT = TRUE)) - # Merge splited datas by coure name - data.KT.by.year <- split.data.KT.by.year %>% reduce(full_join, by = "ime.predmeta") - # Number of courses (do not need this right now) - - - - - agergati.KT.redni <- subset(agregati.KT, NACIN_STUDIJA %in% c("1","redni")) - #Združimo trende in morebitne agregate za otrebe latex tabele - trAgKT <- - suppressWarnings(merge( - data.KT.by.year, - agergati.KT.redni, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - - # Podatki, ki jih potrebujemo v latex tabeli - trAgKT <- - trAgKT[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgKT))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgKT) <- make.unique(trAgKT$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgKT$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgKT <- agreg.prog(trAgKT, dtLeto = program.predmeti.po.redni.program) - # Final data for latex table - trAgKT <- trAgKT[grepl("SKUPAJ|stolpec|LETA", colnames(trAgKT))] - # Stolpce zamenjamo z ustreznim študijskim letom - # colnames(trAgKT)[1:length(unique(program.predmeti.po.redni.program$leto))] <- - # gsub("_", "/", gsub("20", "", unique(program.predmeti.po.redni.program$leto))) - # - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - # UPDATE 2.11.2019: Po novem dodamo še opombo pod tabelo - # gled ebarvanja kreditnih točk - t.tex <- tabelaProg( - trAgKT , - imetabele = "Ocena ustreznosti \\textbf{števila porabljenih ur} (anketa PO izpitu)", - dtLeto = program.predmeti.po.redni.program, - agregatNote = TRUE - ) - program.predmeti.po.redni.program.krediti.tex <- t.tex - - - - # KOMPETENCE----------------------------------------------------------------------------------------------------- - # We also need table for KOMPETENCE - data.po.by.year.kompetence <- - program.predmeti.po.redni[c("N_anket_po_izpitu", - "predmet.ocena.kompetence_mean", - "ime.predmeta", - "leto", - "program.studentov")] - - - data.po.by.year.kompetence$N_anket <- data.po.by.year.kompetence$N_anket_po_izpitu - data.po.by.year.kompetence$N_anket_po_izpitu <- NULL - # Split data according to year - split.data.komp.by.year <- split(data.po.by.year.kompetence, data.po.by.year.kompetence$leto) %>% - lapply(., tidy.m) - # Merge splited datas by coure name - data.komp.by.year <- split.data.komp.by.year %>% reduce(full_join, by = "ime.predmeta") - # Number of courses (do not need this right now) - #st.predmetov <- sum(!is.na(data.po.by.year$predmet.ocena.SKUPAJ.po.x)) - - - - - agergati.KOM.redni <- subset(agregati.KOM, NACIN_STUDIJA %in% c("1","redni")) - #Združimo trende in morebitne agregate za otrebe latex tabele - trAgKOM <- - suppressWarnings(merge( - data.komp.by.year, - agergati.KT.redni, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - - # Podatki, ki jih potrebujemo v latex tabeli - trAgKOM <- - trAgKOM[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgKOM))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgKOM) <- make.unique(trAgKOM$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgKOM$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgKOM <- agreg.prog(trAgKOM, dtLeto = program.predmeti.po.redni.program) - # Final data for latex table - trAgKOM <- trAgKOM[grepl("SKUPAJ|stolpec|LETA", colnames(trAgKOM))] - # Stolpce zamenjamo z ustreznim študijskim letom - - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgKOM , - imetabele = "Ocena pridobljenih \\textbf{kompetenc} (anketa PO izpitu)", - dtLeto = program.predmeti.po.redni.program - ) - - - - # Latex table - program.predmeti.po.redni.program.kompetence.tex <- t.tex - #insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.predmeti.po.redni.program.skupaj.tex <- "Za anketo PO izpitu ni ocen." - program.predmeti.po.redni.program.kompetence.tex <- "Za kompetence ni ocen." - program.predmeti.po.redni.program.krediti.tex <- "Za kompetence ni ocen." - } - #--------------------------------------- //OCENE PREDMETOV (ANKETA PO IZPITU: REDNI ŠTUDIj)// -------------------------------------# - - - #--------------------------------------------- PROGRAM (ANKETA PO IZREDNI študij) -------------------------------------------------# - # The same procedure goes for IZREDNI ŠTUDIJ - program.predmeti.po.izredni <- subset( - trend.prog.po, - program.studentov == program & - c(NACIN_STUDIJA == "2" | NACIN_STUDIJA == "izredni") & N_anket_po_izpitu >0 - ) - if (nrow(program.predmeti.po.izredni) > 0) { - program.predmeti.po.izredni.program <- - subset( - program.predmeti.po.izredni, - program.studentov == program - )[c( - "N_anket_po_izpitu", - paste0(vars.predmet$cont$po[-1], "_mean"), - "ime.predmeta", - "leto", - "program.studentov" - )] - - - program.predmeti.po.izredni$N_anket <- program.predmeti.po.izredni$N_anket_po_izpitu - program.predmeti.po.izredni$N_anket_po_izpitu <- NULL - - # Check if the data are for single or multiple years in order to now if we need to split and combine data by years - - # We want to split data according to year in order to be bale to write year as columns in latex tables - split.data.po.by.year.izr <- - split(program.predmeti.po.izredni, program.predmeti.po.izredni$leto) %>% - lapply(., tidy.m) - # After the data is splitted we want to join (merge) different years accoridng to course name - data.pred.by.year <- split.data.po.by.year.izr %>% reduce(full_join, by = "ime.predmeta") - # Number of all courses on program (we dont need this now but we might in the future) - - # Agregati le za predmete rednega študija - if ("program.studentov.x" %in% colnames(data.pred.by.year)) { - sk.stolpci <- c("program.studentov.x", "ime.predmeta") - } else { - sk.stolpci <- c("program.studentov", "ime.predmeta") - } - - - agergati.PO.izredni <- subset(agregati.PO, NACIN_STUDIJA %in% c("2","izredni")) - #Združimo trende in morebitne agregate za otrebe latex tabele - trAgPO.izredni <- - suppressWarnings(merge( - data.pred.by.year, - agergati.PO.izredni, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - # Podatki, ki jih potrebujemo v latex tabeli - trAgPO.izredni <- - trAgPO.izredni[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgPO.izredni))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgPO.izredni) <- make.unique(trAgPO.izredni$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgPO.izredni$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgPO.izredni <- agreg.prog(trAgPO.izredni, dtLeto = program.predmeti.po.izredni.program) - # Final data for latex table - trAgPO.izredni <- trAgPO.izredni[grepl("SKUPAJ|stolpec|LETA", colnames(trAgPO.izredni))] - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgPO.izredni , - imetabele = "Povprečja za agregirane ocene treh - komponent \\textbf{predmeta} (anketa PO izpitu)", - dtLeto = program.predmeti.po.izredni.program - ) - program.predmeti.po.izredni.program.skupaj.tex <- t.tex - - - - - # USZREZNOST KT---------------------------------------------------------------------------- - data.po.by.year.krediti.izredni <- program.predmeti.po.izredni[c("N_anket", - "predmet.ocena.krediti_mean", - "ime.predmeta", - "leto", - "program.studentov")] - - # Split data according to year - split.data.KT.by.year.izr <- split(data.po.by.year.krediti.izredni, data.po.by.year.krediti.izredni$leto) %>% - lapply(., function(x) tidy.m(x, KT = TRUE)) - # Merge splited datas by coure name - data.KT.by.year <- split.data.KT.by.year.izr %>% reduce(full_join, by = "ime.predmeta") - # Number of courses (do not need this right now) - - - - - agergati.KT.izredni <- subset(agregati.KT, NACIN_STUDIJA %in% c("2","izredni")) - #Združimo trende in morebitne agregate za otrebe latex tabele - trAgKT <- - suppressWarnings(merge( - data.KT.by.year, - agergati.KT.izredni, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - - # Podatki, ki jih potrebujemo v latex tabeli - trAgKT <- - trAgKT[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgKT))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgKT) <- make.unique(trAgKT$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgKT$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgKT <- agreg.prog(trAgKT, dtLeto = program.predmeti.po.izredni.program) - # Final data for latex table - trAgKT <- trAgKT[grepl("SKUPAJ|stolpec|LETA", colnames(trAgKT))] - # Stolpce zamenjamo z ustreznim študijskim letom - # colnames(trAgKT)[1:length(unique(program.predmeti.po.izredni.program$leto))] <- - # gsub("_", "/", gsub("20", "", unique(program.predmeti.po.izredni.program$leto))) - # - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgKT , - imetabele = "Ocena ustreznosti \\textbf{števila porabljenih ur} (anketa PO izpitu)", - dtLeto = program.predmeti.po.izredni.program - ) - program.predmeti.po.izredni.program.krediti.tex <- t.tex - - - # KOMPETENCE-------------------------------------------------------------------------------------- - data.po.by.year.kompetence.izredni <- - program.predmeti.po.izredni[c("N_anket", - "predmet.ocena.kompetence_mean", - "ime.predmeta", - "leto", - "program.studentov")] - - - # Split data according to year - split.data.komp.by.year.izr <- split(data.po.by.year.kompetence.izredni, data.po.by.year.kompetence.izredni$leto) %>% - lapply(., tidy.m) - # Merge splited datas by coure name - data.komp.by.year <- split.data.komp.by.year.izr %>% reduce(full_join, by = "ime.predmeta") - # Number of courses (do not need this right now) - #st.predmetov <- sum(!is.na(data.po.by.year$predmet.ocena.SKUPAJ.po.x)) - - - - - agergati.KOM.izredni <- subset(agregati.KOM, NACIN_STUDIJA %in% c("2","izredni")) - #Združimo trende in morebitne agregate za otrebe latex tabele - trAgKOM <- - suppressWarnings(merge( - data.komp.by.year, - agergati.KOM.izredni, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - - - # Podatki, ki jih potrebujemo v latex tabeli - trAgKOM <- - trAgKOM[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgKOM))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgKOM) <- make.unique(trAgKOM$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgKOM$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgKOM <- agreg.prog(trAgKOM, dtLeto = program.predmeti.po.izredni.program) - # Final data for latex table - trAgKOM <- trAgKOM[grepl("SKUPAJ|stolpec|LETA", colnames(trAgKOM))] - # Stolpce zamenjamo z ustreznim študijskim letom - - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgKOM , - imetabele = "Ocena pridobljenih \\textbf{kompetenc} (anketa PO izpitu)", - dtLeto = program.predmeti.po.izredni.program - ) - - - - # Latex table - program.predmeti.po.izredni.program.kompetence.tex <- t.tex - - - } else { - program.predmeti.po.izredni.program.skupaj.tex <- "Za anketo PO izpitu ni ocen." - program.predmeti.po.izredni.program.kompetence.tex <- "Za kompetence ni ocen." - program.predmeti.po.izredni.program.krediti.tex <- "Za kompetence ni ocen." - } - #-------------------------------------- //PROGRAM (ANKETA PO IZREDNI študij)// ------------------------------------------------# - - - ##################### - # UPDATE 19.9.2019 # - ##################### - #------------------------------------- TABELA POVPREČIJ AGREGIRANIH KOMPONENT ------------------------------------# - # Po novem bomo za vsak oprogram zapisali tudi še eno tabele štirih kvazi-kompnent (PRED, PO, KT in KOMPETENCE) - # Preverimo ali podatki obstajajo - # Redni študij - - tidy.komp <- function(x, KT = FALSE) { - y <- colMeans(x[grepl("_mean", colnames(x))], na.rm = TRUE) %>% - mean(., na.rm = TRUE) - SKUPAJ <- data.frame(SKUPAJ = y) - SKUPAJ <- formatval(SKUPAJ, KTtrend = KT) - colnames(SKUPAJ) <- unique(x[,colnames(x)[colnames(x) == "leto"]]) - colnames(SKUPAJ) <- gsub("20", "", colnames(SKUPAJ)) - return(SKUPAJ) - } - - if (nrow(program.predmeti.pred.redni) > 0 & nrow(program.predmeti.po.redni) > 0) { - # Podatke ločimo glede na leto, da lahko zapišemo povprečja komponent - # Anketa Pred - kom.pred <- split.data.pred.by.year %>% - lapply(., tidy.komp) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.pred) <- "Sedem komponent (anketa PRED)" - - # Anketa PO - kom.po <- split.data.po.by.year %>% - lapply(., tidy.komp) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.po) <- "Tri komponente (anketa PO)" - - # Kreditne točke - kom.kt <- split.data.KT.by.year %>% - lapply(., function(x) tidy.komp(x, KT = TRUE)) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.kt) <- "Število porabljenih ur (anketa PO)" - - # Kompetence - kom.komp <- split.data.komp.by.year %>% - lapply(., tidy.komp) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.komp) <- "Kompetence (anketa PO)" - - # Združimo podatke za potrebe latex tabele - #trend.komp <- do.call("rbind", list(kom.pred, kom.po, kom.kt, kom.komp)) - - # Združimo podatke za potrebe latex tabele - trend.komp <- do.call("bind_rows", list(kom.pred, kom.po, kom.kt, kom.komp)) - - trend.komp[is.na(trend.komp)] <- "--" - - rownames(trend.komp) <- - c( - "Sedem komponent (anketa PRED)", - "Tri komponente (anketa PO)", - "Število porabljenih ur (anketa PO)", - "Kompetence (anketa PO)" - ) - - - - trend.komp.tex <- tb.lat( - trend.komp, - tabname = "Povprečja ocen agregiranih komponent na nivoju predmetov", - "A{8cm}", - namen = "TRENDI" - ) - - } else { - trend.komp.tex <- NULL - } - # Izredni Študij - if (nrow(program.predmeti.pred.izredni) > 0 & nrow(program.predmeti.po.izredni) > 0) { - # Podatke ločimo glede na leto, da lahko zapišemo povprečja komponent - # Anketa Pred - kom.pred.iz <- split.data.pred.by.year.izr %>% - lapply(., tidy.komp) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.pred.iz) <- "Sedem komponent (anketa PRED)" - - # Anketa PO - kom.po.iz <- split.data.po.by.year.izr %>% - lapply(., tidy.komp) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.po.iz) <- "Tri komponente (anketa PO)" - - # Kreditne točke - kom.kt.iz <- split.data.KT.by.year.izr %>% - lapply(., function(x) tidy.komp(x, KT = TRUE)) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.kt.iz) <- "Število porabljenih ur (anketa PO)" - - # Kompetence - kom.komp.iz <- split.data.komp.by.year.izr %>% - lapply(., tidy.komp) %>% - bind_cols(.) - # Add rownames for Latex table purposes - rownames(kom.komp.iz) <- "Kompetence (anketa PO)" - - # Združimo podatke za potrebe latex tabele - trend.komp.iz <- do.call("bind_rows", list(kom.pred.iz, kom.po.iz, kom.kt.iz, kom.komp.iz)) - - trend.komp.iz[is.na(trend.komp.iz)] <- "--" - rownames(trend.komp.iz) <- - c( - "Sedem komponent (anketa PRED)", - "Tri komponente (anketa PO)", - "Število porabljenih ur (anketa PO)", - "Kompetence (anketa PO)" - ) - - - trend.komp.iz.tex <- tb.lat( - trend.komp.iz, - tabname = "Povprečja ocen agregiranih komponent na nivoju predmetov", - "A{8cm}", - namen = "TRENDI" - ) - - } else { - trend.komp.iz.tex <- NULL - } - #----------------------------------- //TABELA POVPREČIJ AGREGIRANIH KOMPONENT// ----------------------------------# - - #------------------------------------ DODAMO ŠE TRENDE ZA ŠTUDIJSKE PRAKSE ---------------------------------------# - #UPDATE 19.9.2019 - # ANKETA PO IZPITU VSEBUJE TRI TABELE: KOPONENTE ZA ANEKTO PO IZPITU, OCENE UTREZNOSTI KT TOČK IN OCENE KOMPETENC!!! - - # Subset data according to program ID, nacin studija (1 = izredni) and data (anketa po) - program.predmeti.praksa <- - subset(trend.prog.praksa, program.studentov == program & N_anket_po_izpitu >0) - # Only if there are data for "anket po izpitu redni studij" - if (nrow(program.predmeti.praksa) > 0) { - # Select the columns that will be added into latex tables - program.predmeti.praksa.program <- - subset( - program.predmeti.praksa, - program.studentov == program - )[c( - "N_anket_po_izpitu", - paste0(vars.predmet$cont$praksa, "_mean"), - "ime.predmeta", - "leto", - "program.studentov" - )] - - - program.predmeti.praksa.program$N_anket <- program.predmeti.praksa.program$N_anket_po_izpitu - program.predmeti.praksa.program$N_anket_po_izpitu <- NULL - - - # We want to split data according to year in order to be bale to write year as columns in latex tables - split.data.po.by.year <- - split(program.predmeti.praksa.program, program.predmeti.praksa.program$leto) %>% - lapply(., tidy.m) - # After the data is splitted we want to join (merge) different years accoridng to course name - data.pred.by.year <- split.data.po.by.year %>% reduce(full_join, by = "ime.predmeta") - # Number of all courses on program (we dont need this now but we might in the future) - - # Agregati le za predmete rednega študija - if ("program.studentov.x" %in% colnames(data.pred.by.year)) { - sk.stolpci <- c("program.studentov.x", "ime.predmeta") - } else { - sk.stolpci <- c("program.studentov", "ime.predmeta") - } - agergati.praksa <- agregati.PRAKSA - #Združimo trende in morebitne agregate za otrebe latex tabele - if(!is.null(agregati.PRAKSA)) { - trAgpraksa <- - suppressWarnings(merge( - data.pred.by.year, - agergati.praksa, - by.x = sk.stolpci, - by.y = c("program.studentov","ime.predmeta"), - all.x = TRUE - )) - } else { - trAgpraksa <- data.pred.by.year - } - - # Podatki, ki jih potrebujemo v latex tabeli - trAgpraksa <- - trAgpraksa[grepl("ime.predmeta|N_anket|SKUPAJ|LETA|stolpec", colnames(trAgpraksa))] - # Imena vrstic v latex tabeli bodo imena predmetov - rownames(trAgpraksa) <- make.unique(trAgpraksa$ime.predmeta) - # Ta potrebe latex tabele to odstranimo saj stolpca - # z imeni predmetov več ne potrebujemo - trAgpraksa$ime.predmeta <- NULL - # Preverimo ali se katero leto določen predmet na programu - # ni izvajal in to označimo z "--" - trAgpraksa <- agreg.prog(trAgpraksa, dtLeto = program.predmeti.praksa.program) - # Final data for latex table - trAgpraksa <- trAgpraksa[grepl("SKUPAJ|stolpec|LETA", colnames(trAgpraksa))] - - # V primeru agregatov dodamo še en ali dva stolpca ter generiramo - # latex tabelo - t.tex <- tabelaProg( - trAgpraksa , - imetabele = "Povprečja ocen agregiranih komponent na nivoju \\textbf{študijske prakse}", - dtLeto = program.predmeti.praksa.program - ) - program.predmeti.praksa.tex <- t.tex - - } else { - program.predmeti.praksa.tex <- NULL - } - - - - - #---------------------------------- //DODAMO ŠE TRENDE ZA ŠTUDIJSKE PRAKSE// -------------------------------------# - - - #--------------------------------------------- START COMPILING DATA -----------------------------------------------------------# - # In report we want to seperate I and II stopnja - # Check if the program is I stopnja (dodiplomski studij) and write - # Update 19.9.2019 - # Po novem bomo v razdelili eno poročilo na dve, in sicer - #' @PRVI DEL bodo tabele trendov in agregatov, ki gredo v poročilo za - # posamezni program - #' @DRUGI DEL pa bodo poročila na nivoju UL, kjer bodo shranjene - # Samo tabele agregatov komponent torej TABELA POVPREČIJ AGREGIRANIH KOMPONENT - - #------------------------------------- PRVI DEL --------------------------------------# - if (stopnja == 1) { - programi.tex.I[[as.character(program)]] <- c( - "\\section{Redni študij: Anketa PRED izpitom}", - program.predmeti.pred.redni.program.tex, "\\newpage", - "\\section{Redni študij: Anketa PO izpitu}", - program.predmeti.po.redni.program.skupaj.tex, "\\newpage", - program.predmeti.po.redni.program.krediti.tex, "\\newpage", - program.predmeti.po.redni.program.kompetence.tex, "\\newpage", - "\\section{Redni študij: Trendi povprečnih ocen predmetov}", - trend.komp.tex, - program.predmeti.praksa.tex, - "\\newpage", - # Če ni dovolj ocen >= 4, ne prikazujemo podatkov za izredni študij zaradi obsega PDF - if (any(program.predmeti.pred.izredni.program.tex != "Za anketo PRED izpitom ni ocen.")) {c( - "\\section{Izredni študij: Anketa PRED izpitom}", - program.predmeti.pred.izredni.program.tex, "\\newpage", - "\\section{Izredni študij: Anketa PO izpitu}", - program.predmeti.po.izredni.program.skupaj.tex, "\\newpage", - program.predmeti.po.izredni.program.kompetence.tex, "\\newpage", - program.predmeti.po.izredni.program.krediti.tex, "\\newpage", - "\\section{Izredni študij: Povprečja povprečnih ocen komponent predmetov}", - trend.komp.iz.tex, - "\\newpage")}) - - # Check if the program is II stopnja (podiplomski studij) and write - } else if (stopnja == 2) { - programi.tex.II[[as.character(program)]] <- c( - "\\section{Redni študij: Anketa PRED izpitom}", - program.predmeti.pred.redni.program.tex, "\\newpage", - "\\section{Redni študij: Anketa PO izpitu}", - program.predmeti.po.redni.program.skupaj.tex, "\\newpage", - program.predmeti.po.redni.program.krediti.tex, "\\newpage", - program.predmeti.po.redni.program.kompetence.tex, "\\newpage", - "\\section{Redni študij: Povprečja povprečnih ocen komponent predmetov}", - trend.komp.tex, - program.predmeti.praksa.tex, - "\\newpage", - # Če ni dovolj ocen >= 4, ne prikazujemo podatkov za izredni študij zaradi obsega PDF - if (any(program.predmeti.pred.izredni.program.tex != "Za anketo PRED izpitom ni ocen.")) {c( - "\\section{Izredni študij: Anketa PRED izpitom}", - program.predmeti.pred.izredni.program.tex, "\\newpage", - "\\section{Izredni študij: Anketa PO izpitu}", - program.predmeti.po.izredni.program.skupaj.tex, "\\newpage", - program.predmeti.po.izredni.program.kompetence.tex, "\\newpage", - program.predmeti.po.izredni.program.krediti.tex, "\\newpage", - "\\section{Izredni študij: Povprečja povprečnih ocen komponent predmetov}", - trend.komp.iz.tex, - "\\newpage")}) - - # If there are no data for proggram - } else if (stopnja == "Ni ocen") { - programi.tex.I <- "Za program ni ocen" - programi.tex.II <- "Za program ni ocen" - } - #----------------------------------- //PRVI DEL// ------------------------------------# - - - #------------------------------------ DRUGI DEL --------------------------------------# - if (stopnja == 1) { - komponente.tex.I[[as.character(program)]] <- c( - "\\section{Redni študij: Povprečja povprečnih ocen komponent predmetov}", - trend.komp.tex, - if (any(program.predmeti.pred.izredni.program.tex == "Za anketo PRED izpitom ni ocen.")){ - "\\newpage"}, - # Če ni dovolj ocen >= 4, ne prikazujemo podatkov za izredni študij zaradi obsega PDF - if (any(program.predmeti.pred.izredni.program.tex != "Za anketo PRED izpitom ni ocen.")) {c( - "\\section{Izredni študij: Povprečja povprečnih ocen komponent predmetov}", - trend.komp.iz.tex,"\\newpage")}) - - # Check if the program is II stopnja (podiplomski studij) and write - } else if (stopnja == 2) { - komponente.tex.II[[as.character(program)]] <- c( - "\\section{Redni študij: Povprečja povprečnih ocen komponent predmetov}", - trend.komp.tex, - if (any(program.predmeti.pred.izredni.program.tex == "Za anketo PRED izpitom ni ocen.")){ - "\\newpage"}, - # Če ni dovolj ocen >= 4, ne prikazujemo podatkov za izredni študij zaradi obsega PDF - if (any(program.predmeti.pred.izredni.program.tex != "Za anketo PRED izpitom ni ocen.")) {c( - "\\section{Izredni študij: Povprečja povprečnih ocen komponent predmetov}", - trend.komp.iz.tex, "\\newpage")}) - - # If there are no data for proggram - } else if (stopnja == "Ni ocen") { - komponente.tex.I <- "Za program ni ocen" - komponente.tex.II <- "Za program ni ocen" - } - - #---------------------------------- //DRUGI DEL// ------------------------------------# - - -} - -### -# UPDATE: PO NOVEM BO TO POROČILO ZA UL, KI BO VSEBOVALO SAMO AGREGIRANE OCENE KOMPONENT (TOREJ ENA TABELA ZA PROGRAM ČLANICE) -##### -#--------------------------------------------------------- COMPILING PDF --------------------------------------------------# -#-------------------- SET WORKING DIREKTORY -----------------------# -# # Check which PC we are working from: WORK OR HOME -# fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVALVACIJE 2018_2019 PREDELAVA/AVGUST UPDATE KODE/Test Nove kode/FDV") -# -# if (!dir.exists(fpath)){ -# output_dir <- "E:/Work/Vasja Vehovar/EVALVACIJE 2018_2019 PREDELAVA/AVGUST UPDATE KODE/Test Nove kode/FDV" -# setwd(output_dir) -# } else { -# setwd(fpath) -# } -#------------------ //SET WORKING DIREKTORY// ---------------------# -# # Dodamo leto trendov -# if (fakulteta %in% c("FDV", "FGG")) { -# leto <- "Sumarna analiza predmetov za 2014/15 - 2018/19" -# } else { -# leto <- "Sumarna analiza predmetov za 2015/16 - 2018/19" -# } -# -# # Sestavljanje LATEX DOKUMENTA (glava, noga) -# tex.glava <- scan("Evalvacija/latexkosi/a-glava-programi-UL.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -# #tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -# tex.glava <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -# tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(leto), x=tex.glava) -# tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -# tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -# Rdirektorij <- getwd() -# -# # PDF structure -# tex.program <- c(tex.glava, -# "\\chapter{Dodiplomski študij}", -# komponente.tex.I, -# "\\chapter{Podiplomski študij}", -# komponente.tex.II, -# tex.noga) -# # Write -# cat(unlist(tex.program), file=paste("Evalvacija/results/Studijski programi UL.tex", sep=""), sep="\n") -# setwd(paste(Rdirektorij, "Evalvacija/results", sep="/")) -# # Create PDF grom tex. file -# tools::texi2pdf(file=paste("Studijski programi UL.tex", sep=""), quiet=TRUE, clean=TRUE) -# setwd(Rdirektorij) -#------------------------------------------------------- //COMPILING PDF// ------------------------------------------------# - - -#---------------------------------------------------- SAVE DATA TO EXCEL --------------------------------------------------# - -# POZOR!! Manjkajo podatki za izredni študij, ker še ni dogovorjeno kako bomo prikazali podatke za izredni študij, gre za -# to, da če v to poročilo damo pdoatke za izredni študij ki jih ni, moramo vseeno narediti poglavje in napisati da ni ocen -# Kar pa znantno doprinese k obsegu PDF porocila. \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/010_1_PDF_agregati_trendi_prog.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/010_1_PDF_agregati_trendi_prog.R deleted file mode 100644 index 45df38feb..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/010_1_PDF_agregati_trendi_prog.R +++ /dev/null @@ -1,1311 +0,0 @@ -# PREVERI!!!!!!!!!!! -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - - -# IMPORTANT !!! -# UPDATE: Po novem bomo v poro?ilo Programov zapisali trende za vsak program posebej -# Update 2.9.: Po novem Vasja ni ve? ziher, ?e je to pametno :) -source("Evalvacija/R/010_0_agregati_trendi_prog_priprava.R", encoding = "UTF-8") - - - -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - - - -# Del, ki ga potrebuje Peter, da generira ustrezno porocilo za posamezno fakulteto na strežniku -# Tega ne poganjamo -# params <- commandArgs(trailingOnly=TRUE) -# ID <- params[1] -# # //1KA strežnik// # -# PREVERI!!!!!!!!!!! - - - -# # run first -# source("Evalvacija/R/koda.r") -formatProgImena <- function(imena, rankby) { - imena <- gsub(" (izredna izvedba)", "", imena, fixed=TRUE) - ranking <- rank(-suppressWarnings(rankby), ties="first", na.last="keep") - ranking[is.na(ranking)] <- "" - imena <- paste( ranking, imena) - imena <- paste( imena) - return(imena) -} - -############### POMEMBNO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ############### -# 27. 9. 2018: Po novem boko k poročilu programov dodali tudi trende za program, -# ki oa je bilo predhodno samostojno poročili. Zato moramo preden poženemo TO -# SKRIPTO pognati skripto "PDF_trendi_predmetov_po_programih_clanica_excel.r", ki se nahaja: -# C:\MIHA DELO\FDV PROJEKT EVALVACIJE UL\EVALVACIJE 2017_2018\FDV Trendi studijskih programov -# po predmetih -############################################################################################# - - - -#------------------------------ logical constants ------------------------------# -sortByAverage <- TRUE # if true sort values in tables by average, else by name -sortbykrediti <- TRUE # if true sort by krediti (izbor.predmeti.po.redni.krediti) -#---------------------------- //logical constants// ----------------------------# - -# Start with making latex files -programi.tex <- NULL # Na koncu bomo v vektor zapisali vrednosti dolocenega programa -#d <- 1000555 - -######################################### -# PREPARING DATA FOR EACH STUDENT PROGRAM -######################################### -for (program in programi$student.program.sifra) { - - # Name of the program - ime.programa <- Hmisc::latexTranslate(programi[programi$student.program.sifra == program, "student.program.ime"]) - # Level of program 1 = dodiplomski, 2 = podpiplomski - programi.imena.stopnja <- programi.imena[programi.imena$ID==program,c("ID","Stopnja","Naziv" )] - - - - #----------------------------------- OCENE PREDMETOV (ANKETA PRED IN ANKETA PO) --------------------------------# - - #------------------------- COURSE AVERAGES ----------------------# - stopnja <- NULL - # Povprecja po programu (samo tam, kjer so vsaj 4 odgovori) >= minEnot - povprecja.predmeti <- povprecja.predmeti[povprecja.predmeti$ime.predmeta != "NA (izredna izvedba)",] - povprecja.predmeti <- povprecja.predmeti[!is.na(povprecja.predmeti$ime.predmeta),] - program.predmeti <- povprecja.predmeti[povprecja.predmeti[paste0("program_studenta_", program)] >= 1, ] - # Update 19.9.2019: Po novem v poročilu za program ne prikazujemo Praks, saj so prakse - program.pred <- subset(program.predmeti, N_anket >= 4) - - if (nrow(program.predmeti) > 0) { - stopnja <- names(sort(table(program.predmeti$STOPNJA), decreasing=TRUE))[1] - - - #---------------- PROGRAMI (ocene predmetov ANKETA PRED, ANKET PO IN REDNI TER IZREDNI študij) -----------------# - - # Imena vrstic v latex tabeli: imena predmetov na programu - rownames(program.predmeti) <- make.unique(povprecja.predmeti[rownames(program.predmeti), "ime.predmeta"]) - - # Ocene komponent predmetov rednega študija ANKETA PRED IZPITOM - program.predmeti.pred.redni <- - program.predmeti[c(program.predmeti$NACIN_STUDIJA == "1" & - program.predmeti$N_anket >= 4), - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - # Ocene komponent predmetov izrednega študija ANKETA PRED IZPITOM - program.predmeti.pred.izredni <- - program.predmeti[c(program.predmeti$NACIN_STUDIJA == "2" & - program.predmeti$N_anket >= 4), - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - - #------------------------- PROGRAM (ANKETA PRED REDNI študij) ---------------------------# - - if (nrow(program.predmeti.pred.redni) > 0) { - - program.predmeti.pred.redni.program <- - subset( - povprecja.predmeti.programi, - program.studentov == program & - NACIN_STUDIJA == "1" & - N_anket > 0 - )[c("N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ")] - - st.predmetov <- - sum(!is.na(program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ)) - - program.predmeti.pred.redni.program <- - program.predmeti.pred.redni.program[order( - program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ, - program.predmeti.pred.redni.program$N_anket, - decreasing = TRUE - ), ] - - - if (any(is.na(program.predmeti.pred.redni.program)) & - any((!is.na(program.predmeti.pred.redni.program)) == "--")) { - opomba <- paste0( - ". Podatek ni prikazan zaradi majhnega števila enot. - \\newline - Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(program.predmeti.pred.redni.program))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - - # Imena vrstic - rownames(program.predmeti.pred.redni.program) <- make.unique(formatProgImena(povprecja.predmeti.programi[rownames(program.predmeti.pred.redni.program), "ime.predmeta"], - program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ)) - # Združim s s skupnim povprecjem (colmeans) - program.predmeti.pred.redni.program <- - rbind( - program.predmeti.pred.redni.program, - colMeans(program.predmeti.pred.redni.program, na.rm = TRUE), - unlist(c("--", F.avg.pred)) - ) - # Barvanje in zaokrocevanje - program.predmeti.pred.redni.program <- formatval(program.predmeti.pred.redni.program) - # Dodamo imena vrstic - rownames(program.predmeti.pred.redni.program)[(nrow(program.predmeti.pred.redni.program) - - 1):nrow(program.predmeti.pred.redni.program)] <- - c( - paste0( - "\\hline \\textbf{Povprečje programa (", - st.predmetov, - " predmetov)}" - ), - paste0( - "\\hline \\textbf{Povprečje ", - fakulteta, - " (", - kvantili.predmeti.st.pred, - " predmetov)}" - ) - ) - # Dodamo imena stolpcev - colnames(program.predmeti.pred.redni.program) <- - latex.rotate(c( - "št. odgovorov", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - "\\textbf{Skupaj}" - )) - # Generiranje latex tabele - program.predmeti.pred.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.redni.program, - caption = "Povprečja \\textbf{predmetov}, - sortirana po - \\textbf{Skupaj}", - rowlabel = "", - file = "", - where = "H", - multicol = FALSE, - longtable = TRUE, - lines.page = 1000, - col.just = c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just = "A{11cm}", - insert.bottom = paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.predmeti.pred.redni.program.tex <- "Za anketo PRED izpitom ni ocen." - } - #---------------------------- //PROGRAM (ANKETA PRED REDNI študij)// --------------------------# - - - #--------------------------- PROGRAM (ANKETA PRED IZREDNi študij) -----------------------------# - if (nrow(program.predmeti.pred.izredni) > 0) { - - program.predmeti.pred.izredni.program <- - subset( - povprecja.predmeti.programi, - program.studentov == program & - NACIN_STUDIJA == "2" & N_anket > 0 - )[c("N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ")] - - st.predmetov <- sum(!is.na(program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ)) - program.predmeti.pred.izredni.program <- - program.predmeti.pred.izredni.program[order( - program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ, - program.predmeti.pred.izredni.program$N_anket, - decreasing = TRUE - ), ] - - - - if (any(is.na(program.predmeti.pred.izredni.program)) & - any((!is.na(program.predmeti.pred.izredni.program)) == "--")) { - opomba <- paste0( - ". Podatek ni prikazan zaradi majhnega števila enot. - \\newline - Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(program.predmeti.pred.izredni.program))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - - - - rownames(program.predmeti.pred.izredni.program) <- - formatProgImena( - povprecja.predmeti.programi[rownames(program.predmeti.pred.izredni.program), "ime.predmeta"], - program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ - ) - - program.predmeti.pred.izredni.program <- - rbind( - program.predmeti.pred.izredni.program, - colMeans(program.predmeti.pred.izredni.program, na.rm = TRUE), - unlist(c("--", F.avg.pred)) - ) - - program.predmeti.pred.izredni.program <- formatval(program.predmeti.pred.izredni.program - ) - rownames(program.predmeti.pred.izredni.program)[(nrow(program.predmeti.pred.izredni.program) - - 1):nrow(program.predmeti.pred.izredni.program)] <- - c( - paste0( - "\\hline \\textbf{Povprečje programa (", - st.predmetov, - " predmetov)}" - ), - paste0( - "\\hline \\textbf{Povprečje ", - fakulteta, - " (", - kvantili.predmeti.st.pred, - " predmetov)}" - ) - ) - colnames(program.predmeti.pred.izredni.program) <- - latex.rotate(c( - "št. odgovorov", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - "\\textbf{Skupaj}" - )) - - program.predmeti.pred.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.izredni.program, - caption="Povprečja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{11cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - } else { - program.predmeti.pred.izredni.program.tex <- "Za anketo PRED izpitom (izredni študij) ni ocen." - } - #--------------------------- //PROGRAM (ANKETA PRED IZREDNi študij)// -----------------------------# - - } else { - program.predmeti.pred.redni.program.tex <- "Za anketo PRED izpitom ni ocen." - program.predmeti.pred.izredni.program.tex <- "Za anketo PRED izpitom (izredni študij) ni ocen." - } - - #-------------------------------- PROGRAM (ANKETA PO REDNI študij) --------------------------------# - - - # Povprecja po programu (samo tam, kjer so vsaj 4 odgovori) >= minEnot - - program.po <- povprecja.predmeti.po[povprecja.predmeti.po[paste0("program_studenta_", program)] >= 1, ] - program.po <- subset(program.po, N_anket >= 4) - - if (nrow(program.po) > 0) { - stopnja <- names(sort(table(program.po$STOPNJA), decreasing=TRUE))[1] - - - # Ocene komponent predmetov rednega študija ANKETA PO IZPITU - program.predmeti.po.redni <- - program.po[c(program.po$NACIN_STUDIJA == "1" & - program.po$N_anket >= 4), - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - # Ocene komponent predmetov izrednega študija ANKETA PO IZPITU - program.predmeti.po.izredni <- - program.po[c(program.po$NACIN_STUDIJA == "2" & - program.po$N_anket >= 4), - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - - - - - program.predmeti.po.redni.program <- - subset( - povprecja.predmeti.programi.PO, - program.studentov == program & NACIN_STUDIJA == "1" & - (N_anket > 0) - )[c( - "N_anket", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - - if (nrow(program.predmeti.po.redni.program) > 0) { - - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ)) - program.predmeti.po.redni.program <- program.predmeti.po.redni.program[order(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ, - program.predmeti.po.redni.program$N_anket, decreasing=TRUE),] - - - - - if (any(is.na(program.predmeti.po.redni.program)) & - any((!is.na(program.predmeti.po.redni.program)) == "--")) { - opomba <- paste0( - ". Podatek ni prikazan zaradi majhnega števila enot. - \\newline - Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(program.predmeti.po.redni.program))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - - rownames(program.predmeti.po.redni.program) <- formatProgImena(make.unique(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.redni.program), "ime.predmeta"]), program.predmeti.po.redni.program$predmet.ocena.SKUPAJ) - - program.predmeti.po.redni.program <- rbind(program.predmeti.po.redni.program, colMeans(program.predmeti.po.redni.program, na.rm=TRUE), - unlist(c("--", F.avg.po.tab))) - - - program.predmeti.po.redni.program <- formatval(program.predmeti.po.redni.program, KT = TRUE) - - rownames(program.predmeti.po.redni.program)[(nrow(program.predmeti.po.redni.program)-1):nrow(program.predmeti.po.redni.program)] <- - c(paste0("\\hline \\textbf{Povprečje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povprečje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - - colnames(program.predmeti.po.redni.program) <- - latex.rotate(c( - "št. odgovorov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - as.character(vars.predmet$krediti$ime.kratko) - )) - - - program.predmeti.po.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program, - caption="Povprečja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - - - #------------------ SORTIRANJE PO USTREZNOSTI KREDITNIH TOcK -----------------# - - program.predmeti.po.redni.program.krediti <- - subset( - povprecja.predmeti.programi.PO, - program.studentov == program & NACIN_STUDIJA == "1" & - N_anket > 0 - )[c( - "N_anket", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.redni.program.krediti <- program.predmeti.po.redni.program.krediti[order(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean, program.predmeti.po.redni.program.krediti$N_anket, decreasing=TRUE),] - - - if (any(is.na(program.predmeti.po.redni.program.krediti)) & - any((!is.na(program.predmeti.po.redni.program.krediti)) == "--")) { - opomba <- paste0( - ". Podatek ni prikazan zaradi majhnega števila enot. - \\newline - Podatek je manj pomemben ali težko izračunljiv. - \\newline * {\\color{Orange}\\textbf{Oranžno}} so označena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdeče}} pa - {\\color{BrickRed}\\textbf{kritična}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}") - - } else if (any(is.na(program.predmeti.po.redni.program.krediti))) { - opomba <- paste0(". Podatek ni prikazan zaradi majhnega števila enot. - \\newline * {\\color{Orange}\\textbf{Oranžno}} so označena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdeče}} pa - {\\color{BrickRed}\\textbf{kritična}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})") - } else { - opomba <- NULL - } - - - - - if (any(is.na(program.predmeti.po.redni.program.krediti)) & - any((!is.na(program.predmeti.po.redni.program.krediti)) == "--")) { - opomba <- paste0( - ". Podatek ni prikazan zaradi majhnega števila enot. - \\newline - Podatek je manj pomemben ali težko izračunljiv. - \\newline * {\\color{Orange}\\textbf{Oranžno}} so označena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdeče}} pa - {\\color{BrickRed}\\textbf{kritična}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}") - - } else if (any(is.na(program.predmeti.po.redni.program.krediti))) { - opomba <- paste0(". Podatek ni prikazan zaradi majhnega števila enot. - \\newline * {\\color{Orange}\\textbf{Oranžno}} so označena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdeče}} pa - {\\color{BrickRed}\\textbf{kritična}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})") - } else { - opomba <- NULL - } - - - - - rownames(program.predmeti.po.redni.program.krediti) <- formatProgImena(make.unique(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.redni.program.krediti), "ime.predmeta"]), - program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean) - - program.predmeti.po.redni.program.krediti <- rbind(program.predmeti.po.redni.program.krediti, colMeans(program.predmeti.po.redni.program.krediti, na.rm=TRUE), - unlist(c("--", F.avg.po.tab))) - - - program.predmeti.po.redni.program.krediti <- formatval(program.predmeti.po.redni.program.krediti, KT = TRUE) - - - rownames(program.predmeti.po.redni.program.krediti)[(nrow(program.predmeti.po.redni.program.krediti)-1):nrow(program.predmeti.po.redni.program.krediti)] <- - c(paste0("\\hline \\textbf{Povprečje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povprečje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.redni.program.krediti) <- - latex.rotate(c( - "št. odgovorov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - as.character(vars.predmet$krediti$ime.kratko) - )) - - program.predmeti.po.redni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program.krediti, - caption="Povprečja \\textbf{predmetov}, - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - #------------------ //SORTIRANJE PO USTREZNOSTI KREDITNIH TOcK// -----------------# - - - } else { - program.predmeti.po.redni.program.tex <- "Za anketo PO izpitu ni ocen" - program.predmeti.po.redni.program.krediti.tex <- NULL - } - #-------------------------------- //PROGRAM (ANKETA PO REDNI študij)// --------------------------------# - - - - #-------------------------------- PROGRAM (ANKETA PO IZREDNI študij) ---------------------------------# - - program.predmeti.po.izredni.program <- - subset( - povprecja.predmeti.programi.PO, - program.studentov == program & - NACIN_STUDIJA == "2" & - N_anket >= minEnot - )[c( - "N_anket", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - if (nrow(program.predmeti.po.izredni) > 0 & nrow(program.predmeti.po.izredni.program) > 0 & all(!is.nan(program.predmeti.po.izredni$predmet.ocena.SKUPAJ))) { - - - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ)) - program.predmeti.po.izredni.program <- program.predmeti.po.izredni.program[order(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ, program.predmeti.po.izredni.program$N_anket, decreasing=TRUE),] - - - - - if (any(is.na(program.predmeti.po.izredni.program)) & - any((!is.na(program.predmeti.po.izredni.program)) == "--")) { - opomba <- paste0( - ". Podatek ni prikazan zaradi majhnega števila enot. - \\newline - Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(program.predmeti.po.izredni.program))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - - - rownames(program.predmeti.po.izredni.program) <- formatProgImena(make.unique(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.izredni.program), "ime.predmeta"]), - program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ) - - program.predmeti.po.izredni.program <- rbind(program.predmeti.po.izredni.program, colMeans(program.predmeti.po.izredni.program, na.rm=TRUE), - unlist(c("--", F.avg.po.tab))) - - - program.predmeti.po.izredni.program <- formatval(program.predmeti.po.izredni.program, KT = TRUE) - - - rownames(program.predmeti.po.izredni.program)[(nrow(program.predmeti.po.izredni.program)-1):nrow(program.predmeti.po.izredni.program)] <- - c(paste0("\\hline \\textbf{Povprečje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povprečje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program) <- - latex.rotate(c( - "št. odgovorov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - as.character(vars.predmet$krediti$ime.kratko) - )) - - program.predmeti.po.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program, - caption="Povprečja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - - #------------------ SORTIRANJE PO USTREZNOSTI KREDITNIH TOcK -----------------# - program.predmeti.po.izredni.program.krediti <- - subset( - povprecja.predmeti.programi.PO, - program.studentov == program & NACIN_STUDIJA == "2" & - N_anket > 0 - )[c( - "N_anket", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.izredni.program.krediti <- program.predmeti.po.izredni.program.krediti[order(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean, - program.predmeti.po.izredni.program.krediti$N_anket, decreasing=TRUE),] - - - - - - - if (any(is.na(program.predmeti.po.izredni.program.krediti)) & - any((!is.na(program.predmeti.po.izredni.program.krediti)) == "--")) { - opomba <- paste0( - ". Podatek ni prikazan zaradi majhnega števila enot. - \\newline - Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(program.predmeti.po.izredni.program.krediti))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - - rownames(program.predmeti.po.izredni.program.krediti) <- formatProgImena(make.unique(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.izredni.program.krediti), "ime.predmeta"]), - program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean) - - program.predmeti.po.izredni.program.krediti <- rbind(program.predmeti.po.izredni.program.krediti, colMeans(program.predmeti.po.izredni.program.krediti, na.rm=TRUE), - unlist(c("--", F.avg.po.tab))) - - - - program.predmeti.po.izredni.program.krediti <- formatval(program.predmeti.po.izredni.program.krediti, KT = TRUE) - rownames(program.predmeti.po.izredni.program.krediti)[(nrow(program.predmeti.po.izredni.program.krediti)-1):nrow(program.predmeti.po.izredni.program.krediti)] <- - c(paste0("\\hline \\textbf{Povprečje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povprečje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program.krediti) <- - latex.rotate(c( - "št. odgovorov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - as.character(vars.predmet$krediti$ime.kratko) - )) - - - program.predmeti.po.izredni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program.krediti, - caption="Povprečja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - #------------------ //SORTIRANJE PO USTREZNOSTI KREDITNIH TOcK// -----------------# - - } else { - program.predmeti.po.izredni.program.tex <- "Za anketo PO izpitu (izredni študij) ni ocen." - program.predmeti.po.izredni.program.krediti.tex <- NULL - } - - #program.predmeti.po.izredni.program.tex <- "Za anketo PO izpitu (izredni študij) ni ocen." - - } else { - - program.predmeti.po.redni.program.tex <- "Za anketo PO izpitu (izredni študij) ni ocen." - program.predmeti.po.redni.program.krediti.tex <- NULL - program.predmeti.po.izredni.program.krediti.tex <- NULL - } - ## /course averages/ ## - - - ############################################################################# - ## POGLAVJE v izpisu za študijske programe: Povprecja po študijskih programih - ## DODAJANJE POVPREcIJ PO študijSKIH PROGRAMIH - ############################################################################# - - #----------------------------- DODIPLOMSKI PROGRAM -----------------------------# - - ################################################################### - #LOČENI IZPISI ZA PRVO (DODIPLOMSKI) IN DRUGO (PODIPLOMSKI) STOPNJO - ################################################################### - - #------------------------------------- ANKETA PRED IZPITOM: PREDMET ----------------------------------# - # ANKETA PRED IZPITOM I in II stopnja - #====================================# - # Izločimo programe, ki so imeli več kot štiri odgovore - prog.PRED <- - subset( - povprecja.predmeti.programi, - N_anket >= minEnot, - select = c( - predmet.ocena.zadovoljstvo_mean, - predmet.ocena.usklajenost_mean, - predmet.ocena.samostojnost_mean, - predmet.ocena.literatura_mean, - predmet.ocena.obvescenost_mean, - predmet.ocena.informiranost_mean, - predmet.ocena.znanje_mean, - predmet.ocena.SKUPAJ, - program.studentov, - program.studentov.ime - ) - ) - # Izračunamo povprečja po komponentah programov - library(dplyr) - prog.PRED <- prog.PRED %>% - group_by(program.studentov) %>% - summarise_if(.predicate = function(x) is.numeric(x), - .funs = funs(mean), na.rm = TRUE) %>% - as.data.frame() %>% - mutate_if(is.numeric, round, digits = 1) - - # Število ocenjenih predmetov na posameznem programu - stopnja_program <- aggregate(povprecja.predmeti.programi$predmet.sifra[povprecja.predmeti.programi$N_anket >= 4], - by = list(program.studentov = povprecja.predmeti.programi$program.studentov[povprecja.predmeti.programi$N_anket >= 4], - program.studentov.ime = povprecja.predmeti.programi$program.studentov.ime[povprecja.predmeti.programi$N_anket >= 4] ), - FUN = function(x) length(unique(x))) - - # Level of program 1 = dodiplomski, 2 = podpiplomski - programi.imena.stopnja <- programi.imena[ ,c("ID","Stopnja")] - colnames(programi.imena.stopnja)[1] <- "program.studentov" - - # Dodamo še število predmetov na programu z več kot štirimi odgovori - if (nrow(prog.PRED) > 0) { - - prog.PRED <- - merge( - merge(prog.PRED, stopnja_program, by = c("program.studentov"), all = TRUE), - programi.imena.stopnja, - by = "program.studentov", - all = FALSE - ) - } - # Izberemo le prvo stopnjo študija------------------------------- - prog.PRED.I <- subset(prog.PRED, Stopnja == 1) - if (nrow(prog.PRED.I) > 0) { - - # Preureditmo podatke za latex tabelo - prog.PRED.I <- prog.PRED.I[, c(11, 2:10), drop = FALSE] - # Dodamo imena vrstic programov: tabele - rownames(prog.PRED.I) <- make.unique(as.character(prog.PRED.I$program.studentov.ime)) - st.prog <- length(prog.PRED.I$program.studentov.ime) - prog.PRED.I$program.studentov.ime <- NULL - # Sortiramo od največje do najmanjše in Dodamo skupno povprečje programov po vrsticah in stolpcih - prog.PRED.I <- prog.PRED.I[order(prog.PRED.I$predmet.ocena.SKUPAJ, decreasing = T), ] - prog.PRED.I <- rbind(prog.PRED.I, c(" ",round(colMeans(prog.PRED.I[2:ncol(prog.PRED.I)], na.rm = TRUE),1))) - # NA = "." - prog.PRED.I[is.na(prog.PRED.I)] <- "." - #prog.PRED.I <- prog.PRED.I %>% mutate_if(is.numeric, round, digits = 1) - - # Barvanje števil - prog.PRED.I <- formatval(prog.PRED.I) - - # Imena stolpcev in vrstic za potrebe latex tabele - rownames(prog.PRED.I)[nrow(prog.PRED.I)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",st.prog," programov)}")) - colnames(prog.PRED.I) <- - latex.rotate(c( - "št. predmetov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - )) - - # Izdelava latex tabele (funkcija se nahaja v osnovni kodi) - prog.PRED.I.tex <- - tb.lat( - prog.PRED.I, - "Povprečja \\textbf{predmetov} po študijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - "A{10cm}", - namen = "PRED") - - - } else { - prog.PRED.I.tex <- "Ni ocen." - } - - - # Izberemo le drugo stopnjo študija----------------------------------------------- - prog.PRED.II <- subset(prog.PRED, Stopnja == 2) - if (nrow(prog.PRED.II) > 0) { - # Preureditmo podatke za latex tabelo - prog.PRED.II <- prog.PRED.II[, c(11, 2:10), drop = FALSE] - # Dodamo imena vrstic programov: tabele - rownames(prog.PRED.II) <- make.unique(as.character(prog.PRED.II$program.studentov.ime)) - st.prog <- length(prog.PRED.II$program.studentov.ime) - prog.PRED.II$program.studentov.ime <- NULL - # Dodamo skupno povprečje programov po vrsticah in stolpcih - prog.PRED.II <- prog.PRED.II[order(prog.PRED.II$predmet.ocena.SKUPAJ, decreasing = T), ] - prog.PRED.II <- rbind(prog.PRED.II, c(" ",round(colMeans(prog.PRED.II[2:ncol(prog.PRED.II)], na.rm = TRUE),1))) - # NA = "." - prog.PRED.II[is.na(prog.PRED.II)] <- "." - # Nan nadomestimo z "." - prog.PRED.II[prog.PRED.II == NaN] <- "." - #prog.PRED.II <- prog.PRED.II %>% mutate_if(is.numeric, round, digits = 1) - - # Barvanje števil - prog.PRED.II[, 2:ncol(prog.PRED.II)] <- apply(prog.PRED.II[, 2:ncol(prog.PRED.II)], 2, function(x) - ifelse(x < 4, paste( - "{\\color{Orange}\\textbf{",x,"}}"), - ifelse(x < 3, paste('{\\color{BrickRed}\\textbf{', x, "}}"), x))) - - # Imena stolpcev in vrstic za potrebe latex tabele - rownames(prog.PRED.II)[nrow(prog.PRED.II)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",st.prog," programov)}")) - colnames(prog.PRED.II) <- latex.rotate(c("št. predmetov", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), "\\textbf{Skupaj}")) - - - # Izdelava latex tabele (funkcija se nahaja v osnovni kodi) - prog.PRED.II.tex <- - tb.lat( - prog.PRED.II, - "Povprečja \\textbf{predmetov} po študijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - "A{10cm}", - namen = "PRED") - - - } else { - prog.PRED.II.tex <- "Ni ocen." - } - #----------------------------------- //ANKETA PRED IZPITOM: PREDMET// --------------------------------# - - - - #------------------------------------- ANKETA PO IZPITU: PREDMET -------------------------------------# - - - - # Izločimo programe, ki so imeli več kot štiri odgovore - prog.PO <- - subset( - povprecja.predmeti.programi.PO, - N_anket >= minEnot, - select = c( - predmet.ocena.vsebine_mean, - predmet.ocena.naloge_mean, - predmet.ocena.kriteriji_mean, - predmet.ocena.SKUPAJ, - predmet.ocena.kompetence_mean, - predmet.ocena.krediti_mean, - program.studentov, - program.studentov.ime - ) - ) - # Izračunamo povprečja po komponentah programov - prog.PO <- prog.PO %>% - group_by(program.studentov) %>% - summarise_if(.predicate = function(x) is.numeric(x), - .funs = funs(mean), na.rm = TRUE) %>% - as.data.frame() %>% - mutate_if(is.numeric, round, digits = 1) - - - - stopnja_program.po <- - aggregate( - povprecja.predmeti.programi.PO$predmet.sifra[povprecja.predmeti.programi.PO$N_anket >= 4], - by = list(program.studentov = povprecja.predmeti.programi.PO$program.studentov[povprecja.predmeti.programi.PO$N_anket >= 4], - program.studentov.ime = povprecja.predmeti.programi.PO$program.studentov.ime[povprecja.predmeti.programi.PO$N_anket >= 4]), - FUN = function(x) - length(unique(x)) - ) - - # Dodamo še število predmetov na programu z več kot štirimi odgovori - if (nrow(prog.PO) > 0) { - - prog.PO <- - merge( - merge(prog.PO, stopnja_program.po, by = "program.studentov", all = TRUE), - programi.imena.stopnja, - by = "program.studentov", - all = FALSE - ) - } - - - # Izberemo le prvo stopnjo študija------------------------------------------ - prog.PO.I <- subset(prog.PO, Stopnja == 1) - if (nrow(prog.PO.I) > 0) { - - # Preureditmo podatke za latex tabelo - prog.PO.I <- prog.PO.I[, c(9, 2:8), drop = FALSE] - # Dodamo imena vrstic programov: tabele - rownames(prog.PO.I) <- make.unique(as.character(prog.PO.I$program.studentov.ime)) - st.prog <- length(prog.PO.I$program.studentov.ime) - prog.PO.I$program.studentov.ime <- NULL - # Sortiramo od največje do najmanjše in Dodamo skupno povprečje programov po vrsticah in stolpcih - # V anketi po bomo imeli dve tabeli: - # 1 Tabela ki bo sortirana glede na skupno povprečje v komponent ankete PO - # 2 Tabela, ki so sortirana glede na vrednost kreditnih točk - # Ustreznost KT - prog.PO.I <- prog.PO.I[order(prog.PO.I$predmet.ocena.SKUPAJ, decreasing = T), ] - prog.PO.I <- rbind(prog.PO.I, c(" ",round(colMeans(prog.PO.I[2:ncol(prog.PO.I)], na.rm = TRUE),1))) - # NA = "." - prog.PO.I[is.na(prog.PO.I)] <- "." - #prog.PO.I <- prog.PO.I %>% mutate_if(is.numeric, round, digits = 1) - - # Barvanje števil: Ustreznost kreditnih točk (za več glej "Metodološko pojasnilo") - prog.PO.I <- formatval(prog.PO.I, KT = TRUE) - - # Imena stolpcev in vrstic za potrebe latex tabele - rownames(prog.PO.I)[nrow(prog.PO.I)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",st.prog," programov)}")) - colnames(prog.PO.I) <- latex.rotate(c("št. predmetov", "Vebine", "Jasnost", "Ocenjevanje","\\textbf{Skupaj}","Kompetence", "Ustreznost KT*")) - - - # LATEX TABELA - prog.PO.I.tex <- tb.lat( - prog.PO.I, - "Povprečja \\textbf{predmetov} po študijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - "A{13cm}", - namen = "PO") - - - - # Naredimo še eno tabelo, kjer bodo ocene razvrščene glede na kreditne točke: Ustreznosnost KT - prog.KT.I <- rbind(prog.PO.I[order(prog.PO.I[-c(nrow(prog.PO.I)),7], decreasing = T), ], prog.PO.I[nrow(prog.PO.I),]) - - prog.KT.I.tex <- tb.lat( - prog.KT.I, - "Povprečja \\textbf{predmetov} po študijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - "A{13cm}", - namen = "PO") - - - } else { - prog.PO.I.tex <- "Ni ocen." - prog.KT.I.tex <- "Ni ocen." - } - - # Izberemo drugo stopnjo študija--------------------------------------------- - prog.PO.II <- subset(prog.PO, Stopnja == 2) - if (nrow(prog.PO.II) > 0) { - - # Preureditmo podatke za latex tabelo - prog.PO.II <- prog.PO.II[, c(9, 2:8), drop = FALSE] - # Dodamo imena vrstic programov: tabele - rownames(prog.PO.II) <- make.unique(as.character(prog.PO.II$program.studentov.ime)) - st.prog <- length(prog.PO.II$program.studentov.ime) - prog.PO.II$program.studentov.ime <- NULL - # Sortiramo od največje do najmanjše in Dodamo skupno povprečje programov po vrsticah in stolpcih - prog.PO.II <- prog.PO.II[order(prog.PO.II$predmet.ocena.SKUPAJ, decreasing = T), ] - prog.PO.II <- rbind(prog.PO.II, c(" ",round(colMeans(prog.PO.II[2:ncol(prog.PO.II)], na.rm = TRUE),1))) - # NA = "." - prog.PO.II[is.na(prog.PO.II)] <- "." - #prog.PO.II <- prog.PO.II %>% mutate_if(is.numeric, round, digits = 1) - - # Barvanje števil: Ustreznost kreditnih točk (za več glej "Metodološko pojasnilo") - prog.PO.II <- formatval(prog.PO.II, KT = TRUE) - # Barvanje Preostlaih vrednosti - - # Imena stolpcev in vrstic za potrebe latex tabele - rownames(prog.PO.II)[nrow(prog.PO.II)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",st.prog," programov)}")) - colnames(prog.PO.II) <- latex.rotate(c("št. predmetov", "Vebine", "Jasnost", "Ocenjevanje","\\textbf{Skupaj}","Kompetence", "Ustreznost KT*")) - - # LATEX TABELA - # LATEX TABELA - prog.PO.II.tex <- tb.lat( - prog.PO.II, - "Povprečja \\textbf{predmetov} po študijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - "A{13cm}", - namen = "PO") - - # Naredimo še eno tabelo, kjer bodo ocene razvrščene glede na kreditne točke: Ustreznosnost KT - prog.KT.II <- rbind(prog.PO.II[order(prog.PO.II[-c(nrow(prog.PO.II)),7], decreasing = T), ], prog.PO.II[nrow(prog.PO.II),]) - - prog.KT.II.tex <- tb.lat( - prog.KT.II, - "Povprečja \\textbf{predmetov} po študijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - "A{13cm}", - namen = "PO") - - } else { - prog.PO.II.tex <- "Ni ocen." - prog.KT.II.tex <- "Ni ocen." - } - #------------------------------------- //ANKETA PO IZPITU: PREDMET// -------------------------------------# - - #------------------------------ IZVAJALCI PRI PREDMETIH (IPP) DODIPLOMSKI -------------------------------# - # Izločimo programe, ki so imeli več kot štiri odgovore - prog.IPP <- - subset( - povprecja.izvajalci.programi, - N_anket >= minEnot, - select = c( - izvajalec.ocena.kakovost_mean, - izvajalec.ocena.pripravljenost_mean, - izvajalec.ocena.razumljivost_mean, - izvajalec.ocena.zanimivost_mean, - izvajalec.ocena.kriticnost_mean, - izvajalec.ocena.korektnost_mean, - izvajalec.ocena.SKUPAJ, - program.studentov, - program.studentov.ime - ) - ) - # Izračunamo povprečja po komponentah programov - prog.IPP <- prog.IPP %>% - group_by(program.studentov) %>% - summarise_if(.predicate = function(x) is.numeric(x), - .funs = funs(mean), na.rm = TRUE) %>% - as.data.frame() %>% - mutate_if(is.numeric, round, digits = 1) - - # Število IPP glede na študijski program - stopnja_program.IPP <- - aggregate( - povprecja.izvajalci.programi$predmet.sifra[povprecja.izvajalci.programi$N_anket >= 4], - by = list(program.studentov = povprecja.izvajalci.programi$program.studentov[povprecja.izvajalci.programi$N_anket >= 4], - program.studentov.ime = povprecja.izvajalci.programi$program.studentov.ime[povprecja.izvajalci.programi$N_anket >= 4]), - FUN = function(x) - length(x) - ) - - - # Dodamo še število predmetov na programu z več kot štirimi odgovori - if (nrow(prog.IPP) > 0) { - - prog.IPP <- - merge( - merge(prog.IPP, stopnja_program.IPP, by = "program.studentov", all = TRUE), - programi.imena.stopnja, - by = "program.studentov", - all = FALSE - ) - } - - # Izberemo le prvo stopnjo študija------------------------------- - prog.IPP.I <- subset(prog.IPP, Stopnja == 1) - if (nrow(prog.IPP.I) > 0) { - - # Preureditmo podatke za latex tabelo - prog.IPP.I <- prog.IPP.I[, c(10, 2:9), drop = FALSE] - # Dodamo imena vrstic programov: tabele - rownames(prog.IPP.I) <- make.unique(as.character(prog.IPP.I$program.studentov.ime)) - st.prog <- length(prog.IPP.I$program.studentov.ime) - prog.IPP.I$program.studentov.ime <- NULL - # Sortiramo od največje do najmanjše in Dodamo skupno povprečje programov po vrsticah in stolpcih - prog.IPP.I <- prog.IPP.I[order(prog.IPP.I$izvajalec.ocena.SKUPAJ, decreasing = T), ] - prog.IPP.I <- rbind(prog.IPP.I, c(" ",round(colMeans(prog.IPP.I[2:ncol(prog.IPP.I)], na.rm = TRUE),1))) - # NA = "." - prog.IPP.I[is.na(prog.IPP.I)] <- "." - #prog.PRED.I <- prog.PRED.I %>% mutate_if(is.numeric, round, digits = 1) - - # Barvanje števil - prog.IPP.I <- formatval(prog.IPP.I) - - # Imena stolpcev in vrstic za potrebe latex tabele - rownames(prog.IPP.I)[nrow(prog.IPP.I)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",st.prog," programov)}")) - colnames(prog.IPP.I) <- latex.rotate(c("št. IPP*", vars.izvajalec$cont$ime.kratko, "\\textbf{Skupaj}")) - - # Izdelava latex tabele (funkcija se nahaja v osnovni kodi) - prog.IPP.I.tex <- - tb.lat( - prog.IPP.I, - "Povprečja \\textbf{izvajalcev pri predmetih} - po študijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - "A{12cm}", - namen = "IPP" - ) - - } else { - prog.IPP.I.tex <- "Ni ocen." - } - - - # Izberemo drugo stopnjo študija------------------------------- - prog.IPP.II <- subset(prog.IPP, Stopnja == 2) - if (nrow(prog.IPP.II) > 0) { - - # Preureditmo podatke za latex tabelo - prog.IPP.II <- prog.IPP.II[, c(10, 2:9), drop = FALSE] - # Dodamo imena vrstic programov: tabele - rownames(prog.IPP.II) <- make.unique(as.character(prog.IPP.II$program.studentov.ime)) - st.prog <- length(prog.IPP.II$program.studentov.ime) - prog.IPP.II$program.studentov.ime <- NULL - # Sortiramo od največje do najmanjše in Dodamo skupno povprečje programov po vrsticah in stolpcih - prog.IPP.II <- prog.IPP.II[order(prog.IPP.II$izvajalec.ocena.SKUPAJ, decreasing = T), ] - prog.IPP.II <- rbind(prog.IPP.II, c(" ",round(colMeans(prog.IPP.II[2:ncol(prog.IPP.II)], na.rm = TRUE),1))) - # NA = "." - prog.IPP.II[is.na(prog.IPP.II)] <- "." - #prog.PRED.I <- prog.PRED.I %>% mutate_if(is.numeric, round, digits = 1) - - # Barvanje števil - prog.IPP.II <- formatval(prog.IPP.II) - - # Imena stolpcev in vrstic za potrebe latex tabele - rownames(prog.IPP.II)[nrow(prog.IPP.II)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",st.prog," programov)}")) - colnames(prog.IPP.II) <- latex.rotate(c("št. IPP*", vars.izvajalec$cont$ime.kratko, "\\textbf{Skupaj}")) - - # Izdelava latex tabele (funkcija se nahaja v osnovni kodi) - prog.IPP.II.tex <- - tb.lat( - prog.IPP.II, - "Povprečja \\textbf{izvajalcev pri predmetih} - po študijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - "A{12cm}", - namen = "IPP" - ) - - } else { - prog.IPP.II.tex <- "Ni ocen." - } - - #-------------------------------- //IZVAJALCI PRI PREDMETIH (IPP)// -------------------------------------# - - ## //OCENE PROGRAMOV PO PREDMETIH// ## - - - ############################################################# - # STRUKTURA LATEX POROcILA - # Latex tabele izracunanih povprecij - # zapicemo v spremenljivko in opredelimo - # strukturo latex izpisa (poglavje, podpoglavje, nove strani) - ############################################################# - - programi.tex[[as.character(program)]] <- c( - "\\chapter{Redni študij - predmeti}","\\renewcommand{\\leftmark}{Predmeti - redni študij}", - paste("V tabelah so prikazana povprečja na lestvicah, - kjer so študenti označili strinjanje s trditvami, - ki se nanašajo na komponente pedagoške izvedbe - (1 - »sploh se ne strinjam«, 2 – »se bolj ne strinjam kot strinjam«, - 3 –»niti se ne strinjam niti se strinjam«, 4 – »se bolj strinjam kot ne strinjam«, - 5- »popolnoma se strinjam«). Vprašalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povprečja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranžno}, - kritično nizka povprečja (1.0–2.9) pa so obarvana {\\color{BrickRed}rdeče}. - Visoka povprečja (4.5–4.7), kjer je večina študentov podala oceno - »popolnoma se strinjam« (5), so obarvana {\\color{Chateau Green}zeleno}, - najvišja (4.8–5.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povprečje ni prikazano, - ampak je navedena pika ».«. Ocene za povprečja, ki temeljijo na nizkem - številu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so označene z enojnim () oziroma z dvojnim oklepajem (()). - Podrobne analize in podrobna metodološka pojasnila so v celotnem poročilu. - Osnovna metodološka pojasnila se nahajajo tudi na \\url{http://ul.1ka.si/metodologija}."), - "\\section{Anketa PRED izpitom}", - program.predmeti.pred.redni.program.tex, - "\\newpage", - "\\section{Anketa PO izpitu}", - program.predmeti.po.redni.program.tex, - "\\newpage",program.predmeti.po.redni.program.krediti.tex, - if (program.predmeti.pred.izredni.program.tex != "Za anketo PRED izpitom (izredni študij) ni ocen." && - program.predmeti.po.izredni.program.tex != "Za anketo PO izpitu (izredni študij) ni ocen.") { - c(paste0("\\chapter{Izredni študij - predmeti}"), - "\\renewcommand{\\leftmark}{Predmeti - izredni študij}", - "\\section{Anketa PRED izpitom}", - program.predmeti.pred.izredni.program.tex, "\\newpage", - "\\section{Anketa PO izpitu}" ,program.predmeti.po.izredni.program.tex, - "\\newpage", program.predmeti.po.izredni.program.krediti.tex)}, - if (subset(programi.imena.stopnja, program.studentov == program)$Stopnja == 1){c( - "\\chapter{Povprečja po programih - dodiplomski študij}", - "\\renewcommand{\\leftmark}{Študijski programi}", - paste("Izračunana so povprečja po vseh predmetih, - rednih in izrednih, ki so jih ocenjevali - študenti določenega študijskega programa. - Predmeti z veliko in malo študenti imajo enako težo. - V stolpcu \\guillemotright št. predmetov\\guillemotleft \\ je - skupno število predmetov, - kjer so odgovarjali vsaj", minEnot, - "študenti. Med predmete določenega programa so vključeni - tudi izbirni predmeti drugih programov, če so jih študenti - odgovarjajočega programa izbrali."), - prog.PRED.I.tex,"\\newpage",prog.PO.I.tex, - "\\newpage",prog.KT.I.tex,"\\newpage") - } else { c("\\chapter{Povprečja po programih - podiplomski študij}", - "\\renewcommand{\\leftmark}{Študijski programi}", - paste("Izračunana so povprečja po vseh predmetih, - rednih in izrednih, ki so jih ocenjevali študenti določenega študijskega programa. - Predmeti z veliko in malo študenti imajo enako težo. V stolpcu - \\guillemotright št. predmetov\\guillemotleft \\ je skupno število predmetov, - kjer so odgovarjali vsaj", minEnot,"študenti. Vključeni so lahko tudi prosto izbirni predmeti - (oziroma izvajalci pri predmetih), ki so sicer domicilni na drugih programih."), - prog.PRED.II.tex,"\\newpage",prog.PO.II.tex, - "\\newpage",prog.KT.II.tex,"\\newpage")}) - } - -#------------------------------------------------------------------- -trendi.prog <- TRUE # Ali bomo v poročilo za programe vstavili tudi trende po predmetih posameznega programa - - -# Sestavljanje LATEX DOKUMENTA (glava, noga) -tex.glava <- scan("Evalvacija/latexkosi/a-glava-program.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -#tex.glava <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -Rdirektorij <- getwd() - -for (program in names(programi.tex)) { - tex.glava.program <- gsub(pattern='!naslov!', - replacement=Hmisc::latexTranslate(programi[programi$student.program.sifra==program, - "student.program.ime"]), x=tex.glava) - tex.program <- c(tex.glava.program,"\\setlength{\\tabcolsep}{4pt}", - programi.tex[[as.character(program)]], - if (trendi.prog == TRUE) {c( - if (as.character(program) %in% names(programi.tex.I)) {c( - "\\chapter{Trendi za ocene komponent predmetov}", - "\\renewcommand{\\leftmark}{Trendi}", - " V primeru, ko so odgovarjale manj kot štiri enote, - izračun povprečje za odgovarjajoče leto ni prikazan, - je pa pridružen izračunu za agregirano povprečje za več let. - Pri tem so uporabljene naslednje oznake: - \\begin{itemize} - \\item ».« predmet se je izvajal, vendar so odgovorile manj kot štiri enote (0, 1, 2 ali 3); - \\item »--« predmet se ni izvajal ali pa v odgovarjajočem programu ni imel vpisanih študentov; - \\item »a« nadomešča oznako ».«, kadar je bilo v določenem letu premalo enot (manj kot štiri), hkrati pa skupno število enot v zaporedju celic s premajhnim številom enot doseže vsaj štiri (4), kar omogoča izračun agregiranega povprečja, ki se nahaja v stolpcu »Povp. a«; - \\item »b« ima podoben pomen, kot »a« in se pojavi v primerih, ko je iz celic s premalo enotami mogoče oblikovati dve zaporedji, vsako z vsaj štirimi enotami, kar omogoča izračun dveh agregiranih povprečij v stolpcih »Povp. a« oziroma »Povp. b«; - \\item 3.6\\textsuperscript{a} oziroma 3.6\\textsuperscript{b} pomeni agregirano povprečje za vse celice, ki so označena z »a« ali »b«; - \\item (3.6), (3.6)\\textsuperscript{a} ali (3.6)\\textsuperscript{b} – enojni oklepaj pomeni, da se povprečje nanaša le na 5-9 enot; - \\item ((3.6)), ((3.6))\\textsuperscript{a} ali ((3.6))\\textsuperscript{b} – dvojni oklepaj pomeni, da se povprečje nanaša le na 4 enote. - \\end{itemize} - Podroben opis in ilustracija postopka se nahaja v - Metodoloških pojasnilih in tudi na \\url{http://ul.1ka.si/agregati/ul.1ka.si/agregati}.", - programi.tex.I[[as.character(program)]])}, - if (as.character(program) %in% names(programi.tex.II)) {c( - "\\chapter{Trendi za ocene komponent predmetov}", - "\\renewcommand{\\leftmark}{Trendi}", - " V primeru, ko so odgovarjale manj kot štiri enote, - izračun povprečje za odgovarjajoče leto ni prikazan, - je pa pridružen izračunu za agregirano povprečje za več let. - Pri tem so uporabljene naslednje oznake: - \\begin{itemize} - \\item ».« predmet se je izvajal, vendar so odgovorile manj kot štiri enote (0, 1, 2 ali 3); - \\item »--« predmet se ni izvajal ali pa v odgovarjajočem programu ni imel vpisanih študentov; - \\item »a« nadomešča oznako ».«, kadar je bilo v določenem letu premalo enot (manj kot štiri), hkrati pa skupno število enot v zaporedju celic s premajhnim številom enot doseže vsaj štiri (4), kar omogoča izračun agregiranega povprečja, ki se nahaja v stolpcu »Povp. a«; - \\item »b« ima podoben pomen, kot »a« in se pojavi v primerih, ko je iz celic s premalo enotami mogoče oblikovati dve zaporedji, vsako z vsaj štirimi enotami, kar omogoča izračun dveh agregiranih povprečij v stolpcih »Povp. a« oziroma »Povp. b«; - \\item 3.6\\textsuperscript{a} oziroma 3.6\\textsuperscript{b} pomeni agregirano povprečje za vse celice, ki so označena z »a« ali »b«; - \\item (3.6), (3.6)\\textsuperscript{a} ali (3.6)\\textsuperscript{b} – enojni oklepaj pomeni, da se povprečje nanaša le na 5-9 enot; - \\item ((3.6)), ((3.6))\\textsuperscript{a} ali ((3.6))\\textsuperscript{b} – dvojni oklepaj pomeni, da se povprečje nanaša le na 4 enote. - \\end{itemize} - Podroben opis in ilustracija postopka se nahaja v - Metodoloških pojasnilih in tudi na \\url{http://ul.1ka.si/agregati/ul.1ka.si/agregati}.", - programi.tex.II[[as.character(program)]])})}, - "\\newpage", - "\\renewcommand{\\leftmark}{Metodološko pojasnilo}", - tex.okvir, - tex.noga) - - # Ker uporabljamo ukaz LONGTABLE, se pri lomljenju tabel pojavlja - # angleška beseda continued, ki jo zamenjanjamo z besedo nadaljevanje. - tex.program <- - gsub('(continued)', '(nadaljevanje)', tex.program, fixed = TRUE) - - cat(unlist(tex.program), file=paste0("Evalvacija/results/",fakulteta,"/Programi/program_", program,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, "/Programi", sep = '/')) - tools::texi2pdf(file=paste("program_", program,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) -} - - - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/011_kodaPDF_fakulteta.r b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/011_kodaPDF_fakulteta.r deleted file mode 100644 index 1d92fd6dc..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/011_kodaPDF_fakulteta.r +++ /dev/null @@ -1,1349 +0,0 @@ - -#-------------------- IMPORTANT!!!!!!!!!!!!!! -----------------------# -#' Ker v poroilo za fakulteto po novem zapisujemo tudi trende po -#' tudijskih programih je OBVEZNO, da predno poenemo to skripto, -#' poenemo @010_0_agregati_trendi_prog_priprava.R in -#' @010_1_PDF_agregati_trendi_prog.R -#------------------ //IMPORTANT!!!!!!!!!!!!!!// ---------------------# - -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo za posamezno fakulteto na streniku -# Tega ne poganjamo -# params <- commandArgs(trailingOnly=TRUE) -# ID <- params[1] -# #sesionID <- params[2] #Dodajanje tevil na koncu pdf/tex datotek za Petra -# # //1KA strenik// # -# -# # run first -# source("Evalvacija/R/koda.r") - - -sortByAverage <- TRUE # if true sort variable values and rownames in tables by average, else by lecturer's name -sortbykrediti <- TRUE # if true sort values in tables by values of komponent Ustreznost KT (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - -# which lecturers and courses should be included (all from predmeti.izbor and those from izvajalci.izbor that are also in predmeti.izbor) -predmeti.izbor <- povprecja.predmeti$predmet.sifra -predmeti.izbor.po <- povprecja.predmeti.po$predmet.sifra -izvajalci.izbor <- unique(povprecja.izvajalci$izvajalec.sifra) - - -# V primeru, da ni dovolj podatkov, bomo to izpisali: -Niocen.pred <- paste0("\\subsection{Anketa PRED izpitom}", "Ni dovolj ocen za izpis tabele.") -Niocen.po <- paste0("\\subsection{Anketa PO izpitu}", "Ni dovolj ocen za izpis tabele.") - - -# making latex file -izbor.tex <- NULL # Uporabimo na koncu poroila za zapis tex vrednosti - -## lecturer total averages ## -izbor.izvajalci <- subset(povprecja.izvajalci, predmet.sifra %in% predmeti.izbor & izvajalec.sifra %in% izvajalci.izbor) -izbor.izvajalci <- izbor.izvajalci[!is.na(izbor.izvajalci$predmet.sifra),] -izbor.izvajalci <- izbor.izvajalci[!is.na(izbor.izvajalci$NAZIV.PEDAGOGA),] - -if (nrow(izbor.izvajalci) > 0) { # Tabelo naredi samo, e obstajajo vrednosti za izvajalca - # Vrednosti komponent izvajalcev agregiramo glede na ifro izvajalca in ime izvajalca in izraunamo povpreje - izbor.izvajalci.skupaj <- - aggregate(izbor.izvajalci[c(paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ")], - by = izbor.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], - FUN = mean, - na.rm = TRUE) - - st.predmetov <- aggregate(izbor.izvajalci$N_anket >= minEnot, - by=izbor.izvajalci["izvajalec.sifra"], FUN=sum, na.rm=TRUE) # how many courses each lecturer has with enough answers - - # Zdruimo tevilo predmetov s povpreji komponent glede na ifro izvajalca - izbor.izvajalci.skupaj <- merge(st.predmetov, izbor.izvajalci.skupaj, by="izvajalec.sifra", all=TRUE, sort=FALSE) - - if (sortByAverage) {# if true sort variable values and rownames in tables by average, else by name - rownames(izbor.izvajalci.skupaj) <- formatProgImena(izbor.izvajalci.skupaj$NAZIV.PEDAGOGA, izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ) - izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj[order(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(izbor.izvajalci.skupaj) %in% c("izvajalec.sifra", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - } else { # sort by name - rownames(izbor.izvajalci.skupaj) <- izbor.izvajalci.skupaj$NAZIV.PEDAGOGA - izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj[order(as.character(sapply(rownames(izbor.izvajalci.skupaj), titula.rm)), - decreasing=FALSE), !(colnames(izbor.izvajalci.skupaj) %in% c("izvajalec.sifra", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - } - # Zruimo povprene ocene posameznih komponent vseh izvajalcev z SKUPNIM povprejem vseh komponent (colmeans) - izbor.izvajalci.skupaj <- rbind(izbor.izvajalci.skupaj, c(colMeans(izbor.izvajalci.skupaj[1:ncol(izbor.izvajalci.skupaj)], na.rm=TRUE))) - # Obarvanje mejnih vrednosti (formatNA) - izbor.izvajalci.skupaj <- formatval(izbor.izvajalci.skupaj) - izbor.izvajalci.skupaj$x <- round(izbor.izvajalci.skupaj$x) - - # (-1 zato, ker na koncu dodamo e vrstico Povpreje fakultete in te ne tejemo zraven ) - vsota_vseh.izvajalcev <- sum(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") - 1 # tevilo vseh izvajalcev fakultete - # Imena dodatne vrstice, ki jo dodamo na konec tabele (boldana vrstca z imenom Povpreje FDV), ki vsebuje skupno povpreje komponent izvajalcev fakultete - rownames(izbor.izvajalci.skupaj)[nrow(izbor.izvajalci.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_vseh.izvajalcev," izvajalcev)}")) - # Imena stolpcev v tebelah + rotiranje imen v tabelah za 90 stopinj (latex.rotate) - colnames(izbor.izvajalci.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)),"\\textbf{Skupaj}")) - # Generiranje LATEX tabel (capture.output(Hmisc::latex) - izbor.izvajalci.skupaj.tex <- capture.output(Hmisc::latex(izbor.izvajalci.skupaj, # data frame - caption="Povpreja \\textbf{izvajalcev}, - sortirana po \\textbf{Skupaj}", # naslov tabele - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", # irina vrstic tabele - multicol=FALSE, - longtable=TRUE, # splits a long table across pages - lines.page=1000, # table will be 1000 line long per page - insert.bottom=paste("{\\footnotesize \\textit{. - Podatek ni prikazan zaradi majhnega tevila enot.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) # Stolpci - - ## /lecturer total averages/ ## - - - - - rownames(izbor.izvajalci) <- make.unique(paste0(sapply(povprecja.izvajalci[rownames(izbor.izvajalci),"NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci[rownames(izbor.izvajalci),"ime.predmeta"], ")")) - #IPP redni tudij (NACIN_STUDIJA == "1") - izbor.izvajalci.redni <- izbor.izvajalci[izbor.izvajalci$NACIN_STUDIJA == "1", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] - #IPP izredni tudij (NACIN_STUDIJA == "2") - izbor.izvajalci.izredni <- izbor.izvajalci[izbor.izvajalci$NACIN_STUDIJA == "2", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] - - # redni tudij - if (nrow(izbor.izvajalci.redni) > 0) { - # PRED - redni - if (any(is.na(izbor.izvajalci.redni)) & - any((!is.na(izbor.izvajalci.redni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv." - ) - } else if (any(is.na(izbor.izvajalci.redni))) { - opomba <- ". Podatek ni prikazan zaradi majhnega tevila enot." - } else { - opomba <- NULL - } - - - if (sortByAverage) { - izbor.izvajalci.redni <- izbor.izvajalci.redni[order(izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(izbor.izvajalci.redni) <- formatProgImena(rownames(izbor.izvajalci.redni), izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ) - } else { # sort by name - izbor.izvajalci.redni <- izbor.izvajalci.redni[order(rownames(izbor.izvajalci.redni), decreasing=FALSE),] - } - # Zdruimo vrstice: povpreje komponent izvajalcev in skupno povpreje komponent izvajalcev - izbor.izvajalci.redni <- rbind(izbor.izvajalci.redni, colMeans(izbor.izvajalci.redni, na.rm=TRUE)) - # Obarvanje in zaokroevanje vrednosti - - # Zdruimo vrednosti (obarvanja in oklepaje) - izbor.izvajalci.redni <- formatval(izbor.izvajalci.redni) - # tevilo vseh IPP fakultete 1-, saj na koncu dodamo e vrstico Povpreje FDV, ki je ne tejemo k tevilu vseh IPP - vsota_IPP <- sum(izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ != ".") - 1 - # Dodamo vrstico z imenom Povpreje FDV - rownames(izbor.izvajalci.redni)[nrow(izbor.izvajalci.redni)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_IPP," IPP)}")) - # Poimenujemo stolpce in jih rotiramo za 90 stopinj - colnames(izbor.izvajalci.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujoih", "\\% ni poueval", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - # Generiranje Latex tabele - izbor.izvajalci.redni.tex <- c(capture.output(Hmisc::latex(izbor.izvajalci.redni, - caption="Povpreja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{6.7cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.izvajalci.redni.tex <- "Ni ocen." - } - - ## izvajalci: izredni tudij ## - if (nrow(izbor.izvajalci.izredni) > 0) { - # PRED - redni - if (any(is.na(izbor.izvajalci.izredni)) & - any((!is.na(izbor.izvajalci.izredni)) == "--")) { - opombaIzvIzredni <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv." - ) - } else if (any(is.na(izbor.izvajalci.izredni))) { - opombaIzvIzredni <- ". Podatek ni prikazan zaradi majhnega tevila enot." - } else { - opombaIzvIzredni <- NULL - } - - - if (sortByAverage) { - izbor.izvajalci.izredni <- izbor.izvajalci.izredni[order(izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(izbor.izvajalci.izredni) <- formatProgImena(rownames(izbor.izvajalci.izredni), izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ) - } else { # sort by name - izbor.izvajalci.izredni <- izbor.izvajalci.izredni[order(rownames(izbor.izvajalci.izredni), decreasing=FALSE),] - } - izbor.izvajalci.izredni <- rbind(izbor.izvajalci.izredni, colMeans(izbor.izvajalci.izredni, na.rm=TRUE)) - - izbor.izvajalci.izredni <- formatval(izbor.izvajalci.izredni) - # tevilo vseh IPP fakultete - vsota_IPP.izredni <- sum(izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ != ".") - 1 - rownames(izbor.izvajalci.izredni)[nrow(izbor.izvajalci.izredni)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_IPP.izredni," IPP)}")) - colnames(izbor.izvajalci.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujoih","\\% ni poueval", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - izbor.izvajalci.izredni.tex <- c(capture.output(Hmisc::latex(izbor.izvajalci.izredni, - caption="Povpreja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{6.7cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opombaIzvIzredni, "}}")))) - } else { - izbor.izvajalci.izredni.tex <- "Ni ocen." - } -} else { - izbor.izvajalci.skupaj.tex <- "Ni ocen." - izbor.izvajalci.redni.tex <- "Ni ocen." - izbor.izvajalci.izredni.tex <- "Ni ocen." -} - -## /lecturer course averages/ ## - - -####################### -## course averages ## -####################### -izbor.predmeti <- subset(povprecja.predmeti, predmet.sifra %in% predmeti.izbor) # Izberemo predmete, ki so imeli dovolj enot -izbor.predmeti.po <- subset(povprecja.predmeti.po, predmet.sifra %in% predmeti.izbor.po) # Izberemo predmete, ki so imeli dovolj enot - -if (nrow(izbor.predmeti) > 0) { - - povprecja.predmeti <- povprecja.predmeti[!(is.na(povprecja.predmeti$ime.predmeta)), ] - rownames(izbor.predmeti) <- make.unique(povprecja.predmeti[rownames(izbor.predmeti), "ime.predmeta"]) - - povprecja.predmeti.po <- povprecja.predmeti.po[!(is.na(povprecja.predmeti.po$ime.predmeta)), ] - rownames(izbor.predmeti.po) <- make.unique(povprecja.predmeti.po[rownames(izbor.predmeti.po), "ime.predmeta"]) - - # Loimo povpreje komponent predmetov PRED in PO izpitu na REDNI in IZREDNi TUDIJ, na podalgi katerih nato delamo LATEX tabele - izbor.predmeti.pred.redni <- - izbor.predmeti[izbor.predmeti$NACIN_STUDIJA == "1", c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - - izbor.predmeti.pred.izredni <- - izbor.predmeti[izbor.predmeti$NACIN_STUDIJA == "2", c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - - # V anketi PO ne bomo prikazali predmetov, ki so PRAKSE - # To prikaemo v loeni tabeli - izbor.predmeti.po.redni <- - izbor.predmeti.po[c(izbor.predmeti.po$NACIN_STUDIJA == "1" & - izbor.predmeti.po$PRAKSA == 0), c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - - izbor.predmeti.po.izredni <- - izbor.predmeti.po[c(izbor.predmeti.po$NACIN_STUDIJA == "2" & - izbor.predmeti.po$PRAKSA == 0), c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - - - # Oblikovanje podatkov in generiranje Latex tabele za anketno PRED izpitom: REDNI TUDIJ - if (nrow(izbor.predmeti.pred.redni) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.pred.redni)) & - any((!is.na(izbor.predmeti.pred.redni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv." - ) - } else if (any(is.na(izbor.predmeti.pred.redni))) { - opomba <- ". Podatek ni prikazan zaradi majhnega tevila enot." - } else { - opomba <- NULL - } - - - - if (sortByAverage) { - izbor.predmeti.pred.redni <- izbor.predmeti.pred.redni[order(izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ, - izbor.predmeti.pred.redni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.pred.redni) <- formatProgImena(rownames(izbor.predmeti.pred.redni), - izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ) - } else { # sort by name - izbor.predmeti.pred.redni <- izbor.predmeti.pred.redni[order(rownames(izbor.predmeti.pred.redni), decreasing=FALSE),] - } - izbor.predmeti.pred.redni <- rbind(izbor.predmeti.pred.redni, colMeans(izbor.predmeti.pred.redni, na.rm=TRUE)) - #Sivo barvanje - - izbor.predmeti.pred.redni <- formatval(izbor.predmeti.pred.redni) - # tevilo vseh predmetov rednega tudija. Insert v tabelo - vsota_predmetov <- sum(izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ != ".")-1 - # Imena vrstic tabele - rownames(izbor.predmeti.pred.redni)[nrow(izbor.predmeti.pred.redni)] <- c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_predmetov, " predmetov)}")) - # Imena stolpcev tabele - colnames(izbor.predmeti.pred.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - # Latex tabela - izbor.predmeti.pred.redni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.pred.redni, - caption="Povpreja \\textbf{predmetov} - (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{6.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.pred.redni.tex <- "Ni ocen." - } - - # Oblikovanje podatkov in generiranje Latex tabele za anketno PRED izpitom: IZREDNI TUDIJ - if (nrow(izbor.predmeti.pred.izredni) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.pred.izredni)) & - any((!is.na(izbor.predmeti.pred.izredni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv." - ) - } else if (any(is.na(izbor.predmeti.pred.izredni))) { - opomba <- ". Podatek ni prikazan zaradi majhnega tevila enot." - } else { - opomba <- NULL - } - - - if (sortByAverage) { - izbor.predmeti.pred.izredni <- izbor.predmeti.pred.izredni[order(izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ, - izbor.predmeti.pred.izredni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.pred.izredni) <- formatProgImena(rownames(izbor.predmeti.pred.izredni), - izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ) - } else { # sort by name - izbor.predmeti.pred.izredni <- izbor.predmeti.pred.izredni[order(rownames(izbor.predmeti.pred.izredni), decreasing=FALSE),] - } - izbor.predmeti.pred.izredni <- rbind(izbor.predmeti.pred.izredni, colMeans(izbor.predmeti.pred.izredni, na.rm=TRUE)) - - izbor.predmeti.pred.izredni <- formatval(izbor.predmeti.pred.izredni) - # tevilo predmetov izrednega tudija - vsota_izredni <- sum(izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ != ".") - 1 - # Imena vrstic v tabelah - rownames(izbor.predmeti.pred.izredni)[nrow(izbor.predmeti.pred.izredni)] <- - c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_izredni, " predmetov)}")) - # Imena stolpcev v tabelah - colnames(izbor.predmeti.pred.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - #Generiranje Latex tabele - izbor.predmeti.pred.izredni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.pred.izredni, - caption="Povpreja \\textbf{predmetov} (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{6.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.pred.izredni.tex <- "Ni ocen." - } - - # REDNI TUDIJ - if (nrow(izbor.predmeti.po.redni) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.po.redni)) & - any((!is.na(izbor.predmeti.po.redni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else if (any(is.na(izbor.predmeti.po.redni))) { - opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else { - opomba <- c("* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } - - - - if (sortByAverage) { - izbor.predmeti.po.redni <- izbor.predmeti.po.redni[order(izbor.predmeti.po.redni$predmet.ocena.SKUPAJ, - izbor.predmeti.po.redni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.po.redni) <- formatProgImena(rownames(izbor.predmeti.po.redni), - izbor.predmeti.po.redni$predmet.ocena.SKUPAJ) - } else { # sort by name - izbor.predmeti.po.redni <- izbor.predmeti.po.redni[order(rownames(izbor.predmeti.po.redni), decreasing=FALSE),] - } - izbor.predmeti.po.redni <- rbind(izbor.predmeti.po.redni, colMeans(izbor.predmeti.po.redni, na.rm=TRUE)) - - izbor.predmeti.po.redni <- formatval(izbor.predmeti.po.redni, KT = TRUE) - vsota_predmeti.po <- sum(izbor.predmeti.po.redni$predmet.ocena.SKUPAJ != ".") - 1 - rownames(izbor.predmeti.po.redni)[nrow(izbor.predmeti.po.redni)] <- c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_predmeti.po, " predmetov)}")) - colnames(izbor.predmeti.po.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), "\\textbf{Skupaj}", "Kompetence",as.character(vars.predmet$krediti$ime.kratko))) - # Ker elimo da sta v tabelah komponenti UTREZNOST KT in KOMPETENCE prikazani na koncu pred generiranjem tabel spremenimo vrstni red - - # Generiranje LATEX TABELE - izbor.predmeti.po.redni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.redni, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.redni.tex <- "Ni ocen." - } - - # IZREDNI TUDIJ - if (nrow(izbor.predmeti.po.izredni) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.po.izredni)) & - any((!is.na(izbor.predmeti.po.izredni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else if (any(is.na(izbor.predmeti.po.izredni))) { - opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else { - opomba <- c("* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } - - if (sortByAverage) { - izbor.predmeti.po.izredni <- izbor.predmeti.po.izredni[order(izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ, - izbor.predmeti.po.izredni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.po.izredni) <- formatProgImena(rownames(izbor.predmeti.po.izredni), - izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ) - } else { # sort by name - izbor.predmeti.po.izredni <- izbor.predmeti.po.izredni[order(rownames(izbor.predmeti.po.izredni), decreasing=FALSE),] - } - izbor.predmeti.po.izredni <- rbind(izbor.predmeti.po.izredni, colMeans(izbor.predmeti.po.izredni, na.rm=TRUE)) - - izbor.predmeti.po.izredni <- formatval(izbor.predmeti.po.izredni, KT = TRUE) - # tevilo vshe predmetov v anketi PO - vsota_predmeti.po.izr <- sum(izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ != ".") - 1 - rownames(izbor.predmeti.po.izredni)[nrow(izbor.predmeti.po.izredni)] <- c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_predmeti.po.izr, " predmetov)}")) - colnames(izbor.predmeti.po.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), - "\\textbf{Skupaj}", "Kompetence",as.character(vars.predmet$krediti$ime.kratko))) - - # Latex tabela - izbor.predmeti.po.izredni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.izredni, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8.4cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.izredni.tex <- NULL - } - - - ################# - #TUDIJSKA PRAKSA - ################# - - # Zberemo predmete ki imajo tudijsko prakso (izbor.predmeti$PRAKSA==1) - izbor.predmeti.praksa <- izbor.predmeti.po[izbor.predmeti.po$PRAKSA==1 , - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$praksa,"_mean"),"predmet.ocena.SKUPAJ.praksa")] - - - if (all(!is.na(izbor.predmeti.praksa[1]))) { - if (nrow(izbor.predmeti.praksa) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.praksa)) & - any((!is.na(izbor.predmeti.praksa)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv." - ) - } else if (any(is.na(izbor.predmeti.praksa))) { - opomba <- ". Podatek ni prikazan zaradi majhnega tevila enot." - } else { - opomba <- NULL - } - - if (sortByAverage) { - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa, - izbor.predmeti.praksa$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.praksa) <- make.unique(formatProgImena(rownames(izbor.predmeti.praksa), - izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa)) - } else { # sort by name - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(rownames(izbor.predmeti.praksa), decreasing=FALSE),] - } - izbor.predmeti.praksa <- rbind(izbor.predmeti.praksa, - colMeans(izbor.predmeti.praksa[c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$praksa, "_mean"), - "predmet.ocena.SKUPAJ.praksa")], na.rm=TRUE)) - - izbor.predmeti.praksa<-formatval(izbor.predmeti.praksa) - # tevilo predmetov, ki imajo tudijsko prakso - vsota_praks <- sum(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa != ".") - 1 - rownames(izbor.predmeti.praksa)[nrow(izbor.predmeti.praksa)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_praks," tudijskih praks)}")) - colnames(izbor.predmeti.praksa) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])), "\\textbf{Skupaj}")) - izbor.predmeti.praksa.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.praksa, - caption="Povpreja \\textbf{tudijskih praks} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$praksa)),"|c"), - rowlabel.just="A{6.1cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.praksa.tex <- c("\\newline","\\newline", "Ni ocen za tudijsko prakso.") - } - - } else { - izbor.predmeti.praksa.tex <- c("\\newline","\\newline", "Ni ocen za tudijsko prakso.") - } - ## //TUDIJSKA PRAKSA// ## - - - - # Naredimo e tabelo za anketo PO izpitu, kjer vrednosti v tabelah sortiramo glede na vrednost komponente USTREZNOST KT# - ## DODATNO SORTIJANJE PO USTREZNOSTI KREDITNIH TOK# - # REDNI TUDIJ - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po[izbor.predmeti.po$NACIN_STUDIJA=="1", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$po[-1],"_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean")] - - if (nrow(izbor.predmeti.po.redni.krediti) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.po.redni.krediti)) & - any((!is.na(izbor.predmeti.po.redni.krediti)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else if (any(is.na(izbor.predmeti.po.redni.krediti))) { - opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else { - opomba <- c("* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } - - - if (sortbykrediti) { - rownames(izbor.predmeti.po.redni.krediti) <- formatProgImena(rownames(izbor.predmeti.po.redni.krediti), - izbor.predmeti.po.redni.krediti$predmet.ocena.krediti_mean) - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po.redni.krediti[order(izbor.predmeti.po.redni.krediti$predmet.ocena.krediti_mean, - decreasing=TRUE),] - } else { # sort by name - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po.redni.krediti[order(rownames(izbor.predmeti.po.redni.krediti), decreasing=FALSE),] - } - izbor.predmeti.po.redni.krediti <- rbind(izbor.predmeti.po.redni.krediti, colMeans(izbor.predmeti.po.redni.krediti, na.rm=TRUE)) - - izbor.predmeti.po.redni.krediti <- formatval(izbor.predmeti.po.redni.krediti, KT = TRUE) - vsota_krediti <- sum(izbor.predmeti.po.redni.krediti$predmet.ocena.SKUPAJ != ".") - 1 - rownames(izbor.predmeti.po.redni.krediti)[nrow(izbor.predmeti.po.redni.krediti)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_krediti," predmetov)}")) - colnames(izbor.predmeti.po.redni.krediti) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), - "\\textbf{Skupaj}","Kompetence", as.character(vars.predmet$krediti$ime.kratko))) - izbor.predmeti.po.redni.krediti.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.redni.krediti, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.redni.krediti.tex <- "Ni ocen." - } - - - # IZREDNI TUDIJ - izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po[izbor.predmeti.po$NACIN_STUDIJA=="2", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$po[-1],"_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean")] - - if (nrow(izbor.predmeti.po.izredni.krediti) > 0) { - # PO - izredni - if (any(is.na(izbor.predmeti.po.izredni.krediti)) & - any((!is.na(izbor.predmeti.po.izredni.krediti)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else if (any(is.na(izbor.predmeti.po.izredni.krediti))) { - opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else { - opomba <- c("* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } - - - - if (sortByAverage) { - izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po.izredni.krediti[order(izbor.predmeti.po.izredni.krediti$predmet.ocena.krediti_mean, - izbor.predmeti.po.izredni.krediti$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.po.izredni.krediti) <- formatProgImena(rownames(izbor.predmeti.po.izredni.krediti), - izbor.predmeti.po.izredni.krediti$predmet.ocena.krediti_mean) - } else { # sort by name - izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po.izredni.krediti[order(rownames(izbor.predmeti.po.izredni.krediti), - decreasing=FALSE),] - } - izbor.predmeti.po.izredni.krediti <- rbind(izbor.predmeti.po.izredni.krediti, colMeans(izbor.predmeti.po.izredni.krediti, na.rm=TRUE)) - - izbor.predmeti.po.izredni.krediti <- formatval(izbor.predmeti.po.izredni.krediti, KT = TRUE) - vsota_krediti.izr <- sum(izbor.predmeti.po.izredni.krediti[11] != ".") - 1 - rownames(izbor.predmeti.po.izredni.krediti)[nrow(izbor.predmeti.po.izredni.krediti)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_krediti.izr," predmetov)}")) - colnames(izbor.predmeti.po.izredni.krediti) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), - "\\textbf{Skupaj}", "Kompetence", as.character(vars.predmet$krediti$ime.kratko))) - - izbor.predmeti.po.izredni.krediti.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.izredni.krediti, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.izredni.krediti.tex <- "Ni ocen." - } - - #################################################################################### - # PREVERI!!!!!!!!!!! - #-------------------- SET WORKING DIREKTORY -----------------------# - # Check which PC we are working from: WORk OR HOME - fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - - if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) - } else { - setwd(fpath) - } - #------------------ //SET WORKING DIREKTORY// ---------------------# - #--------------------------------- TRENDI IN AGREGATI --------------------------------------# - # 26.8.2019 # Updated on 12.9.2019 - # We will also insert: trendi za izvajalce (lanica), predmete, IPP) - # Import data - # IMPORT DATA -----------------------------------------------------# - # Check all files that match desired pattern - files.F.tr <- - list.files(path = paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/"), - pattern = paste0("^Excel rezultati_", fakulteta, "(.)")) - # For importing excel files we will use new package - library(rio) # import - # Trendi za Izvajalce - trendi.F.izv <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 1)) - # Trendi za Izvajalce pri predmetih - trendi.F.ipp <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 2)) - # Trendi za predmete: ANKETA PRED - trendi.F.pred <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 3)) - # Trendi za predmete: ANKETA PO - trendi.F.po <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 4)) - - - # ADD COLUM NAMES FOR merging purposes - for (i in seq_along(trendi.F.ipp)){ - colnames(trendi.F.izv[[i]])[1] <- "Izvajalec" - colnames(trendi.F.ipp[[i]])[1] <- "IPP" - colnames(trendi.F.pred[[i]])[1] <- "Predmeti" - colnames(trendi.F.po[[i]])[1] <- "Predmeti" - } - trendi.F.KT <- trendi.F.po - trendi.F.com <- trendi.F.po - # Prepare each data frame for Latex tables - # V letih 2014/15 ko smo delali le za FDV in FGG pri - # ifri izvajalca e nismo imeli 3000021_FDV_, zato to - # DODAMO le v primeru FDV in FGG - if (fakulteta == "FDV") { - # Izvajalci - trendi.F.izv[[1]]$`Izvajalec id` <- - paste0("3000021_FDV_", trendi.F.izv[[1]]$`Izvajalec id`) - # Ipp - trendi.F.ipp[[1]]$`Izvajalec id` <- - paste0("3000021_FDV_", trendi.F.ipp[[1]]$`Izvajalec id`) - } else if (fakulteta == "FGG") { - trendi.F.izv[[1]]$`Izvajalec id` <- - paste0("3000026_FGG_", trendi.F.izv[[1]]$`Izvajalec id`) - # Ipp - trendi.F.ipp[[1]]$`Izvajalec id` <- - paste0("3000026_FGG_", trendi.F.ipp[[1]]$`Izvajalec id`) - } - - - ############# - # IZVAJALCI # - ############# - # Zdruimo ocene iz razlinih let - trendi.F.izv <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = "Izvajalec id", all = T), trendi.F.izv)) - # Oznaimo izvajalce, ki v doloenem letu niso pouevali - trendi.F.izv <- poucNIpouc(trendi.F.izv) - # zberemo podatke, ki jih bomo prikazali v latex tabeli - trendi.F.izv <- - trendi.F.izv[grepl("Izvajalec id|Izvajalec\\.|Izvajalec|SKUPAJ", colnames(trendi.F.izv))] - # Prvi stolpec, ki predstavlja imena izvajalcev ustrezno uredimo za - # potrebe latex tabele: NA v posamezni celici nadomestimo z imenom, ki - # pripada ID izvajalca - # Dobimo zadnje ime (naslov izvajalca) - # Za ime izvajalca vzamemo zadnji stolpec, ker so to imena izvajalcev - # za zadnje leto (po letih so se lahko nazivi izvajalcev spreminjali) - izvajalecIme <- - trendi.F.izv[grepl("Izvajalec\\.|Izvajalec$", colnames(trendi.F.izv))] - # premeamo stolpce - izvajalecIme <- izvajalecIme %>% - select(length(izvajalecIme), everything()) - - trendi.F.izv$izvajalci <- - apply(izvajalecIme, 1, function(x) - na.omit(x)[1]) - - trendi.F.izv <- - trendi.F.izv[grepl("Izvajalec id|\\|SKUPAJ", - colnames(trendi.F.izv))] - # Uredimo vrstni red, ad bodo imena v prvi vrstici v Latex tabeli - trendi.F.izv <- trendi.F.izv %>% - dplyr::select(izvajalci, everything()) - - # Pri izvajalcu Samu Pavlinu se je za leto 15/16 pojavilo "(.)" namesto "." - # To pa zato, ker je imel v tem letu skupno 7 odgovorov za oba predmeta - # ter ni imel ocen. Spodnja Funkcija pa doda "(.)" zato to uredimo - # tako, da dodamo namesto (.) samo "." ka rpomeni premalo odgovorov - # trendi.F.izv$izvajalci <- - # apply(izvajalecIme, 1, function(x) - # na.omit(x)[1]) - trendi.F.izv[] <- lapply(trendi.F.izv, FUN = function(x) ifelse(x == "(.)", ".", x)) - # Update 17.9.2019 - # Po novem vsem izvajalcem odstranimo nazive - trendi.F.izv$izvajalci <- odstNaziv(trendi.F.izv$izvajalci) - ag.trendov.ivz <- - merge( - trendi.F.izv, - agregati.izv, - by.x = "Izvajalec id", - by.y = "izvajalec.sifra", - all.x = TRUE - ) - ag.trendov.ivz <- - ag.trendov.ivz[grepl("izvajalci|SKUPAJ|leto", colnames(ag.trendov.ivz))] - # e obstajajo agregati elimo v Latex tabeli trendov - # to primerno oznaiti - ag.trendov.ivz <- ag.trendov.ivz[!is.na(ag.trendov.ivz$izvajalci), ] - # Odstranimo morebitne duplikate - ag.trendov.ivz <- ag.trendov.ivz[!duplicated(ag.trendov.ivz$izvajalci), ] - # udne znake AGRFT (napake v ifrantih) - ag.trendov.ivz <- ag.trendov.ivz[ag.trendov.ivz$izvajalci != "xxxxx xxxxx", ] - # Sortiramo e po imenuh izvajalcev: - ag.trendov.ivz <- - ag.trendov.ivz[order(ag.trendov.ivz$izvajalci), ] - - ag.trendov.ivz.tex <- prepare.agregati( - ag.trendov.ivz, - agregTip = "izvajalci", - imetabele = "Povpreja za agregirane ocene estih komponent - \\textbf{izvajalca} (anketa PRED izpitom) - sortirana po \\textbf{abecedi}" - ) - - ########################### - # IZVAJALCI PRI PREDMETIH # - ########################### - # Prepare each data frame for Latex tables - # FDV ima za isto ifro predmeta razline izvedbe in imena. Tako je enkrat - # Tak predmeet izredna izvedba spet drugi (drugo leto) je to redna izvedba - # Tako je teko povezati izvajalce pri predmetu. - # Krr podtke mrgamo po imenih IPP, bomo prepone nazive po posaemznih letih - # izvajalcev odstranili. - trendi.F.ipp <- lapply(trendi.F.ipp, function(x) { - x$IPP <- odstNaziv(x$IPP) - return(x) - }) - - trendi.F.ipp <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.ipp)) - # Oznaimo izvajalce, ki v doloenem letu niso pouevali - trendi.F.ipp <- poucNIpouc(trendi.F.ipp, namen = "Izvajalec id") - - - trendi.F.ipp <- - trendi.F.ipp[grepl("IPP|SKUPAJ", colnames(trendi.F.ipp))] - #For latex tables we only want to have Total average for each year - ag.trendov.ipp <- - merge(trendi.F.ipp, agregati.ipp, by.x = "IPP", all.x = TRUE) - ag.trendov.ipp <- - ag.trendov.ipp[grepl("IPP|SKUPAJ|leto|stolpec", colnames(ag.trendov.ipp))] - - #Odstranimo udne znake AGRFT (napaka v ifrantu) - ag.trendov.ipp <- ag.trendov.ipp[ag.trendov.ipp$IPP != "xxxxx xxxxx (B1 Izbirni predmet - sploni - 3KT)", ] - # Create latex Table - ag.trendov.ipp.tex <- prepare.agregati( - ag.trendov.ipp, - agregTip = "IPP", - imetabele = "Povpreja za agregirane ocene sedmih komponent - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom) - sortirana po \\textbf{abecedi}" - ) - - ####################### - # ANKETA PRED IZPITOM # - ####################### - # Prepare each data frame for Latex tables - trendi.F.pred <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.pred)) - - trendi.F.pred <- poucNIpouc(trendi.F.pred, namen = "Predmet id") - # For latex tables we only want to have Total average for each year - trendi.F.pred <- - trendi.F.pred[, grepl("Predmeti|SKUPAJ", colnames(trendi.F.pred))] - # Zdruimo trende z agregati - ag.trendov.pred <- - merge( - trendi.F.pred, - agregati.pred, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) - ag.trendov.pred <- - ag.trendov.pred[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.pred))] - # e obstajajo agregati elimo v Latex tabeli trendov - # to primerno oznaiti - ag.trendov.pred.tex <- prepare.agregati( - ag.trendov.pred, - agregTip = "Predmeti", - imetabele = "Povpreja za agregirane ocene estih komponent - \\textbf{predmeta} (anketa PRED izpitom) - sortirana po \\textbf{abecedi}" - ) - - - #################### - # ANKETA PO IZPITU # - #################### - # Prepare each data frame for Latex tables - trendi.F.po <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.po)) - trendi.F.po <- poucNIpouc(trendi.F.po, namen = "Predmet id") - - # For latex tables we only want to have Total average for each year - trendi.F.po <- - trendi.F.po[, grepl("Predmeti|SKUPAJ", colnames(trendi.F.po))] - #For latex tables we only want to have Total average for each year - ag.trendov.po <- - merge( - trendi.F.po, - agregati.po, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) - ag.trendov.po <- - ag.trendov.po[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.po))] - # e obstajajo agregati elimo v Latex tabeli trendov - # to primerno oznaiti - ag.trendov.po.tex <- prepare.agregati( - ag.trendov.po, - agregTip = "Predmeti", - imetabele = "Povpreja za agregirane ocene treh komponent - \\textbf{predmeta} (anketa PO izpitu) - sortirana po \\textbf{abecedi}" - ) - - ############## - # KOMPETENCE # - ############## - trendi.F.com <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.com)) - # Za potrebe barvanja in urejanja povpreij, vrednosti v stolpcih "SKUPAJ" nadomestimo z - # vrednostmi iz stolpcev " Komeptence" saj delamo tabelo trendov kompetenc - trendi.F.com[grepl("SKUPAJ", colnames(trendi.F.com))] <- trendi.F.com[grepl("Kompetence", colnames(trendi.F.com))] - trendi.F.com <- poucNIpouc(trendi.F.com, namen = "Predmet id") - - # For latex tables we only want to have Total average for each year - trendi.F.com <- - trendi.F.com[, grepl("Predmeti|SKUPAJ", colnames(trendi.F.com))] - #For latex tables we only want to have Total average for each year - ag.trendov.kom <- - merge( - trendi.F.com, - agregati.kom, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) - ag.trendov.kom <- - ag.trendov.kom[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.kom))] - # e obstajajo agregati elimo v Latex tabeli trendov - # to primerno oznaiti - ag.trendov.kom.tex <- prepare.agregati( - ag.trendov.kom, - agregTip = "Predmeti", - imetabele = "Povpreja za agregirane ocene komponente - \\textbf{kompetence} (anketa PO izpitu) - sortirana po \\textbf{abecedi}" - ) - - - ########### - # KREDITI # - ########### - trendi.F.KT <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.KT)) - - trendi.F.KT[grepl("SKUPAJ", colnames(trendi.F.KT))] <- - trendi.F.KT[grepl("Ustreznost", colnames(trendi.F.KT))] - - trendi.F.KT <- - poucNIpouc(trendi.F.KT, namen = "Predmet id", krediti = TRUE) - - # For latex tables we only want to have Total average for each year - trendi.F.KT <- - trendi.F.KT[, grepl("Predmeti|SKUPAJ", colnames(trendi.F.KT))] - - trendi.F.KT <- trendi.F.KT[!duplicated(trendi.F.KT$Predmeti), ] - #For latex tables we only want to have Total average for each year - ag.trendov.KT <- - merge( - trendi.F.KT, - agregati.KT1, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) - ag.trendov.KT <- - ag.trendov.KT[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.KT))] - - # e obstajajo agregati elimo v Latex tabeli trendov - # to primerno oznaiti - ag.trendov.KT.tex <- prepare.agregati( - ag.trendov.KT, - agregTip = "Predmeti", - imetabele = "Povpreja za agregirane ocene komponente - \\textbf{Ustreznost KT} (anketa PO izpitu) - sortirana po \\textbf{abecedi}" - ) - #--------------------------------------- TRENDI IN AGREGATI ---------------------------------------# - - - -######################################################################################################## -} else { - izbor.predmeti.pred.redni.tex <- Niocen.pred - izbor.predmeti.pred.izredni.tex <- Niocen.pred - izbor.predmeti.po.redni.tex <- Niocen.po - izbor.predmeti.po.izredni.tex <- NULL - izbor.predmeti.po.redni.krediti.tex<- Niocen.po - izbor.predmeti.po.izredni.krediti.tex <- Niocen.po - progMeanPO.fak.skupaj.tex <- "Ni ocen" - izbor.predmeti.praksa.tex <- "Ni ocen" - izv.predmet.skupaj.tex <- "Ni ocen" - prog.PRED.I.tex <- Niocen.pred - prog.PRED.II.tex<- Niocen.pred - prog.PO.I.tex <- Niocen.po - prog.PO.II.tex <- Niocen.po - prog.KT.I.tex<- Niocen.po - prog.KT.II.tex <- Niocen.po - prog.IPP.II <- Niocen.pred - prog.IPP.I <- Niocen.pred -} -## /course averages/ ## - - -################## -# GENERIRANJE PDF# -################## -# # PREVERI!!!!!!!!!!! -# #-------------------- SET WORKING DIREKTORY -----------------------# -# # Check which PC we are working from: WORk OR HOME -# fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") -# -# if (!dir.exists(fpath)){ -# output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" -# setwd(output_dir) -# } else { -# setwd(fpath) -# } -# #------------------ //SET WORKING DIREKTORY// ---------------------# - - -tex.glava <- scan("Evalvacija/latexkosi/a-glava-program.tex", character(0), sep="\n", quiet=TRUE, encoding='UTF-8') -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) # tudijsko leto -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.glava <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) # Naslov poroila na prvi strani -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE) -Rdirektorij <- getwd() - -# Povpreja izvajalcev fakultete, ki ga nato zapiemo v podatkovni okvir izbor.tex -izvajalci.tex<- c("\\chapter{Povpreja po izvajalcih}", - paste("Pri izraunu povpreij za izvajalce imajo vsi predmeti (redni in izredni) enako teo, - ne glede na tevilo tudentov. V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je - tevilo vseh predmetov izvajalca, kjer so na anketo odgovarjali vsaj", minEnot, "tudenti. - Podrobnosti so v metodolokih navodilih na koncu - poroila in na \\url{http://ul.1ka.si/metodologija}."), - izbor.izvajalci.skupaj.tex) -## //Povpreja izvajalcev fakultete// ## - -# Posamezne latex tabele sestavimo v celoto <- izbor.tex, na podalgi katere nastane PDF poroilo -izbor.tex <- c( - "\\chapter{Redni tudij}", - "\\renewcommand{\\leftmark}{Predmeti - redni tudij}", - paste( - "V tabelah so prikazana povpreja na lestvicah, - kjer so tudenti oznaili strinjanje s trditvami, - ki se nanaajo na komponente pedagoke izvedbe - (1 - sploh se ne strinjam, 2 se bolj ne strinjam kot strinjam, - 3 niti se ne strinjam niti se strinjam, 4 se bolj strinjam kot ne strinjam, - 5- popolnoma se strinjam). Vpraalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - kritino nizka povpreja (1.02.9) pa so obarvana {\\color{BrickRed}rdee}. - Visoka povpreja (4.54.7), kjer je veina tudentov podala oceno - popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - najvija (4.85.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, - ampak je navedena pika .. Ocene za povpreja, ki temeljijo na nizkem - tevilu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so oznaene z enojnim () oziroma z dvojnim oklepajem (()). - Zaradi preglednosti so oklepaji navedeni le v prvih petih vrsticah, torej pri - odgovarjajoem tevilu enot oziroma deleu sodelovanja, eprav se to seveda nanaa na vsa povpreja v vrstici. - Podrobne analize in podrobna metodoloka pojasnila so v celotnem poroilu. - \\newline \\newline - Vkljueni so vsi predmeti, ki so se izvajali na prvih dveh stopnjah, - oznake BD oziroma BP pa pomenijo bolonjski dodiplomski oziroma podiplomski tudij. - Podobno se oznake B1 in B2 nanaajo na (morebitni) prenovljeni tudij na prvi in drugi stopnji. - \\newline \\newline - Podrobne analize in podrobna metodoloka pojasnila so v celotnem poroilu. - Osnovna metodoloka pojasnila se nahajajo tudi na \\url{http://ul.1ka.si/metodologija}." - ), - "\\section{Predmeti}", - "\\subsection{Anketa PRED izpitom}", - izbor.predmeti.pred.redni.tex, - "\\newpage", - "\\subsection{Anketa PO izpitu}", - izbor.predmeti.po.redni.tex, - "\\newpage", - izbor.predmeti.po.redni.krediti.tex, - "\\newpage", - "\\renewcommand{\\leftmark}{Izvajalci pri predmetih - redni tudij}", - "\\section{Izvajalci pri predmetih}", - izbor.izvajalci.redni.tex, - #----------------------------------------------------- - if (izbor.predmeti.pred.izredni.tex != "Ni ocen." && - !is.null(izbor.predmeti.po.izredni.tex) && - izbor.izvajalci.izredni.tex != "Ni ocen.") { - c( - "\\chapter{Izredni tudij}", - "\\renewcommand{\\leftmark}{Predmeti - izredni tudij}", - "\\section{Predmeti}", - "\\subsection{Anketa PRED izpitom}", - izbor.predmeti.pred.izredni.tex, - "\\newpage", - "\\subsection{Anketa PO izpitu}", - izbor.predmeti.po.izredni.tex, - "\\newpage", - izbor.predmeti.po.izredni.krediti.tex, - "\\newpage", - "\\renewcommand{\\leftmark}{Izvajalci pri predmetih - izredni tudij}", - "\\section{Izvajalci pri predmetih}", - izbor.izvajalci.izredni.tex - ) - }, - # UPDATE 31.10.2019 # - # e ni ocen za izredni tudij - # tega v poroilu ne prikaemo ve - # } else { - # "Ni ocen za izredni tudij." - # }, - "\\newpage", - "\\renewcommand{\\leftmark}{Povpreja po izvajalcih}", - izvajalci.tex, - "\\chapter{tudijska praksa}", - "\\renewcommand{\\leftmark}{tudijska praksa}", - paste( - "Za evalvacijo tudijske prakse velja enaka metodologija kot za anketo - PO izpitu, le komponente (vpraanja) so bile specifine. - Vpraalnik se nahaja na \\url{http://ul.1ka.si/praksa}." - ), - izbor.predmeti.praksa.tex, - "\\newpage", - "\\chapter{Povpreja po tudijskih programih}", - "\\renewcommand{\\leftmark}{tudijski programi}", - paste( - "Izraunana so povpreja po vseh predmetih (oziroma po vseh izvedbah pri predmetih), - rednih in izrednih, ki so jih ocenjevali tudenti doloenega tudijskega programa. - Predmeti z veliko in malo tudenti imajo enako teo. V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je - skupno tevilo predmetov (oziroma izvajalcev pri predmetih), kjer so odgovarjali vsaj", - minEnot, - "tudenti. - Med predmete doloenega programa so vkljueni tudi prosto izbirni predmeti (oziroma izvajalci pri predmetih) - drugih programov, e so jih tudenti obravnavanega programa izbrali. - Opozorilo: V primeru, da je zaradi premajhnega (pod 4) tevila enot pri predmetih v oceno - programa vkljueno malo predmetov (npr. 1 ali 2), potem so take ocene programa manj natanne." - ), - "\\section{Dodiplomski tudij}", - prog.PRED.I.tex, - "\\newpage", - prog.PO.I.tex, - "\\newpage", - prog.KT.I.tex, - "\\newpage", - prog.IPP.I.tex, - "\\newpage", - "\\section{Podiplomski tudij}", - prog.PRED.II.tex, - "\\newpage", - prog.PO.II.tex, - "\\newpage", - prog.KT.II.tex, - "\\newpage", - prog.IPP.II.tex, - "\\newpage", - "\\chapter{Trendi komponent predmetov in izvajalca}", - "\\renewcommand{\\leftmark}{Trendi}", - paste( - " V primeru, ko so odgovarjale manj kot tiri enote, - izraun povpreje za odgovarjajoe leto ni prikazan, - je pa pridruen izraunu za agregirano povpreje za ve let. - Pri tem so uporabljene naslednje oznake: - \\begin{itemize} - \\item . predmet se je izvajal, vendar so odgovorile manj kot tiri enote (0, 1, 2 ali 3); - \\item -- predmet se ni izvajal oziroma ga na doloenem programu tudenti niso vpisali ali pa odgovarjajoi pedagog ni bil vkljuen med izvajalce; - \\item a nadomea oznako ., kadar je bilo v doloenem letu premalo enot (manj kot tiri), hkrati pa skupno tevilo enot v zaporedju celic s premajhnim tevilom enot dosee vsaj tiri (4), kar omogoa izraun agregiranega povpreja, ki se nahaja v stolpcu Povp. a; - \\item b ima podoben pomen, kot a in se pojavi v primerih, ko je iz celic s premalo enotami mogoe oblikovati dve zaporedji, vsako z vsaj tirimi enotami, kar omogoa izraun dveh agregiranih povpreij v stolpcih Povp. a oziroma Povp. b; - \\item 3.6\\textsuperscript{a} oziroma 3.6\\textsuperscript{b} pomeni agregirano povpreje za vse celice, ki so oznaena z a ali b; - \\item (3.6), (3.6)\\textsuperscript{a} ali (3.6)\\textsuperscript{b} enojni oklepaj pomeni, da se povpreje nanaa le na 5-9 enot; - \\item ((3.6)), ((3.6))\\textsuperscript{a} ali ((3.6))\\textsuperscript{b} dvojni oklepaj pomeni, da se povpreje nanaa le na 4 enote. - \\end{itemize} - V nadaljevanju so predmeti sortirani po abecedi, vendar znotraj prenovljenih (B1 oziroma B2) in predhodnih (BD oziroma BP) programov prve/dodiplomske oziroma druge/podiplomske stopnje. - \\newline \\newline - Podroben opis in ilustracija postopka se nahaja v - Metodolokih pojasnilih in tudi na \\url{http://ul.1ka.si/agregati/ul.1ka.si/agregati}."), - "\\section{Predmeti (Anketa PRED)}", - ag.trendov.pred.tex, "\\newpage", - "\\section{Predmeti (Anketa PO)}", - ag.trendov.po.tex, "\\newpage", - "\\section{Kompetence (Anketa PO)}", - ag.trendov.kom.tex, "\\newpage", - "\\section{Ustreznost KT (Anketa PO)}", - "Ocene porabe ur so prav tako merjene na lestvici 1-5, vendar optimalna vrednost ni 5.0, ampak 3.0. Gre za odgovore - na vpraanje, ali so tudenti (glede na kreditne toke) porabili predvideno tevilo ur, in sicer: (1) veliko manj, - (2) nekoliko manj, (3) predvideno, (4) nekoliko ve, (5) veliko ve. - {\\color{Orange}Oranno} - so tako oznaena {\\color{Orange}opozorilna} odstopanja - ({\\color{Orange}2.4-2.6}) in - ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa - {\\color{BrickRed}kritina} - odstopanja (pod {\\color{BrickRed}2.4}) - in (nad {\\color{BrickRed}3.6}).", - ag.trendov.KT.tex, "\\newpage", - "\\section{Izvajalci pri predmetih (Anketa PRED)}", - ag.trendov.ipp.tex, "\\newpage", - "\\section{Izvajalci (Anketa PRED)}", - ag.trendov.ivz.tex, "\\newpage" - -) -# Posamezne latex tabele sestavimo v celoto - -# Sestavimo LATEX DOKUMENT, KI GA NATO ZAPIEMO V PDF: GLAVA(tex.glava), NAE VREDNOSTI OZ LATEX TABELE S TEKSTOM (izbor.tex), -# METODOLOKO POJASNILO NA KONCU (tex.okvir) in zakljuim dokument z tex.noga -tex.izbor <- c( - tex.glava, - "\\setlength{\\tabcolsep}{4pt}", - izbor.tex, - "\\newpage", - "\\renewcommand{\\leftmark}{Metodoloko pojasnilo}", - tex.okvir, - tex.noga -) - -# Ker uporabljamo ukaz LONGTABLE, se pri lomljenju tabel pojavlja -# angleka beseda continued, ki jo zamenjanjamo z besedo nadaljevanje. -tex.izbor <- - gsub('(continued)', '(nadaljevanje)', tex.izbor, fixed = TRUE) - - - -cat(unlist(tex.izbor), file=paste0("Evalvacija/results/",fakulteta,"/Programi/Fakulteta_",fakulteta,".tex", sep=""), sep="\n") -setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, "/Programi", sep = '/')) -tools::texi2pdf(file=paste("Fakulteta_",fakulteta,".tex", sep=""), quiet=TRUE, clean=TRUE) -setwd(Rdirektorij) - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/011_kodaPDF_fakulteta_FKKT_FRI_EF.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/011_kodaPDF_fakulteta_FKKT_FRI_EF.R deleted file mode 100644 index 10fefb3c9..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/011_kodaPDF_fakulteta_FKKT_FRI_EF.R +++ /dev/null @@ -1,954 +0,0 @@ - -#-------------------- IMPORTANT!!!!!!!!!!!!!! -----------------------# -#' Ker v poročilo za fakulteto po novem zapisujemo tudi trende po -#' študijskih programih je OBVEZNO, da predno poženemo to skripto, -#' poženemo @010_0_agregati_trendi_prog_priprava.R in -#' @010_1_PDF_agregati_trendi_prog.R -#------------------ //IMPORTANT!!!!!!!!!!!!!!// ---------------------# - -# Del, ki ga potrebuje Peter, da generira ustrezno poročilo za posamezno fakulteto na strežniku -# Tega ne poganjamo -# params <- commandArgs(trailingOnly=TRUE) -# ID <- params[1] -# #sesionID <- params[2] #Dodajanje števil na koncu pdf/tex datotek za Petra -# # //1KA strežnik// # -# -# # run first -# source("Evalvacija/R/koda.r") - - -sortByAverage <- TRUE # if true sort variable values and rownames in tables by average, else by lecturer's name -sortbykrediti <- TRUE # if true sort values in tables by values of komponent Ustreznost KT (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - -# which lecturers and courses should be included (all from predmeti.izbor and those from izvajalci.izbor that are also in predmeti.izbor) -predmeti.izbor <- povprecja.predmeti$predmet.sifra -predmeti.izbor.po <- povprecja.predmeti.po$predmet.sifra -izvajalci.izbor <- unique(povprecja.izvajalci$izvajalec.sifra) - - -# V primeru, da ni dovolj podatkov, bomo to izpisali: -Niocen.pred <- paste0("\\subsection{Anketa PRED izpitom}", "Ni dovolj ocen za izpis tabele.") -Niocen.po <- paste0("\\subsection{Anketa PO izpitu}", "Ni dovolj ocen za izpis tabele.") - - -# making latex file -izbor.tex <- NULL # Uporabimo na koncu poročila za zapis tex vrednosti - -## lecturer total averages ## -izbor.izvajalci <- subset(povprecja.izvajalci, predmet.sifra %in% predmeti.izbor & izvajalec.sifra %in% izvajalci.izbor) -izbor.izvajalci <- izbor.izvajalci[!is.na(izbor.izvajalci$predmet.sifra),] -izbor.izvajalci <- izbor.izvajalci[!is.na(izbor.izvajalci$NAZIV.PEDAGOGA),] - -if (nrow(izbor.izvajalci) > 0) { # Tabelo naredi samo, če obstajajo vrednosti za izvajalca - # Vrednosti komponent izvajalcev agregiramo glede na šifro izvajalca in ime izvajalca in izračunamo povprečje - izbor.izvajalci.skupaj <- - aggregate(izbor.izvajalci[c(paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ")], - by = izbor.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], - FUN = mean, - na.rm = TRUE) - - st.predmetov <- aggregate(izbor.izvajalci$N_anket >= minEnot, - by=izbor.izvajalci[c("izvajalec.sifra")], FUN=sum, na.rm=TRUE) # how many courses each lecturer has with enough answers - - # Združimo število predmetov s povprečji komponent glede na šifro izvajalca - izbor.izvajalci.skupaj <- merge(st.predmetov, izbor.izvajalci.skupaj, by="izvajalec.sifra", all=TRUE, sort=FALSE) - - if (sortByAverage) {# if true sort variable values and rownames in tables by average, else by name - rownames(izbor.izvajalci.skupaj) <- formatProgImena(izbor.izvajalci.skupaj$NAZIV.PEDAGOGA, izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ) - izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj[order(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(izbor.izvajalci.skupaj) %in% c("izvajalec.sifra", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - } else { # sort by name - rownames(izbor.izvajalci.skupaj) <- izbor.izvajalci.skupaj$NAZIV.PEDAGOGA - izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj[order(as.character(sapply(rownames(izbor.izvajalci.skupaj), titula.rm)), - decreasing=FALSE), !(colnames(izbor.izvajalci.skupaj) %in% c("izvajalec.sifra", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - } - # Zružimo povprečne ocene posameznih komponent vseh izvajalcev z SKUPNIM povprečjem vseh komponent (colmeans) - izbor.izvajalci.skupaj <- rbind(izbor.izvajalci.skupaj, c(colMeans(izbor.izvajalci.skupaj[1:ncol(izbor.izvajalci.skupaj)], na.rm=TRUE))) - # Obarvanje mejnih vrednosti (formatNA) - izbor.izvajalci.skupaj <- formatval(izbor.izvajalci.skupaj) - izbor.izvajalci.skupaj$x <- round(izbor.izvajalci.skupaj$x) - - # (-1 zato, ker na koncu dodamo še vrstico Povprečje fakultete in te ne štejemo zraven ) - vsota_vseh.izvajalcev <- sum(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") - 1 # Število vseh izvajalcev fakultete - # Imena dodatne vrstice, ki jo dodamo na konec tabele (boldana vrstca z imenom Povprečje FDV), ki vsebuje skupno povprečje komponent izvajalcev fakultete - rownames(izbor.izvajalci.skupaj)[nrow(izbor.izvajalci.skupaj)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",vsota_vseh.izvajalcev," izvajalcev)}")) - # Imena stolpcev v tebelah + rotiranje imen v tabelah za 90 stopinj (latex.rotate) - colnames(izbor.izvajalci.skupaj) <- latex.rotate(c("Št. predmetov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)),"\\textbf{Skupaj}")) - # Generiranje LATEX tabel (capture.output(Hmisc::latex) - izbor.izvajalci.skupaj.tex <- capture.output(Hmisc::latex(izbor.izvajalci.skupaj, # data frame - caption="Povprečja \\textbf{izvajalcev}, - sortirana po \\textbf{Skupaj}", # naslov tabele - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", # širina vrstic tabele - multicol=FALSE, - longtable=TRUE, # splits a long table across pages - lines.page=1000, # table will be 1000 line long per page - insert.bottom=paste("{\\footnotesize \\textit{. - Podatek ni prikazan zaradi majhnega števila enot.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) # Stolpci - - ## /lecturer total averages/ ## - - - - - rownames(izbor.izvajalci) <- make.unique(paste0(sapply(povprecja.izvajalci[rownames(izbor.izvajalci),"NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci[rownames(izbor.izvajalci),"ime.predmeta"], ")")) - #IPP redni študij (NACIN_STUDIJA == "1") - izbor.izvajalci.redni <- izbor.izvajalci[izbor.izvajalci$NACIN_STUDIJA == "1", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] - #IPP izredni študij (NACIN_STUDIJA == "2") - # izbor.izvajalci.izredni <- izbor.izvajalci[izbor.izvajalci$NACIN_STUDIJA == "2", - # c("ST_STUD","N_anket","sodelujocih.pct", - # "zavrnjenih.pct","neodzivnih.pct", - # "nipouceval.pct", - # paste0(vars.izvajalec$cont$vars,"_mean"), - # "izvajalec.ocena.SKUPAJ")] - # - # redni študij - if (nrow(izbor.izvajalci.redni) > 0) { - # PRED - redni - if (any(is.na(izbor.izvajalci.redni)) & - any((!is.na(izbor.izvajalci.redni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega števila enot.", - "- Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(izbor.izvajalci.redni))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - - if (sortByAverage) { - izbor.izvajalci.redni <- izbor.izvajalci.redni[order(izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(izbor.izvajalci.redni) <- formatProgImena(rownames(izbor.izvajalci.redni), izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ) - } else { # sort by name - izbor.izvajalci.redni <- izbor.izvajalci.redni[order(rownames(izbor.izvajalci.redni), decreasing=FALSE),] - } - # Združimo vrstice: povprečje komponent izvajalcev in skupno povprečje komponent izvajalcev - izbor.izvajalci.redni <- rbind(izbor.izvajalci.redni, colMeans(izbor.izvajalci.redni, na.rm=TRUE)) - # Obarvanje in zaokroževanje vrednosti - - # Združimo vrednosti (obarvanja in oklepaje) - izbor.izvajalci.redni <- formatval(izbor.izvajalci.redni) - # Število vseh IPP fakultete 1-, saj na koncu dodamo še vrstico Povprečje FDV, ki je ne štejemo k številu vseh IPP - vsota_IPP <- sum(izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ != ".") - 1 - # Dodamo vrstico z imenom Povprečje FDV - rownames(izbor.izvajalci.redni)[nrow(izbor.izvajalci.redni)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",vsota_IPP," IPP)}")) - # Poimenujemo stolpce in jih rotiramo za 90 stopinj - colnames(izbor.izvajalci.redni) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujočih", "\\% ni poučeval", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - # Generiranje Latex tabele - izbor.izvajalci.redni.tex <- c(capture.output(Hmisc::latex(izbor.izvajalci.redni, - caption="Povprečja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{6.7cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.izvajalci.redni.tex <- "Ni ocen." - } - - # ## izvajalci: izredni študij ## - # if (nrow(izbor.izvajalci.izredni) > 0) { - # # PRED - redni - # if (any(is.na(izbor.izvajalci.izredni)) & - # any((!is.na(izbor.izvajalci.izredni)) == "--")) { - # opombaIzvIzredni <- c( - # ". Podatek ni prikazan zaradi majhnega števila enot.", - # "- Podatek je manj pomemben ali težko izračunljiv." - # ) - # } else if (any(is.na(izbor.izvajalci.izredni))) { - # opombaIzvIzredni <- ". Podatek ni prikazan zaradi majhnega števila enot." - # } else { - # opombaIzvIzredni <- NULL - # } - # - # - # if (sortByAverage) { - # izbor.izvajalci.izredni <- izbor.izvajalci.izredni[order(izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - # rownames(izbor.izvajalci.izredni) <- formatProgImena(rownames(izbor.izvajalci.izredni), izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ) - # } else { # sort by name - # izbor.izvajalci.izredni <- izbor.izvajalci.izredni[order(rownames(izbor.izvajalci.izredni), decreasing=FALSE),] - # } - # izbor.izvajalci.izredni <- rbind(izbor.izvajalci.izredni, colMeans(izbor.izvajalci.izredni, na.rm=TRUE)) - # - # izbor.izvajalci.izredni <- formatval(izbor.izvajalci.izredni) - # # Število vseh IPP fakultete - # vsota_IPP.izredni <- sum(izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ != ".") - 1 - # rownames(izbor.izvajalci.izredni)[nrow(izbor.izvajalci.izredni)] <- - # c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",vsota_IPP.izredni," IPP)}")) - # colnames(izbor.izvajalci.izredni) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", - # "\\% nesodelujočih","\\% ni poučeval", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - # izbor.izvajalci.izredni.tex <- c(capture.output(Hmisc::latex(izbor.izvajalci.izredni, - # caption="Povprečja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), - # sortirana po \\textbf{Skupaj}", - # rowlabel="", - # file="", - # where="H", - # multicol=FALSE, - # longtable=TRUE, - # lines.page=1000, - # col.just=c("c","c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - # rowlabel.just="A{6.7cm}", - # insert.bottom=paste0("{\\footnotesize \\textit{", opombaIzvIzredni, "}}")))) - # } else { - # izbor.izvajalci.izredni.tex <- "Ni ocen." - # } - } else { - izbor.izvajalci.skupaj.tex <- "Ni ocen." - izbor.izvajalci.redni.tex <- "Ni ocen." - izbor.izvajalci.izredni.tex <- "Ni ocen." - } - -## /lecturer course averages/ ## - - -####################### -## course averages ## -####################### -izbor.predmeti <- subset(povprecja.predmeti, predmet.sifra %in% predmeti.izbor) # Izberemo predmete, ki so imeli dovolj enot -izbor.predmeti.po <- subset(povprecja.predmeti.po, predmet.sifra %in% predmeti.izbor.po) # Izberemo predmete, ki so imeli dovolj enot - -if (nrow(izbor.predmeti) > 0) { - - povprecja.predmeti <- povprecja.predmeti[!(is.na(povprecja.predmeti$ime.predmeta)), ] - rownames(izbor.predmeti) <- make.unique(povprecja.predmeti[rownames(izbor.predmeti), "ime.predmeta"]) - - povprecja.predmeti.po <- povprecja.predmeti.po[!(is.na(povprecja.predmeti.po$ime.predmeta)), ] - rownames(izbor.predmeti.po) <- make.unique(povprecja.predmeti.po[rownames(izbor.predmeti.po), "ime.predmeta"]) - - # Ločimo povprečje komponent predmetov PRED in PO izpitu na REDNI in IZREDNi ŠTUDIJ, na podalgi katerih nato delamo LATEX tabele - izbor.predmeti.pred.redni <- - izbor.predmeti[izbor.predmeti$NACIN_STUDIJA == "1", c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - - # izbor.predmeti.pred.izredni <- - # izbor.predmeti[izbor.predmeti$NACIN_STUDIJA == "2", c( - # "ST_STUD", - # "N_anket", - # "sodelujocih.pct", - # "zavrnjenih.pct", - # "neodzivnih.pct", - # paste0(vars.predmet$cont$pred, "_mean"), - # "predmet.ocena.SKUPAJ" - # )] - - # V anketi PO ne bomo prikazali predmetov, ki so PRAKSE - # To prikažemo v ločeni tabeli - izbor.predmeti.po.redni <- - izbor.predmeti.po[c(izbor.predmeti.po$NACIN_STUDIJA == "1" & - izbor.predmeti.po$PRAKSA == 0), c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - - # izbor.predmeti.po.izredni <- - # izbor.predmeti.po[c(izbor.predmeti.po$NACIN_STUDIJA == "2" & - # izbor.predmeti.po$PRAKSA == 0), c( - # "ST_STUD", - # "N_anket", - # "sodelujocih.pct", - # "zavrnjenih.pct", - # "neodzivnih.pct", - # paste0(vars.predmet$cont$po[-1], "_mean"), - # "predmet.ocena.SKUPAJ", - # "predmet.ocena.kompetence_mean", - # "predmet.ocena.krediti_mean" - # )] - # - - # Oblikovanje podatkov in generiranje Latex tabele za anketno PRED izpitom: REDNI ŠTUDIJ - if (nrow(izbor.predmeti.pred.redni) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.pred.redni)) & - any((!is.na(izbor.predmeti.pred.redni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega števila enot.", - "- Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(izbor.predmeti.pred.redni))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - - - if (sortByAverage) { - izbor.predmeti.pred.redni <- izbor.predmeti.pred.redni[order(izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ, - izbor.predmeti.pred.redni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.pred.redni) <- formatProgImena(rownames(izbor.predmeti.pred.redni), - izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ) - } else { # sort by name - izbor.predmeti.pred.redni <- izbor.predmeti.pred.redni[order(rownames(izbor.predmeti.pred.redni), decreasing=FALSE),] - } - izbor.predmeti.pred.redni <- rbind(izbor.predmeti.pred.redni, colMeans(izbor.predmeti.pred.redni, na.rm=TRUE)) - #Sivo barvanje - - izbor.predmeti.pred.redni <- formatval(izbor.predmeti.pred.redni) - # Število vseh predmetov rednega študija. Insert v tabelo - vsota_predmetov <- sum(izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ != ".")-1 - # Imena vrstic tabele - rownames(izbor.predmeti.pred.redni)[nrow(izbor.predmeti.pred.redni)] <- c(paste0("\\hline \\textbf{Povprečje fakultete (",vsota_predmetov, " predmetov)}")) - # Imena stolpcev tabele - colnames(izbor.predmeti.pred.redni) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujočih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - # Latex tabela - izbor.predmeti.pred.redni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.pred.redni, - caption="Povprečja \\textbf{predmetov} - (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{6.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.pred.redni.tex <- "Ni ocen." - } - - # # Oblikovanje podatkov in generiranje Latex tabele za anketno PRED izpitom: IZREDNI ŠTUDIJ - # if (nrow(izbor.predmeti.pred.izredni) > 0) { - # # PRED - redni - # if (any(is.na(izbor.predmeti.pred.izredni)) & - # any((!is.na(izbor.predmeti.pred.izredni)) == "--")) { - # opomba <- c( - # ". Podatek ni prikazan zaradi majhnega števila enot.", - # "- Podatek je manj pomemben ali težko izračunljiv." - # ) - # } else if (any(is.na(izbor.predmeti.pred.izredni))) { - # opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - # } else { - # opomba <- NULL - # } - # - # - # if (sortByAverage) { - # izbor.predmeti.pred.izredni <- izbor.predmeti.pred.izredni[order(izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ, - # izbor.predmeti.pred.izredni$N_anket, decreasing=TRUE),] - # rownames(izbor.predmeti.pred.izredni) <- formatProgImena(rownames(izbor.predmeti.pred.izredni), - # izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ) - # } else { # sort by name - # izbor.predmeti.pred.izredni <- izbor.predmeti.pred.izredni[order(rownames(izbor.predmeti.pred.izredni), decreasing=FALSE),] - # } - # izbor.predmeti.pred.izredni <- rbind(izbor.predmeti.pred.izredni, colMeans(izbor.predmeti.pred.izredni, na.rm=TRUE)) - # - # izbor.predmeti.pred.izredni <- formatval(izbor.predmeti.pred.izredni) - # # Število predmetov izrednega študija - # vsota_izredni <- sum(izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ != ".") - 1 - # # Imena vrstic v tabelah - # rownames(izbor.predmeti.pred.izredni)[nrow(izbor.predmeti.pred.izredni)] <- - # c(paste0("\\hline \\textbf{Povprečje fakultete (",vsota_izredni, " predmetov)}")) - # # Imena stolpcev v tabelah - # colnames(izbor.predmeti.pred.izredni) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujočih", - # Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - # #Generiranje Latex tabele - # izbor.predmeti.pred.izredni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.pred.izredni, - # caption="Povprečja \\textbf{predmetov} (anketa PRED izpitom), - # sortirana po \\textbf{Skupaj}", - # rowlabel="", - # file="", - # where="H", - # multicol=FALSE, - # longtable=TRUE, - # lines.page=1000, - # col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - # rowlabel.just="A{6.5cm}", - # insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - # } else { - # izbor.predmeti.pred.izredni.tex <- "Ni ocen." - # } - - # REDNI ŠTUDIJ - if (nrow(izbor.predmeti.po.redni) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.po.redni)) & - any((!is.na(izbor.predmeti.po.redni)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega števila enot.", - "- Podatek je manj pomemben ali težko izračunljiv.", - "* {\\color{Orange}\\textbf{Oranžno}} so označena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdeče}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else if (any(is.na(izbor.predmeti.po.redni))) { - opomba <- c(". Podatek ni prikazan zaradi majhnega števila enot.", - "* {\\color{Orange}\\textbf{Oranžno}} so označena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdeče}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else { - opomba <- c("* {\\color{Orange}\\textbf{Oranžno}} so označena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdeče}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } - - - - if (sortByAverage) { - izbor.predmeti.po.redni <- izbor.predmeti.po.redni[order(izbor.predmeti.po.redni$predmet.ocena.SKUPAJ, - izbor.predmeti.po.redni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.po.redni) <- formatProgImena(rownames(izbor.predmeti.po.redni), - izbor.predmeti.po.redni$predmet.ocena.SKUPAJ) - } else { # sort by name - izbor.predmeti.po.redni <- izbor.predmeti.po.redni[order(rownames(izbor.predmeti.po.redni), decreasing=FALSE),] - } - izbor.predmeti.po.redni <- rbind(izbor.predmeti.po.redni, colMeans(izbor.predmeti.po.redni, na.rm=TRUE)) - - izbor.predmeti.po.redni <- formatval(izbor.predmeti.po.redni, KT = TRUE) - vsota_predmeti.po <- sum(izbor.predmeti.po.redni$predmet.ocena.SKUPAJ != ".") - 1 - rownames(izbor.predmeti.po.redni)[nrow(izbor.predmeti.po.redni)] <- c(paste0("\\hline \\textbf{Povprečje fakultete (",vsota_predmeti.po, " predmetov)}")) - colnames(izbor.predmeti.po.redni) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujočih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), "\\textbf{Skupaj}", "Kompetence",as.character(vars.predmet$krediti$ime.kratko))) - # Ker želimo da sta v tabelah komponenti UTREZNOST KT in KOMPETENCE prikazani na koncu pred generiranjem tabel spremenimo vrstni red - - # Generiranje LATEX TABELE - izbor.predmeti.po.redni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.redni, - caption="Povprečja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.redni.tex <- "Ni ocen." - } - - # # IZREDNI ŠTUDIJ - # if (nrow(izbor.predmeti.po.izredni) > 0) { - # # PRED - redni - # if (any(is.na(izbor.predmeti.po.izredni)) & - # any((!is.na(izbor.predmeti.po.izredni)) == "--")) { - # opomba <- c( - # ". Podatek ni prikazan zaradi majhnega števila enot.", - # "- Podatek je manj pomemben ali težko izračunljiv.", - # "* {\\color{Orange}\\textbf{Oranžno}} so označena - # odstopanja - # ({\\color{Orange}\\textbf{2.4-2.6}}) in - # ({\\color{Orange}\\textbf{3.4-3.6}}), - # {\\color{BrickRed}\\textbf{rdeče}} pa - # odstopanja - # (pod {\\color{BrickRed}\\textbf{2.4}}) in - # (nad {\\color{BrickRed}\\textbf{3.6}}).") - # } else if (any(is.na(izbor.predmeti.po.izredni))) { - # opomba <- c(". Podatek ni prikazan zaradi majhnega števila enot.", - # "* {\\color{Orange}\\textbf{Oranžno}} so označena - # odstopanja - # ({\\color{Orange}\\textbf{2.4-2.6}}) in - # ({\\color{Orange}\\textbf{3.4-3.6}}), - # {\\color{BrickRed}\\textbf{rdeče}} pa - # odstopanja - # (pod {\\color{BrickRed}\\textbf{2.4}}) in - # (nad {\\color{BrickRed}\\textbf{3.6}}).") - # } else { - # opomba <- c("* {\\color{Orange}\\textbf{Oranžno}} so označena - # odstopanja - # ({\\color{Orange}\\textbf{2.4-2.6}}) in - # ({\\color{Orange}\\textbf{3.4-3.6}}), - # {\\color{BrickRed}\\textbf{rdeče}} pa - # odstopanja - # (pod {\\color{BrickRed}\\textbf{2.4}}) in - # (nad {\\color{BrickRed}\\textbf{3.6}}).") - # } - # - # if (sortByAverage) { - # izbor.predmeti.po.izredni <- izbor.predmeti.po.izredni[order(izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ, - # izbor.predmeti.po.izredni$N_anket, decreasing=TRUE),] - # rownames(izbor.predmeti.po.izredni) <- formatProgImena(rownames(izbor.predmeti.po.izredni), - # izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ) - # } else { # sort by name - # izbor.predmeti.po.izredni <- izbor.predmeti.po.izredni[order(rownames(izbor.predmeti.po.izredni), decreasing=FALSE),] - # } - # izbor.predmeti.po.izredni <- rbind(izbor.predmeti.po.izredni, colMeans(izbor.predmeti.po.izredni, na.rm=TRUE)) - # - # izbor.predmeti.po.izredni <- formatval(izbor.predmeti.po.izredni, KT = TRUE) - # # Število vshe predmetov v anketi PO - # vsota_predmeti.po.izr <- sum(izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ != ".") - 1 - # rownames(izbor.predmeti.po.izredni)[nrow(izbor.predmeti.po.izredni)] <- c(paste0("\\hline \\textbf{Povprečje fakultete (",vsota_predmeti.po.izr, " predmetov)}")) - # colnames(izbor.predmeti.po.izredni) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujočih", - # Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), - # "\\textbf{Skupaj}", "Kompetence",as.character(vars.predmet$krediti$ime.kratko))) - # - # # Latex tabela - # izbor.predmeti.po.izredni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.izredni, - # caption="Povprečja \\textbf{predmetov} (anketa PO izpitu), - # sortirana po \\textbf{Skupaj}", - # rowlabel="", - # file="", - # where="H", - # multicol=FALSE, - # longtable=TRUE, - # lines.page=1000, - # col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - # rowlabel.just="A{8.4cm}", - # insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - # } else { - # izbor.predmeti.po.izredni.tex <- NULL - # } - - - ################# - #ŠTUDIJSKA PRAKSA - ################# - - # Zberemo predmete ki imajo študijsko prakso (izbor.predmeti$PRAKSA==1) - izbor.predmeti.praksa <- izbor.predmeti.po[izbor.predmeti.po$PRAKSA==1 , - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$praksa,"_mean"),"predmet.ocena.SKUPAJ.praksa")] - - - if (all(!is.na(izbor.predmeti.praksa[1]))) { - if (nrow(izbor.predmeti.praksa) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.praksa)) & - any((!is.na(izbor.predmeti.praksa)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega števila enot.", - "- Podatek je manj pomemben ali težko izračunljiv." - ) - } else if (any(is.na(izbor.predmeti.praksa))) { - opomba <- ". Podatek ni prikazan zaradi majhnega števila enot." - } else { - opomba <- NULL - } - - if (sortByAverage) { - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa, - izbor.predmeti.praksa$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.praksa) <- make.unique(formatProgImena(rownames(izbor.predmeti.praksa), - izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa)) - } else { # sort by name - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(rownames(izbor.predmeti.praksa), decreasing=FALSE),] - } - izbor.predmeti.praksa <- rbind(izbor.predmeti.praksa, - colMeans(izbor.predmeti.praksa[c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$praksa, "_mean"), - "predmet.ocena.SKUPAJ.praksa")], na.rm=TRUE)) - - izbor.predmeti.praksa<-formatval(izbor.predmeti.praksa) - # Število predmetov, ki imajo študijsko prakso - vsota_praks <- sum(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa != ".") - 1 - rownames(izbor.predmeti.praksa)[nrow(izbor.predmeti.praksa)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",vsota_praks," študijskih praks)}")) - colnames(izbor.predmeti.praksa) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujočih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])), "\\textbf{Skupaj}")) - izbor.predmeti.praksa.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.praksa, - caption="Povprečja \\textbf{študijskih praks} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$praksa)),"|c"), - rowlabel.just="A{6.1cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.praksa.tex <- c("\\newline","\\newline", "Ni ocen za študijsko prakso.") - } - - } else { - izbor.predmeti.praksa.tex <- c("\\newline","\\newline", "Ni ocen za študijsko prakso.") - } - ## //ŠTUDIJSKA PRAKSA// ## - - - - # Naredimo še tabelo za anketo PO izpitu, kjer vrednosti v tabelah sortiramo glede na vrednost komponente USTREZNOST KT# - ## DODATNO SORTIJANJE PO USTREZNOSTI KREDITNIH TOČK# - # REDNI ŠTUDIJ - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po[izbor.predmeti.po$NACIN_STUDIJA=="1", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$po[-1],"_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean")] - - if (nrow(izbor.predmeti.po.redni.krediti) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.po.redni.krediti)) & - any((!is.na(izbor.predmeti.po.redni.krediti)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega števila enot.", - "- Podatek je manj pomemben ali težko izračunljiv.", - "* {\\color{Orange}\\textbf{Oranžno}} so označena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdeče}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else if (any(is.na(izbor.predmeti.po.redni.krediti))) { - opomba <- c(". Podatek ni prikazan zaradi majhnega števila enot.", - "* {\\color{Orange}\\textbf{Oranžno}} so označena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdeče}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else { - opomba <- c("* {\\color{Orange}\\textbf{Oranžno}} so označena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdeče}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } - - - if (sortbykrediti) { - rownames(izbor.predmeti.po.redni.krediti) <- formatProgImena(rownames(izbor.predmeti.po.redni.krediti), - izbor.predmeti.po.redni.krediti$predmet.ocena.krediti_mean) - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po.redni.krediti[order(izbor.predmeti.po.redni.krediti$predmet.ocena.krediti_mean, - decreasing=TRUE),] - } else { # sort by name - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po.redni.krediti[order(rownames(izbor.predmeti.po.redni.krediti), decreasing=FALSE),] - } - izbor.predmeti.po.redni.krediti <- rbind(izbor.predmeti.po.redni.krediti, colMeans(izbor.predmeti.po.redni.krediti, na.rm=TRUE)) - - izbor.predmeti.po.redni.krediti <- formatval(izbor.predmeti.po.redni.krediti, KT = TRUE) - vsota_krediti <- sum(izbor.predmeti.po.redni.krediti$predmet.ocena.SKUPAJ != ".") - 1 - rownames(izbor.predmeti.po.redni.krediti)[nrow(izbor.predmeti.po.redni.krediti)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",vsota_krediti," predmetov)}")) - colnames(izbor.predmeti.po.redni.krediti) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujočih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), - "\\textbf{Skupaj}","Kompetence", as.character(vars.predmet$krediti$ime.kratko))) - izbor.predmeti.po.redni.krediti.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.redni.krediti, - caption="Povprečja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.redni.krediti.tex <- "Ni ocen." - } - - - # # IZREDNI ŠTUDIJ - # izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po[izbor.predmeti.po$NACIN_STUDIJA=="2", - # c("ST_STUD","N_anket","sodelujocih.pct", - # "zavrnjenih.pct","neodzivnih.pct", - # paste0(vars.predmet$cont$po[-1],"_mean"), - # "predmet.ocena.SKUPAJ", - # "predmet.ocena.kompetence_mean", - # "predmet.ocena.krediti_mean")] - # - # if (nrow(izbor.predmeti.po.izredni.krediti) > 0) { - # # PO - izredni - # if (any(is.na(izbor.predmeti.po.izredni.krediti)) & - # any((!is.na(izbor.predmeti.po.izredni.krediti)) == "--")) { - # opomba <- c( - # ". Podatek ni prikazan zaradi majhnega števila enot.", - # "- Podatek je manj pomemben ali težko izračunljiv.", - # "* {\\color{Orange}\\textbf{Oranžno}} so označena - # odstopanja - # ({\\color{Orange}\\textbf{2.4-2.6}}) in - # ({\\color{Orange}\\textbf{3.4-3.6}}), - # {\\color{BrickRed}\\textbf{rdeče}} pa - # odstopanja - # (pod {\\color{BrickRed}\\textbf{2.4}}) in - # (nad {\\color{BrickRed}\\textbf{3.6}}).") - # } else if (any(is.na(izbor.predmeti.po.izredni.krediti))) { - # opomba <- c(". Podatek ni prikazan zaradi majhnega števila enot.", - # "* {\\color{Orange}\\textbf{Oranžno}} so označena - # odstopanja - # ({\\color{Orange}\\textbf{2.4-2.6}}) in - # ({\\color{Orange}\\textbf{3.4-3.6}}), - # {\\color{BrickRed}\\textbf{rdeče}} pa - # odstopanja - # (pod {\\color{BrickRed}\\textbf{2.4}}) in - # (nad {\\color{BrickRed}\\textbf{3.6}}).") - # } else { - # opomba <- c("* {\\color{Orange}\\textbf{Oranžno}} so označena - # odstopanja - # ({\\color{Orange}\\textbf{2.4-2.6}}) in - # ({\\color{Orange}\\textbf{3.4-3.6}}), - # {\\color{BrickRed}\\textbf{rdeče}} pa - # odstopanja - # (pod {\\color{BrickRed}\\textbf{2.4}}) in - # (nad {\\color{BrickRed}\\textbf{3.6}}).") - # } - # - # - # - # if (sortByAverage) { - # izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po.izredni.krediti[order(izbor.predmeti.po.izredni.krediti$predmet.ocena.krediti_mean, - # izbor.predmeti.po.izredni.krediti$N_anket, decreasing=TRUE),] - # rownames(izbor.predmeti.po.izredni.krediti) <- formatProgImena(rownames(izbor.predmeti.po.izredni.krediti), - # izbor.predmeti.po.izredni.krediti$predmet.ocena.krediti_mean) - # } else { # sort by name - # izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po.izredni.krediti[order(rownames(izbor.predmeti.po.izredni.krediti), - # decreasing=FALSE),] - # } - # izbor.predmeti.po.izredni.krediti <- rbind(izbor.predmeti.po.izredni.krediti, colMeans(izbor.predmeti.po.izredni.krediti, na.rm=TRUE)) - # - # izbor.predmeti.po.izredni.krediti <- formatval(izbor.predmeti.po.izredni.krediti, KT = TRUE) - # vsota_krediti.izr <- sum(izbor.predmeti.po.izredni.krediti[11] != ".") - 1 - # rownames(izbor.predmeti.po.izredni.krediti)[nrow(izbor.predmeti.po.izredni.krediti)] <- c(paste0("\\hline \\textbf{Povprečje ", fakulteta," (",vsota_krediti.izr," predmetov)}")) - # colnames(izbor.predmeti.po.izredni.krediti) <- latex.rotate(c("Št. vpisanih", "Št. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujočih", - # Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])), - # "\\textbf{Skupaj}", "Kompetence", as.character(vars.predmet$krediti$ime.kratko))) - # - # izbor.predmeti.po.izredni.krediti.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.izredni.krediti, - # caption="Povprečja \\textbf{predmetov} (anketa PO izpitu), - # sortirana po \\textbf{Ustreznost KT}", - # rowlabel="", - # file="", - # where="H", - # multicol=FALSE, - # longtable=TRUE, - # lines.page=1000, - # col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - # rowlabel.just="A{8cm}", - # insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - # } else { - # izbor.predmeti.po.izredni.krediti.tex <- "Ni ocen." - # } - - #################################################################################### - # PREVERI!!!!!!!!!!! - #-------------------- SET WORKING DIREKTORY -----------------------# - # Check which PC we are working from: WORk OR HOME - fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - - if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) - } else { - setwd(fpath) - } - - #--------------------------------------- TRENDI IN AGREGATI ---------------------------------------# - - - - ######################################################################################################## - } else { - izbor.predmeti.pred.redni.tex <- Niocen.pred - izbor.predmeti.pred.izredni.tex <- Niocen.pred - izbor.predmeti.po.redni.tex <- Niocen.po - izbor.predmeti.po.izredni.tex <- NULL - izbor.predmeti.po.redni.krediti.tex<- Niocen.po - izbor.predmeti.po.izredni.krediti.tex <- Niocen.po - progMeanPO.fak.skupaj.tex <- "Ni ocen" - izbor.predmeti.praksa.tex <- "Ni ocen" - izv.predmet.skupaj.tex <- "Ni ocen" - prog.PRED.I.tex <- Niocen.pred - prog.PRED.II.tex<- Niocen.pred - prog.PO.I.tex <- Niocen.po - prog.PO.II.tex <- Niocen.po - prog.KT.I.tex<- Niocen.po - prog.KT.II.tex <- Niocen.po - prog.IPP.II <- Niocen.pred - prog.IPP.I <- Niocen.pred - } -## /course averages/ ## - - -################## -# GENERIRANJE PDF# -################## -# # PREVERI!!!!!!!!!!! -# #-------------------- SET WORKING DIREKTORY -----------------------# -# # Check which PC we are working from: WORk OR HOME -# fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") -# -# if (!dir.exists(fpath)){ -# output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" -# setwd(output_dir) -# } else { -# setwd(fpath) -# } -# #------------------ //SET WORKING DIREKTORY// ---------------------# - - -tex.glava <- scan("Evalvacija/latexkosi/a-glava-program.tex", character(0), sep="\n", quiet=TRUE, encoding='UTF-8') -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) # Študijsko leto -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.glava <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) # Naslov poročila na prvi strani -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE) -Rdirektorij <- getwd() - -# Povprečja izvajalcev fakultete, ki ga nato zapišemo v podatkovni okvir izbor.tex -izvajalci.tex<- c("\\chapter{Povprečja po izvajalcih}", - paste("Pri izračunu povprečij za izvajalce imajo vsi predmeti (redni in izredni) enako težo, - ne glede na število študentov. V stolpcu \\guillemotright Št. predmetov\\guillemotleft \\ je - število vseh predmetov izvajalca, kjer so na anketo odgovarjali vsaj", minEnot, "študenti. - Podrobnosti so v metodoloških navodilih na koncu - poročila in na \\url{http://ul.1ka.si/metodologija}."), - izbor.izvajalci.skupaj.tex) -## //Povprečja izvajalcev fakultete// ## - -# Posamezne latex tabele sestavimo v celoto <- izbor.tex, na podalgi katere nastane PDF poročilo -izbor.tex <- c( - "\\chapter{Redni študij}", - "\\renewcommand{\\leftmark}{Predmeti - redni študij}", - paste( - "V tabelah so prikazana povprečja na lestvicah, - kjer so študenti označili strinjanje s trditvami, - ki se nanašajo na komponente pedagoške izvedbe - (1 - »sploh se ne strinjam«, 2 – »se bolj ne strinjam kot strinjam«, - 3 –»niti se ne strinjam niti se strinjam«, 4 – »se bolj strinjam kot ne strinjam«, - 5- »popolnoma se strinjam«). Vprašalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povprečja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranžno}, - kritično nizka povprečja (1.0–2.9) pa so obarvana {\\color{BrickRed}rdeče}. - Visoka povprečja (4.5–4.7), kjer je večina študentov podala oceno - »popolnoma se strinjam« (5), so obarvana {\\color{Chateau Green}zeleno}, - najvišja (4.8–5.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povprečje ni prikazano, - ampak je navedena pika ».«. Ocene za povprečja, ki temeljijo na nizkem - številu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so označene z enojnim () oziroma z dvojnim oklepajem (()). - Zaradi preglednosti so oklepaji navedeni le v prvih petih vrsticah, torej pri - odgovarjajočem številu enot oziroma deležu sodelovanja, čeprav se to seveda nanaša na vsa povprečja v vrstici. - Podrobne analize in podrobna metodološka pojasnila so v celotnem poročilu. - \\newline \\newline - Vključeni so vsi predmeti, ki so se izvajali na prvih dveh stopnjah, - oznake BD oziroma BP pa pomenijo bolonjski dodiplomski oziroma podiplomski študij. - Podobno se oznake B1 in B2 nanašajo na (morebitni) prenovljeni študij na prvi in drugi stopnji. - \\newline \\newline - Podrobne analize in podrobna metodološka pojasnila so v celotnem poročilu. - Osnovna metodološka pojasnila se nahajajo tudi na \\url{http://ul.1ka.si/metodologija}." - ), - "\\section{Predmeti}", - "\\subsection{Anketa PRED izpitom}", - izbor.predmeti.pred.redni.tex, - "\\newpage", - "\\subsection{Anketa PO izpitu}", - izbor.predmeti.po.redni.tex, - "\\newpage", - izbor.predmeti.po.redni.krediti.tex, - "\\newpage", - "\\renewcommand{\\leftmark}{Izvajalci pri predmetih - redni študij}", - "\\section{Izvajalci pri predmetih}", - izbor.izvajalci.redni.tex, - #----------------------------------------------------- - - # UPDATE 31.10.2019 # - # Če ni ocen za izredni študij - # tega v poročilu ne prikažemo več - # } else { - # "Ni ocen za izredni študij." - # }, - "\\newpage", - "\\renewcommand{\\leftmark}{Povprečja po izvajalcih}", - izvajalci.tex, - "\\chapter{Študijska praksa}", - "\\renewcommand{\\leftmark}{Študijska praksa}", - paste( - "Za evalvacijo študijske prakse velja enaka metodologija kot za anketo - PO izpitu, le komponente (vprašanja) so bile specifične. - Vprašalnik se nahaja na \\url{http://ul.1ka.si/praksa}." - ), - izbor.predmeti.praksa.tex, - "\\newpage", - "\\chapter{Povprečja po študijskih programih}", - "\\renewcommand{\\leftmark}{Študijski programi}", - paste( - "Izračunana so povprečja po vseh predmetih (oziroma po vseh izvedbah pri predmetih), - rednih in izrednih, ki so jih ocenjevali študenti določenega študijskega programa. - Predmeti z veliko in malo študenti imajo enako težo. V stolpcu \\guillemotright Št. predmetov\\guillemotleft \\ je - skupno število predmetov (oziroma izvajalcev pri predmetih), kjer so odgovarjali vsaj", - minEnot, - "študenti. - Med predmete določenega programa so vključeni tudi prosto izbirni predmeti (oziroma izvajalci pri predmetih) - drugih programov, če so jih študenti obravnavanega programa izbrali. - Opozorilo: V primeru, da je zaradi premajhnega (pod 4) števila enot pri predmetih v oceno - programa vključeno malo predmetov (npr. 1 ali 2), potem so take ocene programa manj natančne." - ), - "\\section{Dodiplomski študij}" - ) -# Posamezne latex tabele sestavimo v celoto - -# Sestavimo LATEX DOKUMENT, KI GA NATO ZAPIŠEMO V PDF: GLAVA(tex.glava), NAŠE VREDNOSTI OZ LATEX TABELE S TEKSTOM (izbor.tex), -# METODOLOŠKO POJASNILO NA KONCU (tex.okvir) in zaključim dokument z tex.noga -tex.izbor <- c( - tex.glava, - "\\setlength{\\tabcolsep}{4pt}", - izbor.tex, - "\\newpage", - "\\renewcommand{\\leftmark}{Metodološko pojasnilo}", - tex.okvir, - tex.noga -) - -# Ker uporabljamo ukaz LONGTABLE, se pri lomljenju tabel pojavlja -# angleška beseda continued, ki jo zamenjanjamo z besedo nadaljevanje. -tex.izbor <- - gsub('(continued)', '(nadaljevanje)', tex.izbor, fixed = TRUE) - - - -cat(unlist(tex.izbor), file=paste0("Evalvacija/results/",fakulteta,"/Programi/Fakulteta_",fakulteta,".tex", sep=""), sep="\n") -setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, "/Programi", sep = '/')) -tools::texi2pdf(file=paste("Fakulteta_",fakulteta,".tex", sep=""), quiet=TRUE, clean=TRUE) -setwd(Rdirektorij) - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/012_excel_clanice.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/012_excel_clanice.R deleted file mode 100644 index db435181b..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/012_excel_clanice.R +++ /dev/null @@ -1,400 +0,0 @@ -# Updated by Miha 10.9.2019 # -# Modified by Miha 17.10.2019 # - -####################################### -# EXPORT STUDENT EVALUATIONS TO EXCEL # -####################################### -# Za potrebe UL in posamezne lanice UL -# bomo za vsako leto, izraunane ocene -# komponent za izvajalce, IPP, predmete -# v anketi PO in v anketi PRED zapisali -# v excel bazo -# TO datoteko vsako leto posredujemo -# lanici. Prav tako pa bo ta datoteka -# sluila tudi ko bomo delali trende -# na nivoju lanice in trende na -# nivoju izvajalca -###################################### - - -#' @NOTE: PREDHODNO JE POTREBNO POGNATI SKRIPTO 00_dataanalysis.r!!! (v kolikor e ni bila pognana) -#' IMPORTANT: v tudijskem letu 18/19 v septembru smo kodo predelali, -#' kar pomeni, da v novih bazah namesto stolpca "predmet.ocena.SKUPAJ.pred" nastopa -#' predmet.ocena.SKUPAJ, podobno velja za ankeot PO! -#' TO JE POTREBNO USTREZNO nadomestiti, ko PRIDOBIVAMO ZADNJE PODATKE -#' ZA PREJNJA LETA TO NI POTREBNO -letoizpisa <- as.numeric(gsub("\\/\\d*", "", year)) -if(letoizpisa >= 2018) { - predmet.ocena.SKUPAJ.pred <- "predmet.ocena.SKUPAJ" - predmet.ocena.SKUPAJ.po <- "predmet.ocena.SKUPAJ" - N_anket_po_izpitu <- "N_anket" - sodelujocih.pct_po_izpitu <- "sodelujocih.pct" - zavrnjenih.pct_po_izpitu <- "zavrnjenih.pct" - neodzivnih.pct_po_izpitu <- "neodzivnih.pct" -} else{ - predmet.ocena.SKUPAJ.pred <- "predmet.ocena.SKUPAJ.pred" - predmet.ocena.SKUPAJ.po <- "predmet.ocena.SKUPAJ.po" - N_anket_po_izpitu <- "N_anket_po_izpitu" - sodelujocih.pct_po_izpitu <- "sodelujocih.pct_po_izpitu" - zavrnjenih.pct_po_izpitu <- "zavrnjenih.pct_po_izpitu" - neodzivnih.pct_po_izpitu <- "neodzivnih.pct_po_izpitu" -} -#-------------- POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA IZVAJALCE ----------------# -# which lecturers and courses should be included -# (all from predmeti.izbor and those from izvajalci.izbor that are also in predmeti.izbor) -predmeti.izbor <- povprecja.predmeti$predmet.sifra -if(letoizpisa >= 2018) { -predmeti.izbor.po <- povprecja.predmeti.po$predmet.sifra -} -izvajalci.izbor <- unique(povprecja.izvajalci$izvajalec.sifra) -# Podatki za izvajalce -izbor.izvajalci <- - subset( - povprecja.izvajalci, - predmet.sifra %in% predmeti.izbor & - izvajalec.sifra %in% izvajalci.izbor - ) - - -# Vrednosti komponent izvajalcev agregiramo glede na -# ifro izvajalca in ime izvajalca in izraunamo povpreje -izbor.izvajalci.skupaj <- - aggregate(izbor.izvajalci[c(paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ")], - by = izbor.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], - FUN = mean, - na.rm = TRUE) -# how many courses each lecturer has with enough answers -st.predmetov <- aggregate( - izbor.izvajalci$N_anket >= minEnot, - by = izbor.izvajalci[c("izvajalec.sifra")], - FUN = sum, - na.rm = TRUE -) - -# Also calculate number of all answers (tevilo vseh dogovorov pri predmetih izvajalca) -st.odg <- aggregate( - izbor.izvajalci$N_anket, - by = izbor.izvajalci[c("izvajalec.sifra")], - FUN = sum, - na.rm = TRUE -) - - -# Skupni podatki za izvajalce, ki jih bomo izvozili v excel zavihek -izbor.izvajalci.skupaj <- - Reduce( - function(x, y) - merge( - x, - y, - by = "izvajalec.sifra", - all = TRUE, - sort = FALSE - ) , - list( - st.predmetov, - st.odg, - izbor.izvajalci.skupaj) - ) - -# Sort by skupno povpreje komponent izvajalca -izbor.izvajalci.skupaj <- - izbor.izvajalci.skupaj[order(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, decreasing = TRUE), ] - -# Zaokroimo vrednosti -izbor.izvajalci.skupaj[5:ncol(izbor.izvajalci.skupaj)] <- - round(izbor.izvajalci.skupaj[5:ncol(izbor.izvajalci.skupaj)], 1) - -# Preuredimo vrstni red zaradi zapisa v Excel -izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj %>% - dplyr::select(-izvajalec.sifra,-everything(), NAZIV.PEDAGOGA, everything()) - -# Colnames -colnames(izbor.izvajalci.skupaj)[1:11] <- - c("Izvajalec", - "Izvajalec id", - "t. predmetov", - "t. odgovorov", - "Kakovost", - "Pripravljenost", - "Razumljivost", - "Zanimivost", - "Kritinost", - "Korektnost", - "SKUPAJ") - -rownames(izbor.izvajalci.skupaj) <- make.unique(izbor.izvajalci.skupaj$Izvajalec) -izbor.izvajalci.skupaj$Izvajalec <- NULL -#------------- //POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA IZVAJALCE// --------------# - - - -#-------- POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA IZVAJALCE PRI PREDMETIH ---------# -# IPP: K imenom izvajalcem dodamo tudi predmete za katere imajo ocene - -rownames(izbor.izvajalci) <- - make.unique(paste0( - sapply(povprecja.izvajalci[rownames(izbor.izvajalci), "NAZIV.PEDAGOGA"], titula.rm), - " (", - povprecja.izvajalci[rownames(izbor.izvajalci), "ime.predmeta"], - ")" - )) - -# izbor.izvajalci$IPP <- -# paste0(izbor.izvajalci$NAZIV.PEDAGOGA, " (", izbor.izvajalci$ime.predmeta , ")") - -# IPP redni tudij (NACIN_STUDIJA == "1") -izbor.ipp <- - izbor.izvajalci[c( - "STOPNJA", - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ", - "izvajalec.sifra", - "predmet.sifra" - )] - -# Sortiramo v padajoem vrstnem redu glede na skupno povpreje komponent IPP -izbor.ipp <- - izbor.ipp[order(izbor.ipp$izvajalec.ocena.SKUPAJ, decreasing = TRUE), ] - - # Zdruimo vrstice: povpreje komponent izvajalcev in skupno povpreje komponent izvajalcev -izbor.ipp[4:6] <- round(izbor.ipp[4:6], 0) -izbor.ipp[7:13] <- round(izbor.ipp[7:13], 1) - -colnames(izbor.ipp)[1:15] <- - c( - "stopnja (1=BD, 2=PB)", - "t. vpisanih", - "t. odgovorov", - "% odgovorov", - "% zavrnitev", - "% nesodelujoih", - "Kakovost", - "Pripravljenost", - "Razumljivost", - "Zanimivost", - "Kritinost", - "Korektnost", - "SKUPAJ", - "Izvajalec id", - "Predmet id" - ) -#------ //POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA IZVAJALCE PRI PREDMETIH// -------# - - -#-------- POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA PREDMETE (ANKETA PRED) ---------# -# Izberemo predmete, ki so imeli dovolj enot -izbor.predmeti <- subset(povprecja.predmeti, predmet.sifra %in% predmeti.izbor) -povprecja.predmeti <- povprecja.predmeti[!(is.na(povprecja.predmeti$ime.predmeta)), ] -rownames(izbor.predmeti) <- make.unique(povprecja.predmeti[rownames(izbor.predmeti), "ime.predmeta"]) -# Podatki potrebni za zapis v excel zavihek - -izbor.predmeti.pred <- - izbor.predmeti[c( - "STOPNJA", - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - predmet.ocena.SKUPAJ.pred, - "predmet.sifra" - )] - -# Sortiramo po skupnem povpreju sedmih komponent predmeta -izbor.predmeti.pred <- - izbor.predmeti.pred[order( - izbor.predmeti.pred[predmet.ocena.SKUPAJ.pred], - decreasing = TRUE - ), ] - -# Round number -izbor.predmeti.pred[4:6] <- round(izbor.predmeti.pred[4:6], 0) -izbor.predmeti.pred[7:14] <- round(izbor.predmeti.pred[7:14], 1) - -# Add colnames -colnames(izbor.predmeti.pred)[1:15] <- - c( - "stopnja (1=BD, 2=PB)", - "t. vpisanih", - "t. odgovorov", - "% odgovorov", - "% zavrnitev", - "% nesodelujoih", - "Zadovoljstvo", - "Usklajenost", - "Samostojnost", - "Literatura", - "Obveenost", - "Informiranost", - "Preverjanje", - "SKUPAJ", - "Predmet id" - ) -#------ //POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA PREDMETE (ANKETA PRED)// -------# - - - -#-------- POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA PREDMETE (ANKETA PO) ---------# -if(letoizpisa >= 2018) { -izbor.predmeti.PO <- subset(povprecja.predmeti.po, predmet.sifra %in% predmeti.izbor.po) -povprecja.predmeti.po <- povprecja.predmeti.po[!(is.na(povprecja.predmeti.po$ime.predmeta)), ] -rownames(izbor.predmeti.PO) <- make.unique(povprecja.predmeti.po[rownames(izbor.predmeti.PO), "ime.predmeta"]) -} else{ - izbor.predmeti.PO <- izbor.predmeti -} - -izbor.predmeti.po <- - izbor.predmeti.PO[c( - "STOPNJA", - "ST_STUD", - N_anket_po_izpitu, - sodelujocih.pct_po_izpitu, - zavrnjenih.pct_po_izpitu, - neodzivnih.pct_po_izpitu, - paste0(vars.predmet$cont$po, "_mean"), - predmet.ocena.SKUPAJ.po, - "predmet.ocena.krediti_mean", - "predmet.sifra" - )] - -# Order by total mean of three components of anketa PO -izbor.predmeti.po <- - izbor.predmeti.po[order(izbor.predmeti.po[predmet.ocena.SKUPAJ.po], - decreasing = TRUE),] - -# Round number -izbor.predmeti.po[4:6] <- round(izbor.predmeti.po[4:6], 0) -izbor.predmeti.po[7:12] <- round(izbor.predmeti.po[7:12], 1) - - -# Kompetence in Ustreznost kreditnih tok prikaemo na koncu tabele -izbor.predmeti.po <- izbor.predmeti.po %>% - dplyr::select( - -predmet.ocena.kompetence_mean, - -predmet.ocena.krediti_mean, - -predmet.sifra, - everything() - ) - -# Add colnames -colnames(izbor.predmeti.po)[1:13] <- - c( - "stopnja (1=BD, 2=PB)", - "t. vpisanih", - "t. odgovorov", - "% odgovorov", - "% zavrnitev", - "% nesodelujoih", - "Vsebine", - "Naloge", - "Kriteriji", - "SKUPAJ", - "Kompetence", - "Ustreznost KT", - "Predmet id" - ) -#------ //POVPREJA, T. ODGOVOROV IN T. PREDMETOV ZA PREDMETE (ANKETA PO)// -------# - - - -#======================# -# UPDATE 17. 10. 2019 # -#======================# -# Po novem bomo v Excel za lanice -# zapisali tudi ocene za tudijsko prakso -#------------------------------- TUDIJSKA PRAKSA ---------------------------# -izbor.predmeti.praksa <- - izbor.predmeti.PO[izbor.predmeti.PO$PRAKSA == 1,c( - "STOPNJA", - "ST_STUD", - N_anket_po_izpitu, - sodelujocih.pct_po_izpitu, - zavrnjenih.pct_po_izpitu, - neodzivnih.pct_po_izpitu, - paste0(vars.predmet$cont$praksa, "_mean"), - "predmet.ocena.SKUPAJ.praksa", - "predmet.sifra", - "PRAKSA" - )] - -# Order by total mean of three components of anketa PO -izbor.predmeti.praksa <- - izbor.predmeti.praksa[order(izbor.predmeti.praksa["predmet.ocena.SKUPAJ.praksa"], - decreasing = TRUE),] - -# Round number -izbor.predmeti.praksa[4:6] <- round(izbor.predmeti.praksa[4:6], 0) -izbor.predmeti.praksa[7:16] <- round(izbor.predmeti.praksa[7:16], 1) - - -# Add colnames -colnames(izbor.predmeti.praksa)[1:18] <- - c( - "stopnja (1=BD, 2=PB)", - "t. vpisanih", - "t. odgovorov", - "% odgovorov", - "% zavrnitev", - "% nesodelujoih", - "Ponudba", - "Pomo", - "Navodila", - "Notranji mentor", - "Sodel. mentorjev", - "Strok. kompetence", - "Zunanji mentorji", - "Nain izvajanja", - "Dolina", - "SKUPAJ", - "Predmet id", - "PRAKSA" - ) - - -#----------------------------- //TUDIJSKA PRAKSA// -------------------------# - - - -#----------------------- EXPORT TO EXCEL -------------------------# -library(xlsx) -# Data -files <- - list(izbor.izvajalci.skupaj, - izbor.ipp, - izbor.predmeti.pred, - izbor.predmeti.po, - if (nrow(izbor.predmeti.praksa) > 0) { - izbor.predmeti.praksa}) -# Sheetnames -name <- - c( - "IZVAJALCI", - "IZVAJALCI PRI PREDMETIH", - "PREDMETI (ANKETA PRED)", - "PREDMETI (ANKETA PO)", - if (nrow(izbor.predmeti.praksa) > 0) { - "PRAKSA (ANKETA PO)" - } - ) -# Create excel file with 4 or 5 sheets (PRAKSA) -for (i in seq_along(files[!sapply(files, is.null)])) { - # Write to excel - write.xlsx( - x = files[[i]], - #' spremenljivka @year je deklarirana v osnovni kodi - file = paste0("Excel rezultati_",fakulteta,"_",gsub("[/]", "_", year),".xlsx"), - sheetName = name[i], - row.names = TRUE, - append = TRUE - ) -} -#---------------------- //EXPORT TO EXCEL// -----------------------# - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/013_PDF_studijska_praksa.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/013_PDF_studijska_praksa.R deleted file mode 100644 index e81fbbd1a..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/013_PDF_studijska_praksa.R +++ /dev/null @@ -1,478 +0,0 @@ -# KODO JE POTEREBNO NUJNO PREDELTAI, KER GRE ZA KODO IZ 2016!!!! -# A se vrnemo nazaj konec leta -# PREVERI!!!!!!!!!!! -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# -# run first -#params <- commandArgs(trailingOnly=TRUE) -#ID <- params[1] -#sesionID <- params[2] #Dodajanje tevil na koncu pdf/tex datotek za Petra -#source("Evalvacija/R/koda.r") - -sortByAverage <- TRUE # if true sort by average, else by name -sortbykrediti<-TRUE #if true sort by krediti (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - -# which lecturers and courses should be included (all from predmeti.izbor) -predmeti.izbor <- povprecja.predmeti.po$predmet.sifra - -# making latex file -izbor.tex <- NULL - -## course averages ## -izbor.predmeti <- subset(povprecja.predmeti.po, predmet.sifra %in% predmeti.izbor) - -completeFun <- function(data, desiredCols) { - completeVec <- complete.cases(data[, desiredCols]) - return(data[completeVec, ]) -} - -izbor.predmeti <- completeFun(izbor.predmeti, "ime.predmeta") -if (nrow(izbor.predmeti) > 0) { - rownames(izbor.predmeti) <- make.unique(povprecja.predmeti.po[rownames(izbor.predmeti), "ime.predmeta"]) - - - #POROILO ZA PREDMETE KI VSEBUJEJO PRAKSO - izbor.predmeti.praksa1 <- izbor.predmeti[c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$praksa,"_mean"), - "predmet.ocena.SKUPAJ.praksa", "PRAKSA")] - izbor.predmeti.praksa1 <- izbor.predmeti[izbor.predmeti$PRAKSA==1 ,"predmet.sifra"] - - - - part <- NULL - predmeti <- NULL - - if (all(!is.na(izbor.predmeti.praksa1))) { - for (predmet in as.character(izbor.predmeti.praksa1)) { - povprecja.predmet.temp <- subset(povprecja.predmeti.po, predmet.sifra==predmet) - data.predmet.temp <- subset(data.predmeti.po, predmet.sifra==predmet & (veljavna)) - - ## stopnja sodelovanja ## - sodelujocih <- povprecja.predmet.temp$N_anket - stopnjaPredmeta <- povprecja.predmet.temp$STOPNJA - if (stopnjaPredmeta==1) { - FDVstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - FDVstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', povprecja.predmet.temp$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - FDVstring <- '' - } - imepredmeta <- sub("^BD |^BP ", "", povprecja.predmet.temp$ime.predmeta) # ime brez BD/BP predpone - - - pdf(paste("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_dejmoprobat5.pdf", sep=''), family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.po <- cbind(c(povprecja.predmet.temp$sodelujocih.pct, povprecja.predmet.temp$zavrnjenih.pct, povprecja.predmet.temp$neodzivnih.pct), - c(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"], Fpo[as.character(stopnjaPredmeta),"zavrnjenih.pct"], - Fpo[as.character(stopnjaPredmeta),"neodzivnih.pct"])) - - ## Get the y-values for text - ys.po <- apply(mat.po, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store x data - xs.po <- barplot(mat.po, names.arg=c('Predmet\n', FDVstring[2]), col=c("firebrick3", "dodgerblue3", "mistyrose1"), ylim=c(0,100), space=c(0,1)) - - ## Add text - text(rep(xs.po, each=nrow(ys.po)), c(ys.po), labels=paste0(round(c(mat.po), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni pristopil", "Zavrnili sodelovanje", "Odgovarjal"), col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - - # Tekst - tex.sodelovanje1 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za predmet \\guillemotright ", - imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", - paste0(povprecja.predmet.temp$N_anket), " od skupno ", - povprecja.predmet.temp$ST_STUD, - " tudentov, kar je \\textbf{", round(povprecja.predmet.temp$sodelujocih.pct), - "\\%} vseh vpisanih tudentov. ", - "Povpreje ", FDVstring[1], " predmetov ", fakulteta, " je sicer - znaalo \\textbf{", round(Fpo[as.character(stopnjaPredmeta), - "sodelujocih.pct"]), "\\%}."), - "\\begin{figure}[H]", "\\caption{Struktura tudentov glede na odgovarjanje (\\%) - tudijska praksa}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, "_dejmoprobat5.pdf}}"), "\\end{figure}") - - - # Generiranje tabel - tabela.praksa <- cbind.data.frame( - N=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_N")]), - mean=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_mean")]), - sd=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_sd")]), - min=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_min")]), - max=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_max")])) - - povprecja.praksa <- tabela.praksa$mean - - tabela.praksa[is.na(tabela.praksa)] <- "." - - if (min(as.numeric(tabela.praksa$N)) < minEnot) { - opomba <- '{\\footnotesize { Podatek ni prikazan zaradi majhnega tevila enot.}}' - } else {opomba <- "{\\footnotesize {}}"} - - # Faculty mean for all courses - F.praksa <- data.frame(F.avg.po[paste0(vars.predmet$cont$praksa,"_mean")]) - colnames(F.praksa) <- 'Fmean' - tabela.praksa <- cbind(tabela.praksa, F.praksa) - - - tabela.praksa <- rbind(tabela.praksa, c('', povprecja.predmet.temp$predmet.ocena.SKUPAJ.praksa, '', '', '', mean(tabela.praksa$Fmean, na.rm=TRUE))) - tabela.contR.praksa <- formatval(tabela.praksa) - - rownames(tabela.contR.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$praksa])), '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - colnames(tabela.contR.praksa) <- c('n', 'povpreje', 'sd', 'min', 'max', 'povpreje') - tabela.contR.praksa.tex1 <- capture.output(Hmisc::latex(toLatex(tabela.contR.praksa), - caption="Povpreje komponent tudijske prakse (lestvica 1-5)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", fakulteta), - n.cgroup=c(5,1), - col.just=rep_len('c', ncol(tabela.contR.praksa)), - rowlabel.just='p{9.5cm}', - insert.bottom=opomba)) - - - - - if (sum(!is.na(povprecja.praksa)) < 4) {povprecja.praksa <- povprecja.praksa[!is.na(povprecja.praksa)] <- NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(F.praksa, as.numeric(povprecja.praksa)))), row.names=1:4, check.names=F) - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])) - radar.f <- radar.cont - star.radar2 <- as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]) - - colnames(radar.f) <- sub(" ", "\n", star.radar2) - CairoPDF(paste0('Evalvacija/results/',fakulteta,'/part-predmet-slike/', predmet, '_radar.pdf'), family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) - fmsb::radarchart(radar.f, pcol=c('dodgerblue3','firebrick3'), cglcol='gray75', plwd=2, plty=1, cglwd=1, cglty=1, seg=4, axistype=1, caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Predmet", paste(fakulteta, "povpreje")), col=c('firebrick3', 'dodgerblue3'), lty=1, lwd=2, bty='n') - dev.off() - - # Porazdelitev odgovorov - porazdelitev1 <- t(sapply(data.predmet.temp[,vars.predmet$cont$praksa], function(x) table(factor(x, levels=someMiss.po)))) - # samo kjer je dovolj enot - porazdelitev1[rowSums(porazdelitev1) < minEnot,] <- NA - porazdelitev1 <- cbind(porazdelitev1, rowSums(porazdelitev1, na.rm=TRUE)) - porazdelitev1[is.na(porazdelitev1)] <- "." - - ## - rownames(porazdelitev1) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]))) - colnames(porazdelitev1) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}","\\textbf{Ne elim odgovoriti}","\\textbf{Nimam dovolj informacij}","\\textbf{Skupaj}") - - porazdelitev1.tex <- capture.output(Hmisc::latex(porazdelitev1, caption='Podrobna porazdelitev odgovorov za ocene komponent \\textbf{tudijske prakse}', rowlabel='\\textbf{Komponente}', file='', where='H', col.just=rep_len('c', ncol(porazdelitev1)), insert.bottom=opomba)) - ## /podrobna porazdelitev1 ocen/ ## - - data.text1 <- lapply(data.predmet.temp[vars.predmet$text$vars[-c(1,2,3)]], trim) - for (textvar in names(data.text1)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text1[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', x=data.text1[[textvar]][!data.text1[[textvar]] %in% junk.komentar]) - } - - tex.text1 <- NULL - for (textvar in names(data.text1)) { - komentarji <- data.text1[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text1 <- append(tex.text1, append(paste('\\subsection{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text1 <- append(tex.text1, append(paste('\\subsection{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), '- Ni podanih komentarjev. -')) - } - } - # tex.sodelovanje2 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za predmet \\guillemotright ", imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", paste0(povprecja.predmet.temp$N_anket), " od skupno ", povprecja.predmet.temp$ST_STUD, " tudentov, kar je \\textbf{", round(povprecja.predmet.temp$sodelujocih.pct), "\\%} vseh vpisanih tudentov. ", - # "Povpreje ", FDVstring[1], " predmetov ", fakulteta, " je sicer znaalo \\textbf{", round(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"]), "\\%}."), - # "\\begin{figure}[H]", "\\caption{Struktura tudentov glede na odgovarjanje (\\%) - tudijska praksa}", paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", predmet, "_dejmoprobat5.pdf}}"), "\\end{figure}") - - - part$predmet[[predmet]]<-c(paste0("\\chapter{", imepredmeta,"}", sep=""), - "\\section{Podrobne analize odgovorov}",tabela.contR.praksa.tex1, - "\\begin{figure}[H]", "\\caption{Povpreja kategorij odgovorov za komponente \\textbf{prakse}}", - paste0('\\centerline{\\includegraphics[width=0.85\\textwidth]{../part-predmet-slike/', predmet, '_radar.pdf}}'), "\\end{figure}", - - porazdelitev1.tex, tex.text1) - - } - - - izbor.predmeti.praksa <- izbor.predmeti[c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$praksa,"_mean"),"predmet.ocena.SKUPAJ.praksa", - "PRAKSA","predmet.sifra")] - izbor.predmeti.praksa <- izbor.predmeti[izbor.predmeti$PRAKSA==1 ,c("ST_STUD","N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$praksa,"_mean"), - "predmet.ocena.SKUPAJ.praksa","predmet.sifra")] - - - izbor.predmeti.praksa <- izbor.predmeti.praksa[,-which(names(izbor.predmeti.praksa) == "predmet.sifra")] - - if (nrow(izbor.predmeti.praksa) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.praksa)) & - any((!is.na(izbor.predmeti.praksa)) == "--")) { - opomba <- c( - ". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv." - ) - } else if (any(is.na(izbor.predmeti.praksa))) { - opomba <- ". Podatek ni prikazan zaradi majhnega tevila enot." - } else { - opomba <- NULL - } - - - if (sortByAverage) { - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa, izbor.predmeti.praksa$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.praksa) <- make.unique(formatProgImena(rownames(izbor.predmeti.praksa), izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa)) - } else { # sort by name - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(rownames(izbor.predmeti.praksa), decreasing=FALSE),] - } - izbor.predmeti.praksa <- rbind(izbor.predmeti.praksa, colMeans(izbor.predmeti.praksa, na.rm=TRUE)) - izbor.predmeti.praksa <- formatval(izbor.predmeti.praksa) - rownames(izbor.predmeti.praksa)[nrow(izbor.predmeti.praksa)] <- "\\hline \\textbf{Povpreje fakultete (tudijska praksa)}" - colnames(izbor.predmeti.praksa) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])), "\\textbf{Skupaj}")) - izbor.predmeti.praksa.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.praksa, - caption="Povpreje komponent tudijske prakse (sortirano po povpreju \\textbf{Skupaj})", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$praksa)),"|c"), - rowlabel.just="p{4cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.praksa.tex <- "Ni ocen." - } - ############################## -} else { - izbor.predmeti.praksa.tex <- "Ni ocen." -} - -} else { - izbor.predmeti.praksa.tex <- "Ni ocen." -} -## /course averages/ ## - - -#################### -# UPDAte 20.9.2019 # -#################### -# Po novem bomo v poroilo prakse zapisali tudi trende -# V ta namen smo zapisali podatke v -# C:\MIHA DELO\FDV PROJEKT EVALVACIJE UL\EVALVACIJE 2018_2019 PREDELAVA\AVGUST UPDATE KODE\Test Nove kode\FDV\Evalvacija\results\praksa\data -praksa.file <- list.files(path = paste0("Evalvacija/results/",fakulteta,"/praksa/data"), pattern = "povprecja.praks.") - - -# PO (inlcuding kompetence, praksa, KT) ----- -# V zadnjem letu (2019) smo kodo predelali tako, da v -# Anketi PO, tevilo v za posamezen predmet ali izvajalca ni poimenovano -# ve kot "N_anket_po_izpitu" ampak kot "N_anket". Zato to ustrezno -# preimenujemo, saj imamo pri prejnjih letih -# N_anket_po_izpitu -imen.c <- function(x) { - ifelse( - !"N_anket_po_izpitu" %in% colnames(x), - colnames(x)[colnames(x) == "N_anket"] <- - "N_anket_po_izpitu", - colnames(x) - ) - return(x) - -} - - -# Import data -praksa.trend <- - lapply(praksa.file, function(x) - read.csv2(paste0("Evalvacija/results/",fakulteta,"/praksa/data/",x), stringsAsFactors = FALSE, header = TRUE)) - - -# Neeljeni stolpci za potrebe latex tabele -stol.omit <- - c( - "sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu", - "neodzivnih.pct_po_izpitu", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "predmet.ocena.SKUPAJ.praksa" - ) - -praksa.tr <- praksa.trend %>% - lapply(., imen.c) %>% - lapply(., tidy.m) %>% - lapply(., function(x) x[!colnames(x) %in% stol.omit]) %>% - reduce(full_join, by = "X") - -# Za potrebe latex tabelo potrebujemo e leta, -# za aktere imamo podatke -praksa.year <- praksa.trend %>% - lapply(., imen.c) %>% - lapply(., function(x) x[!colnames(x) %in% stol.omit]) - -# -leto.pr <- data.frame(leto = unique(do.call(rbind, praksa.year)$year)) - - - -#Zdruimo trende in morebitne agregate za otrebe latex tabele -praksa.tr <- - suppressWarnings(merge( - praksa.tr, - agregati.praksa, - by.x = "X", - by.y = "ime.predmeta", - all.x = TRUE - )) - - - -# Podatki, ki jih potrebujemo v latex tabeli -praksa.tr <- - praksa.tr[grepl("X|N_anket|SKUPAJ", colnames(praksa.tr))] -# Imena vrstic v latex tabeli bodo imena predmetov -rownames(praksa.tr) <- make.unique(praksa.tr$X) -# Ta potrebe latex tabele to odstranimo saj stolpca -# z imeni predmetov ve ne potrebujemo -praksa.tr$X <- NULL -# Preverimo ali se katero leto doloen predmet na programu -# ni izvajal in to oznaimo z "--" - -praksa.tr <- agreg.prog(praksa.tr, dtLeto = leto.pr) -# Final data for latex table -praksa.tr <- praksa.tr[grepl("^SKUPAJ|stolpec", colnames(praksa.tr))] - -# preserve base data frame rownames upon filtering in dplyr chain -library(tibble) - -praksa.tr <- praksa.tr %>% - rownames_to_column('x') %>% - filter_at(vars(starts_with("SKUPAJ")), any_vars(!. %in% c(".", "--"))) %>% - column_to_rownames('x') -# trend.praksa.tex <- tb.lat( -# praksa.tr, -# tabname = "Povpreja za agregirane ocene devetih komponent \\textbf{tudijske prakse} (anketa PO izpitu)", -# "A{8cm}", -# namen = "TRENDI" -# ) - -trend.praksa.tex <- tabelaProg( - praksa.tr , - imetabele = "Povpreja za agregirane ocene devetih komponent \\textbf{tudijske prakse} (anketa PO izpitu) sortirana po abecedi", - dtLeto = leto.pr -) - -################# -# GENERIRANJE PDF -################ - - - -tex.glava <- scan("Evalvacija/latexkosi/a-glava-praksa.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE) -Rdirektorij <- getwd() - - -izbor.tex <- - c("\\chapter{tudijska praksa}", if (any(izbor.predmeti.praksa.tex != "Ni ocen.")) { - c( - "V tabelah so prikazana povpreja na lestvicah, - kjer so tudenti oznaili strinjanje s trditvami, - ki se nanaajo na komponente pedagoke izvedbe (1 - sploh se ne strinjam, - 2 se bolj ne strinjam kot strinjam, 3 niti se ne strinjam niti se strinjam, - 4 se bolj strinjam kot ne strinjam, 5- popolnoma se strinjam). - Vpraalniki so na povezavi \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - kritino nizka povpreja (1.0-2.9) pa so obarvana {\\color{BrickRed}rdee}. - Visoka povpreja (4.5-4.7), kjer je veina tudentov podala oceno - popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - najvija (4.8-5.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - Ocene za povpreja, ki temeljijo na nizkem tevilu enot (od 4 do 9), ali pa jih - spremlja nizka stopnja sodelovanja, so manj kakovostne, zato so oznaene z - enojnim () oziroma z dvojnim oklepajem (()). - Natanno tevilo vpisanih in sodelujoih tudentov je navedeno v pregledu trendov po predmetih. - Oznaka -- pomeni, da se predmet v doloenem letu ni izvajal ali pa - odgovarjajoi pedagog ni bil vkljuen med izvajalce. Nadaljnje podrobnosti - so v Metodolokih pojasnilih na koncu poroila. - Osnovna metodoloka pojasnila se nahajajo tudi na - \\url{http://ul.1ka.si/metodologija}.", - izbor.predmeti.praksa.tex - ) - } else { - "Za tudijsko prakso ni ocen." - }) - -# Trendi -tr.pr <- c("\\chapter{Trendi za ocene komponent tudijskih praks}", - "V primeru, ko so odgovarjale manj kot tiri enote, - izraun povpreje za odgovarjajoe leto ni prikazan, - je pa pridruen izraunu za agregirano povpreje za ve let. - Pri tem so uporabljene naslednje oznake: - \\begin{itemize} - \\item . predmet se je izvajal, vendar so odgovorile manj kot tiri enote (0, 1, 2 ali 3); - \\item -- predmet se ni izvajal ali pa odgovarjajoi pedagog ni bil vkljuen med izvajalce; - \\item a nadomea oznako ., kadar je bilo v doloenem letu premalo enot (manj kot tiri), hkrati pa skupno tevilo enot v zaporedju celic s premajhnim tevilom enot dosee vsaj tiri (4), kar omogoa izraun agregiranega povpreja, ki se nahaja v stolpcu Povp. a; - \\item b ima podoben pomen, kot a in se pojavi v primerih, ko je iz celic s premalo enotami mogoe oblikovati dve zaporedji, vsako z vsaj tirimi enotami, kar omogoa izraun dveh agregiranih povpreij v stolpcih Povp. a oziroma Povp. b; - \\item 3.6\\textsuperscript{a} oziroma 3.6\\textsuperscript{b} pomeni agregirano povpreje za vse celice, ki so oznaena z a ali b; - \\item (3.6), (3.6)\\textsuperscript{a} ali (3.6)\\textsuperscript{b} enojni oklepaj pomeni, da se povpreje nanaa le na 5-9 enot; - \\item ((3.6)), ((3.6))\\textsuperscript{a} ali ((3.6))\\textsuperscript{b} dvojni oklepaj pomeni, da se povpreje nanaa le na 4 enote. - \\end{itemize} - Podroben opis in ilustracija postopka se nahaja v - Metodolokih pojasnilih in tudi na \\url{http://ul.1ka.si/agregati/ul.1ka.si/agregati}.", - trend.praksa.tex) - -izbor.tex <- - gsub('(continued)', '(nadaljevanje)', izbor.tex, fixed = TRUE) - -tex.izbor <- - c( - tex.glava, - izbor.tex, - part$predmet, - "\\newpage", - tr.pr, - "\\newpage", - tex.okvir, - tex.noga - ) - - # Ker uporabljamo ukaz LONGTABLE, se pri lomljenju tabel pojavlja - - -if (sortByAverage) {sortiranjetext <- "po_povprecju"} else {sortiranjetext <- "po_imenih"} - -#write.table(tex.izbor, file=paste0("Praksa_", sortiranjetext,"_", fakulteta, ".tex"), sep="\t",append=F) -cat(unlist(tex.izbor), file=paste0("Evalvacija/results/",fakulteta,"/praksa/Studijska_praksa_", fakulteta, ".tex"), sep="\n") -setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, "/praksa", sep = '/')) -#lapply(unlist(tex.izbor), write, file=paste0("Praksa_", sortiranjetext,"_", fakulteta, ".tex"), append=TRUE, ncolumns=1000) -tools::texi2pdf(file=paste0("Studijska_praksa_", fakulteta, ".tex"), quiet=TRUE, clean=TRUE) -setwd(Rdirektorij) - - -# SAVE THE DATA -#source("Evalvacija/R/data_trendi_praksa_faculty.r") - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/02_IDfaculty.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/02_IDfaculty.R deleted file mode 100644 index e366d26fb..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/02_IDfaculty.R +++ /dev/null @@ -1,158 +0,0 @@ -# ------------------------- DEFINE FACULTY ID -------------------------------# -# Opredelimo ID fakultete, ki skrbi za to da se v poročilu (kjer je dogovorjeno) izpiše kratice fakultete, -# ime fakultete ter izriše logo fakultete. -# (glej poročilo za izvajalca, ki ga generira R. skripta koda-izvajalec_predmet) -# ID skrbi tudi, da preberemo ustrezne CSV datoteke za ustrezno Fakulteto. -# Ko se koda prenese na strežnik ID zakomentiramo, saj ga Peter ne Potrebuje -ID <- ID -fakulteta <- "" -ime.fakultete <- "" -if (ID == 3000001) { - # Purpose: Read CSV file which has "FDV" in the end of the file. - fakulteta <- "PEF" - # V primeru ko/če ima izvajalec študijsko prasko, se v izpisu za - # izvajalca ustvari poglavje: ŠTUDIJSKA PRAKSA, - # kjer se pri izrisu barplotov, namesto izpisa "Povprečje PEF", izpiše: "Prakse PEF" - studijska.praksa <- "Prakse PEF" - # na prvi strani PDF poročila pod sliko - ime.fakultete <- "Pedagoška fakulteta" - # na prvi strani PDF poročila doda usterzno sliko fakultete - # (logo uporabimo pri generiranju poročil glej koda-izvajalec_predmet.r) - logo <- "logo_PEF" -} else if (ID == 3000004) { - fakulteta <- "FU" - studijska.praksa <- "Prakse FU" - ime.fakultete <- "Fakulteta za upravo" - logo <- "logo_FU" -} else if (ID == 3000006) { - fakulteta <- "FSD" - studijska.praksa <- "Prakse FSD" - ime.fakultete <- "Fakulteta za socialno delo" - logo <- "logo_FSD" -} else if (ID == 3000009) { - fakulteta <- "FPP" - studijska.praksa <- "Prakse FPP" - ime.fakultete <- "Fakulteta za pomorstvo in promet" - logo <- "logo_FPP" -} else if (ID == 3000011) { - fakulteta <- "ZF" - studijska.praksa <- "Prakse ZF" - ime.fakultete <- "Zdravstvena fakulteta" - logo <- "logo_ZF" -} else if (ID == 3000018) { - fakulteta <- "FF" - studijska.praksa <- "Prakse FF" - ime.fakultete <- "Filozofska fakulteta" - logo <- "logo_FF" -} else if (ID == 3000019) { - fakulteta <- "EF" - studijska.praksa <- "Prakse EF" - ime.fakultete <- "Ekonomska fakulteta" - logo <- "logo_EF" -} else if (ID == 3000020) { - fakulteta <- "PF" - studijska.praksa <- "Prakse PF" - ime.fakultete <- "Pravna fakulteta" - logo <- "logo_PF" -} else if (ID == 3000021) { - fakulteta <- "FDV" - studijska.praksa <- "Prakse FDV" - ime.fakultete <- "Fakulteta za družbene vede" - logo <- "logo_FDV" - # Ustvarimo direktorij, kamor bomo zapisali - # poročila za članico - dir.create(paste0("Evalvacija/results/",fakulteta), showWarnings = FALSE) - # Še folder agregatov - dir.create(paste0("Evalvacija/results/",fakulteta,"/Agregati"), showWarnings = FALSE) -} else if (ID == 3000022) { - fakulteta <- "FSP" - studijska.praksa <- "Prakse FSP" - ime.fakultete <- "Fakulteta za šport" - logo <- "logo_FSP" -} else if (ID == 3000023) { - fakulteta <- "FS" - studijska.praksa <- "Prakse FSTR" - ime.fakultete <- "Fakulteta za strojništvo" - logo <- "logo_FSTR" -} else if (ID == 3000025) { - fakulteta <- "FA" - studijska.praksa <- "Prakse FA" - ime.fakultete <- "Fakulteta za arhitekturo" - logo <- "logo_FA" -} else if (ID == 3000026) { - fakulteta <- "FGG" - studijska.praksa <- "Prakse FGG" - ime.fakultete <- "Fakulteta za gradbeništvo in geodezijo" - logo <- "logo_FGG" -} else if (ID == 3000027) { - fakulteta <- "FMF" - studijska.praksa <- "Prakse FMF" - ime.fakultete <- "Fakulteta za matematiko in fiziko" - logo <- "logo_FMF" -} else if (ID == 3000029) { - fakulteta <- "NTF" - studijska.praksa <- "Prakse NTF" - ime.fakultete <- "Naravoslovnotehniška fakulteta" - logo <- "logo_NTF" -} else if (ID == 3000030) { - fakulteta <- "FKKT" - studijska.praksa <- "Prakse FKKT" - ime.fakultete <- "Fakulteta za kemijo in kemijsko tehnologijo" - logo <- "logo_FKKT" -} else if (ID == 3000031) { - fakulteta <- "FFA" - studijska.praksa <- "Prakse FFARM" - ime.fakultete <- "Fakulteta za farmacijo" - logo <- "logo_FFARM" -} else if (ID == 3000037) { - fakulteta <- "VF" - studijska.praksa <- "Prakse VF" - ime.fakultete <- "Veterinarska fakulteta" - logo <- "logo_VF" -} else if (ID == 3000041) { - fakulteta <- "MF" - studijska.praksa <- "Prakse MF" - ime.fakultete <- "Medicinska fakulteta" - logo <- "logo_MF" -} else if (ID == 3000042) { - fakulteta <- "ALUO" - studijska.praksa <- "Prakse ALUO" - ime.fakultete <- "Akademija za likovno umetnost in oblikovanje" - logo <- "logo_ALU" -} else if (ID == 3000043) { - fakulteta <- "AG" - studijska.praksa <- "Prakse AG" - ime.fakultete <- "Akademija za glasbo" - logo <- "logo_AG" -} else if (ID == 3000044) { - fakulteta <- "AGRFT" - studijska.praksa <- "Prakse AGRFT" - ime.fakultete <- - "Akademija za gledališče, radio, film in televizijo" - logo <- "logo_AGRFT" -} else if (ID == 3000050) { - fakulteta <- "TEOF" - studijska.praksa <- "Prakse TEOF" - ime.fakultete <- "Teološka fakulteta" - logo <- "logo_TEOF" -} else if (ID == 3000063) { - fakulteta <- "FRI" - studijska.praksa <- "Prakse FRI" - ime.fakultete <- "Fakulteta za računalništvo in informatiko" - logo <- "logo_FRI" -} else if (ID == 3000064) { - fakulteta <- "FE" - studijska.praksa <- "Prakse FE" - ime.fakultete <- "Fakulteta za elektrotehniko" - logo <- "logo_FE" -} else if (ID == 3000071) { - fakulteta <- "BF" - studijska.praksa <- "Prakse BF" - ime.fakultete <- "Biotehniška fakulteta" - logo <- "logo_BF" -} else { - fakulteta <- "" - studijska.praksa <- "" - ime.fakultete <- "" -} -#------------------------ //DEFINE FACULTY ID// -----------------------------# \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/03_variables.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/03_variables.R deleted file mode 100644 index 24b2b61ec..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/03_variables.R +++ /dev/null @@ -1,82 +0,0 @@ -# OLD (2014). Bi bilo potrebno preudrediti ampak zaradi časovne stiske pustimo -# Gre namreč zato, da v bazi "navodila.xlsx" opredelimo vsa imena spremenljivk -# ki s enahajajo b bati "anketa_pred_izp" in v bazi "anketa_po_izp". -# Baza navodila nam potem služi kot spremenljivke, albele, in odprta vprašanja -# ki jih kličemo iz obeh baz ANKETA PO in ANKETA PRED. - - -# V excel datoteki navodila poiščemo vzorec "izvajalec" in zajamemo vse vrstice, -# kjer se pojavlja. Enako naredimo še za predmet in študenta. -# saj gre za komponente, po katerih računamo povprečja, kvantile za izvajalce ali predmete. -# Kaj komponente? Glej excel datoteko navodila -navI <- navodila[grepl(pattern='izvajalec.*', rownames(navodila)), ] -navP <- navodila[grepl(pattern='predmet.*', rownames(navodila)), ] -navS <- navodila[grepl(pattern='student.*', rownames(navodila)), ] - -lokacije.izvajalci <- navI[, grepl(pattern='izvajalec.\\d', colnames(navodila))] -lokacije.predmet <- navP[, 'lokacije.predmet', drop = FALSE] # drop = False, ker želimo ohraniti podatkovni okvir -lokacije.student <- navS[, 'lokacije.student', drop = FALSE] - - -## ZDRUŽEVANJE SPREMENLJIVK V VARS.IZVAJALEC in VARS.PREDMET ## -# Spremenljivke oz komponente po katerih računamo posamezna povprečja bi se dalo tudi neposredno računati z -# navajanjem imen posameznih sprmenljivk v bazih anketa pred in anketa po izpitu. Npr namesto izvajalec ocena kakovost -# bi generirali vector s spremenljivko IZMNE1a. Ta spremenljivka je tako poimenovana v bazi. -# Združimo spremenljivke oz komponente za izvajalca v EXCEL DATOTEKI NAVODILA # -# Združimo zato, da ni potrebno navajati (npr. računanje) imen posameznih spremenljivk, ki se nahajajo v anketi pred in po. -# Komponente, ki se bodo računale oz. stolpce združimo v list, katerega nato kličemo pri računanju in pri generiranju tabel -vars.izvajalec <- list( - cont = list(vars = rownames(navI)[navI$tip == 'CONT' & !is.na(navI$tip)]), # "CONT" pomeni, da gre za zaprto vprašanje - text = list(vars = rownames(navI)[navI$tip == 'TEXT' & !is.na(navI$tip)])) # "TEXT" pomeni, da gre za odprto vprašanje (glej npr 26 vrstico v excel datoteki navodila) - -vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'ime.kratko'] # ime.kratko (glej navodila) in tabele pri poročilu izvajalca. Npr ime.kratko se pojavlja v Tabeli 1.1: Poročilo izvajalca -vars.izvajalec$text$ime.kratko[vars.izvajalec$text$vars] <- navI[vars.izvajalec$text$vars, 'ime.kratko'] -vars.izvajalec$cont$ime.dolgo[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'ime.dolgo'] # Celoten tekst zaprtih vprašanj za tabele (glej izpis izvajalca) -vars.izvajalec$text$ime.dolgo[vars.izvajalec$text$vars] <- navI[vars.izvajalec$text$vars, 'ime.dolgo'] # Celoten tekst odprtih vprašanj za tabele (glej izpis izvajalca) -vars.izvajalec$cont$pobarvanka[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'pobarvanka'] # V excel datoteki opredelimo -# meje barvanja za posamezno komponento (glej stolpec pobarvanka). -# Te meje potem zapišemo v funkcijo s katero barvamo povprečja (glej skripto funkcije.r) -vars.izvajalec$cont$decimalke[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'decimalke.tabele'] # zaokroževanje obarvanih vrednosti na 1 decimalko (glej funkcije.r) - - -# Združimo spremenljivke oz komponente za PREDMETE (PRED IN PO) v EXCEL DATOTEKI navodila# -# Stolpce oz spremenljivke, ki se računajo združimo v list -vars.predmet <- list( - cont=list(vars=c(rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRED"], # Komponente PRED izpitom - rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PO"], # Komponente PO izpitu - rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRAKSA"])), # Komponente, ki vsebujejo oceno za študijsko prakso - text=list(vars=rownames(navP)[navP$tip == 'TEXT' & !is.na(navP$tip)]), - krediti=list(vars=rownames(navP["predmet.ocena.krediti", ])), - kompetence1=list(vars=rownames(navP["predmet.ocena.kompetence1", ]))) - -# Ločimo kompponente po katerih računamo povprečja za predmete, -# in sicer komponente PRED IZPITOM, komponente PO IZPITU IN komponente za študijsko PRAKSO (zaradi računanja vrednosti in izpisa poročil) -vars.predmet$cont$pred <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRED"] -vars.predmet$cont$po <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PO"] -vars.predmet$cont$praksa <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRAKSA"] - -vars.predmet$cont$ime.kratko[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'ime.kratko'] -vars.predmet$text$ime.kratko[vars.predmet$text$vars] <- navP[vars.predmet$text$vars, 'ime.kratko'] -vars.predmet$krediti$ime.kratko[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'ime.kratko'] -vars.predmet$kompetence1$ime.kratko[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'ime.kratko'] -vars.predmet$cont$ime.dolgo[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'ime.dolgo'] -vars.predmet$text$ime.dolgo[vars.predmet$text$vars] <- navP[vars.predmet$text$vars, 'ime.dolgo'] -vars.predmet$krediti$ime.dolgo[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'ime.dolgo'] -vars.predmet$kompetence1$ime.dolgo[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'ime.dolgo'] - -# Labele za komponenti Porabljeno število ur in za kompetence (glej poročilo za izvajalca, poglavje: Število porabljenih ur (anketa PO izpitu)) -# Labele: "1 - Veliko manj" "2 - Nekoliko manj" "3 - Predvideno" "4 - Nekoliko več" "5 - Veliko več" -vars.predmet$krediti$labele[vars.predmet$krediti$vars] <- strsplit(navP["predmet.ocena.krediti","labele"], split = ",") -vars.predmet$kompetence1$labele[vars.predmet$kompetence1$vars] <- strsplit(navP["predmet.ocena.kompetence1","labele"], split = ",") - -# we don't use whole wording for graph labels -# Labele (graf) za komponento "Ustreznost KT" oz Število porabljenih ur (anketa PO izpitu) <- glej poročilo za izvajalca slika: -# Frekvenčna porazdelitev za število porabljenih ur (anketa PO izpitu) -vars.predmet$krediti$labele.graf <- vars.predmet$krediti$labele[vars.predmet$krediti$vars] -vars.predmet$krediti$labele.graf[[vars.predmet$krediti$vars]][c(2,4)] <- c("2", "4") - -# Labele za komponento "kompetence" <-glej poročilo za izvajalca -vars.predmet$kompetence$labele.graf <- vars.predmet$kompetence1$labele[vars.predmet$kompetence$vars] -vars.predmet$kompetence$labele.graf[[vars.predmet$kompetence$vars]][c(2,4)] <- c("2", "4") - -#################### \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/04_Anketa_PRED – kopija.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/04_Anketa_PRED – kopija.R deleted file mode 100644 index 7619cb295..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/04_Anketa_PRED – kopija.R +++ /dev/null @@ -1,532 +0,0 @@ -# ANKETA PRED IZPITOM -# COURSE ANKETA PRED -------------------------------------------- -# Next we also need all variables for the course that -# were evaluated in ANKETA PRED izpitom -# - -# Select variables needed for ANEKTA PRED IZPITOm -# This variables are students evaluation for the course -# if student participated in she survey, answers to -# open ended questions etc. -var.pred <- - names(data_pred_izpitom)[grepl("sifpredm|PINAGa|IZPRED|PRPOZ|PRPOM" , names(data_pred_izpitom))] -var.pred <- data.frame(var.pred, stringsAsFactors = FALSE) -# And rownames will be variables that are evaluated in the course -rownames(var.pred) <- - c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.ocena.zadovoljstvo", - "predmet.ocena.usklajenost", - "predmet.ocena.samostojnost", - "predmet.ocena.literatura", - "predmet.ocena.obvescenost", - "predmet.ocena.informiranost", - "predmet.ocena.znanje", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - ) - -# Items -vars.cours <- - as.vector(rownames(var.pred)[!rownames(var.pred) %in% c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - )]) - -data.predmeti <- data_pred_izpitom[c(var.pred[, 1], "idprog","letnik","program", "lurker")] -names(data.predmeti) <- c(rownames(var.pred),"ID_vrsta_studija","Letnik","Naziv","lurker") - - -# MANJKAJOČE VREDNOSTI---------------------- -# When caluclating course averages -# we want to exclude all missing values -# BUT!!! as in report we would also liek to -# include frequenci tables of some missing values -# we want to keep valuesfor some vairables -# "-99" "Nimam dovolj informacij" -# "-96" "Ne želim odgovoriti" - - -# Missing values for frequency tables -data.pred.miss <- data.predmeti -data.pred.miss[data.pred.miss == "-99"] <- "Nimam dovolj informacij" -# V anketi po se Pravilno beležijo zavrniteve študenta v anketi PRED pa je to navedeno kot -96 -data.pred.miss[data.pred.miss == "-96"] <- "Ne želim odgovoriti" - -# setting missing values and keeping some for frequency tables -# all values with some miss for tables -someMiss.pred <- sort(unique(as.vector(as.matrix(data.pred.miss[, vars.cours])))) -# Select only valid frequencis and not missing cases -someMiss.pred <- someMiss.pred[someMiss.pred > 0] - - - -# Missing values for averages and charts -data.predmeti[,! colnames(data.predmeti) %in% (c("predmet.izpolnjeval.pred"))][data.predmeti[,! colnames(data.predmeti) %in% (c("predmet.izpolnjeval.pred"))] < 0] <- NA -# Convert to numeric columns -data.predmeti[c(vars.cours)] <- as.data.frame(lapply(data.predmeti[c(vars.cours)] , as.numeric)) - - - -# data.predmeti$predmet.sifra <- as.numeric(data.predmeti$predmet.sifra) -data.predmeti <- data.predmeti[order(data.predmeti$predmet.sifra),] -# ali je anketa veljavna za predmet; ali je student ni izpolnjeval (je pa začel anketo) -# '-1' neodgovorjeno vprašanje -data.predmeti$veljavna <- - data.predmeti$predmet.izpolnjeval.pred == -1 & - !is.na(data.predmeti$predmet.izpolnjeval.pred) - -# Ali je študent anekto PRED izpitom zavrnil -data.predmeti$zavrnjena <- - (!data.predmeti$veljavna & - !is.na(data.predmeti$predmet.izpolnjeval.pred)) - -# adding student data (year and programme) -data.predmeti <- - merge( - data.predmeti, - programi.imena[, c("ID", "Naziv")], - by.x = "ID_vrsta_studija", - by.y = "ID", - all.x = TRUE, - sort = FALSE - ) -names(data.predmeti)[match(c("ID_vrsta_studija", "Letnik", "Naziv.y"), - names(data.predmeti))] <- - c("student.program.sifra", - "student.letnik", - "student.program.ime") - - -#------------------------------------------ ERROR CHECK ---------------------------------------------# -# ali so v bazi kakšni predmeti ki jih ni v šifrantu -outlier.cr <- - unique(data.predmeti$predmet.sifra)[!(unique(data.predmeti$predmet.sifra) %in% unique(sifrant$IDP))] -if (length(outlier.cr) > 0) { - outlier.cr <- paste(outlier.cr, collapse='\n') - warning('V šifrantu ni predmetov, ki pa so v bazi:\n', outlier.cr) -} -#---------------------------------------- //ERROR CHECK// -------------------------------------------# - - - -############## -## PREDMETI ## -############## -# povprečja -predMean <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = mean, - na.rm = TRUE) - -colnames(predMean)[2:ncol(predMean)] <- paste0(vars.cours, "_mean") - -# Mediane -predMedian <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = median, - na.rm = TRUE) -colnames(predMedian)[2:ncol(predMedian)] <- paste0(vars.cours,"_median") - -# sd -predSd <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = sd, - na.rm = TRUE) -colnames(predSd)[2:ncol(predSd)] <- paste0(vars.cours,"_sd") - -# min -predMin <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = min, - na.rm = TRUE) -colnames(predMin)[2:ncol(predMin)] <- paste0(vars.cours,"_min") -predMin[predMin==Inf] <- NA - -# max -predMax <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = max, - na.rm = TRUE) -colnames(predMax)[2:ncol(predMax)] <- paste0(vars.cours,"_max") -predMax[predMax==-Inf] <- NA - -# N posamezne spremenljivke -predN <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(predN)[2:ncol(predN)] <- paste0(vars.cours,"_N") - -# N answering before exam -predNanket <- - aggregate(data.predmeti$veljavna, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNanket)[2] <- "N_anket" - - -# N didn't want to answer before exam -predNzavrnjenih <- - aggregate(data.predmeti$zavrnjena, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih)[2] <- "N_zavrnjenih" - -# N Lurkerjev PRED izpitom -data.predmeti$lurker[data.predmeti$lurker == 0] <- NA -predNLurkerji <- - aggregate( - as.numeric(data.predmeti$lurker), - by = data.predmeti["predmet.sifra"], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(predNLurkerji)[2] <- "N_lurkerjev_pred" - - -# Prvi kvartil -predQ1 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.25), - na.rm = T - ) -colnames(predQ1)[2:ncol(predQ1)] <- paste0(vars.cours,"_Q1") - -# Tretji kvartil -predQ3 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.75), - na.rm = T - ) -colnames(predQ3)[2:ncol(predQ3)] <- paste0(vars.cours,"_Q3") - -# Prvi decil -predD1 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.1), - type = 5, - na.rm = T - ) -colnames(predD1)[2:ncol(predD1)] <- paste0(vars.cours,"_D1") - -# Deveti decil -predD9 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.9), - type = 5, - na.rm = T - ) -colnames(predD9)[2:ncol(predD9)] <- paste0(vars.cours,"_D9") - - -# Združimo izračunane statistike za predmete - - -# Merge data for lecturer -povprecja.predmeti <- - Reduce( - function(x, y) - merge( - x, - y, - c("predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - predMean, - predSd, - predMin, - predMax, - predN, - predQ1, - predQ3, - predMedian, - predD1, - predD9, - predNLurkerji, - predNanket, - predNzavrnjenih - ) - ) - -# združit s šifrantom -povprecja.predmeti <- - merge( - povprecja.predmeti, - unique(sifrant[!( - colnames(sifrant) %in% c("IDPEDAGOGA", "NAZIV.PEDAGOGA", "ST_KT", "ST_UR", "NOSILEC") - )]), - by.x = "predmet.sifra", - by.y = "IDP", - all.x = TRUE, - sort = FALSE - ) - -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# -# Write csv data for AGREGAT: kjerkoli bomo delali trende, bomo prikazali tudi povprečja -# za predmete, ki imajo manj kot 4 enote. In sicer trentuno v primeru, da ima izvajalec -# pri predmetu premalo dogovorov povprečij ne prikažemo oz ne računamo. -# Pri trendih pa bo postopek naslednji: -# V kolikor vsota odgovorov v dveh zaporednih letnih preseže 3 odgovore potem to prikažemo -# v novem stolpcu. In te ocene potrebujemo za trende. -write.csv2(povprecja.predmeti, paste0("povprecja.predmeti.agregat_", fakulteta, ".csv")) -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# - - -# zakrivanje vrednosti kjer ni dovolj enot -premalo <- povprecja.predmeti[paste0(vars.cours,"_N")] < minEnot -povprecja.predmeti[paste0(vars.cours,"_mean")][premalo] <- NA -povprecja.predmeti[paste0(vars.cours,"_sd")][premalo] <- NA -povprecja.predmeti[paste0(vars.cours,"_min")][premalo] <- NA -povprecja.predmeti[paste0(vars.cours,"_max")][premalo] <- NA - - -# average of components - all, before exam -povprecja.predmeti$predmet.ocena.SKUPAJ <- rowMeans(povprecja.predmeti[paste0(vars.cours,"_mean")], na.rm = T) -#povprecja.predmeti$predmet.ocena.SKUPAJ.pred <- rowMeans(povprecja.predmeti[paste0(vars.cours,"_mean")], na.rm = T) - -# Število študentov pri posameznem predmetu: Spremenimo iz character v numeric -povprecja.predmeti$ST_STUD <- as.numeric(povprecja.predmeti$ST_STUD) - -# Kjer je negativno število pomeni, da gre za več vpisanih študentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.predmeti$ST_STUD <- ifelse(povprecja.predmeti$ST_STUD < as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), - as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), povprecja.predmeti$ST_STUD) - -# % odgovora -povprecja.predmeti$sodelujocih.pct <- povprecja.predmeti$N_anket / povprecja.predmeti$ST_STUD * 100 -# % zavrnjenih -povprecja.predmeti$zavrnjenih.pct <- povprecja.predmeti$N_zavrnjenih / povprecja.predmeti$ST_STUD * 100 -# N in % neodzivnih (ni pristopilo k anketi) -povprecja.predmeti$N_neodzivnih <- povprecja.predmeti$ST_STUD - povprecja.predmeti$N_anket - povprecja.predmeti$N_zavrnjenih -povprecja.predmeti$neodzivnih.pct <- povprecja.predmeti$N_neodzivnih / povprecja.predmeti$ST_STUD * 100 -## //average of components - all, before, after exam// ## - -# preurejeno ime predmeta -povprecja.predmeti$ime.predmeta <- povprecja.predmeti$PREDMET - -# IZREDNi ŠTUDIJ -izredni <- povprecja.predmeti$NACIN=="2" # če je izredni predmet mora biti to v oklepaju -izredni <- izredni[!is.na(izredni) ] -povprecja.predmeti$ime.predmeta[izredni] <- paste(povprecja.predmeti$ime.predmeta[izredni], "(izredna izvedba)") -# //IZREDNi ŠTUDIJ// # - - - -######################## -## ŠTUDIJSKI PROGRAMI ## -######################## -# število ocen po programih (za poročila in povprečja po programih) -programi <- unique(data.predmeti[c("student.program.sifra", "student.program.ime")]) -programi <- subset(programi, !is.na(student.program.sifra)) -programi <- subset(programi, student.program.ime != "NA") -programi <- programi[order(programi$student.program.ime), ] - -## predmet: Študijski program ## -povprecja.predmeti[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.prog.temp <- subset(data.predmeti, veljavna) -programi.studentov <- as.data.frame.matrix(table(data.prog.temp$predmet.sifra, data.prog.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.predmeti[match(rownames(programi.studentov), povprecja.predmeti$predmet.sifra), names(programi.studentov)] <- programi.studentov - -povprecja.predmeti <- povprecja.predmeti[order(povprecja.predmeti$PREDMET),] - - - -# are there any courses with too many answers in the database according to sifrant.xlsx -premalo_vpisanih <- povprecja.predmeti$N_neodzivnih < 0 -premalo_vpisanih <- !is.na(premalo_vpisanih) -if (any(premalo_vpisanih)) { - warning( - c( - "Some courses have more students in the database than number of students that are attending the course according to sifrant.xlsx", - paste( - "\n", - povprecja.predmeti$predmet.sifra[premalo_vpisanih], - povprecja.predmeti$PREDMET[premalo_vpisanih], - paste0( - "(", - abs(povprecja.predmeti$N_neodzivnih[premalo_vpisanih]), - " more students)" - ) - ) - ) - ) -} - - - - -################# -## Quantiles ## -################# - -# Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu -kvantili.predmeti <- povprecja.predmeti[c("predmet.sifra","ime.predmeta","ST_STUD","N_anket","sodelujocih.pct", - paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")] -for (var in c(paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")) { - kvantili.predmeti[[var]] <- kvantRang(kvantili.predmeti[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.predmeti[[var]] <- kvantRang1(kvantili.predmeti[[var]]) - -} -# //Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu// # - - - -# Glej npr izpis izvajalca, Tabela 1.1 (vrstico Povprečje FDV), -# kjer se izpiše število predmetov v anketi PRED izpitom -kvantili.predmeti.st.pred <- sum(kvantili.predmeti$predmet.ocena.SKUPAJ!= ".") # Število vseh ocenjenih predmetov: anketa PRED -kvantili.zadovoljstvo <- sum(kvantili.predmeti$predmet.ocena.zadovoljstvo_mean != ".") # - - - - -##################################### -# POVPREČJA PO ŠTUDIJSKIH PROGRAMIH -##################################### -# Skupne ocene predmetov po posameznih študijskih programih -progMeanPredm <- aggregate(data.predmeti[c(vars.cours)], - by = data.predmeti["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ <- rowMeans(progMeanPredm[vars.cours], na.rm = TRUE) - - - - - -## course averages by programme ## -povprecja.predmeti.programi <- NULL -povprecja.predmeti.programi.brez.cenzure <- NULL # Zapišemo vsa povprečja oz. vse ocene, tudi tista, ki imajo 4 odgovore ali manj -## course averages by programme ## -for (program in programi$student.program.sifra) { - # povprečja - data.program <- subset(data.predmeti, student.program.sifra == program) - - predMean <- aggregate(data.program[vars.cours], by = data.program["predmet.sifra"], FUN = mean, na.rm = TRUE) - colnames(predMean)[2:ncol(predMean)] <- paste0(vars.cours,"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.program[vars.cours], by = data.program["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - colnames(predN)[2:ncol(predN)] <- paste0(vars.cours,"_N") - # N answering before and after exam - predNanket <- aggregate(data.program$veljavna, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - - predmeti.program <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.programi.brez.cenzure <- rbind(povprecja.predmeti.programi.brez.cenzure,cbind(predmeti.program, - program.studentov = program, - program.studentov.ime = programi[programi$student.program.sifra == program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.program[paste0(vars.cours,"_N")] < minEnot - predmeti.program[paste0(vars.cours,"_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.program$predmet.ocena.SKUPAJ <- rowMeans(predmeti.program[paste0(vars.cours,"_mean")],na.rm=T) - - povprecja.predmeti.programi <- rbind(povprecja.predmeti.programi, cbind(predmeti.program, program.studentov = program, - program.studentov.ime = programi[programi$student.program.sifra==program, - "student.program.ime"])) -} -povprecja.predmeti.programi <- merge(povprecja.predmeti.programi, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.programi.brez.cenzure <- merge(povprecja.predmeti.programi.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA","PRAKSA")], - by = "predmet.sifra", all.x = T) -## //course averages by programme// ## - - - - - -## course averages by student's year ## -povprecja.predmeti.letniki <- NULL -povprecja.predmeti.letniki.brez.cenzure <- NULL # Vsa povprečja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## course averages by students' year ## -for (letnik in unique(sort(data.predmeti$student.letnik))) { - # povprečja - data.letnik <- subset(data.predmeti, student.letnik == letnik) - # data.letnik.po <- subset(data.predmeti.PO, student.program.sifra == program) - - predMean <- aggregate(data.letnik[vars.cours], - by = data.letnik["predmet.sifra"], FUN=mean, na.rm=TRUE) - - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.cours),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.letnik[c(vars.cours)], - by=data.letnik["predmet.sifra"], FUN=function(x) sum(!is.na(x))) - - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.cours),"_N") - # N answering before and after exam - predNanket <- aggregate(data.letnik$veljavna, by = data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - - - predmeti.letnik <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.letniki.brez.cenzure <- rbind(povprecja.predmeti.letniki.brez.cenzure, cbind(predmeti.letnik, letnik.studentov = letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.letnik[c(paste0(vars.cours,"_N"))] < minEnot - predmeti.letnik[c(paste0(vars.cours,"_mean"))][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.letnik$predmet.ocena.SKUPAJ <- rowMeans(predmeti.letnik[paste0(vars.cours,"_mean")], na.rm = T) - - - povprecja.predmeti.letniki <- rbind(povprecja.predmeti.letniki, cbind(predmeti.letnik, letnik.studentov=letnik)) -} -povprecja.predmeti.letniki <- merge(povprecja.predmeti.letniki, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.letniki.brez.cenzure <- merge(povprecja.predmeti.letniki.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA","PRAKSA")], - by = "predmet.sifra", all.x = T) -## //course averages by students' year// ## - - - -kvantili.predmeti.programi <- NULL -for (program in unique(povprecja.predmeti.programi$program.studentov)) { - kvantili.predmeti.program <- povprecja.predmeti.programi[povprecja.predmeti.programi$program.studentov == program & - (povprecja.predmeti.programi$N_anket > 0), - c("predmet.sifra","N_anket","program.studentov","program.studentov.ime", - paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")] - for (var in c(paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")) { - kvantili.predmeti.program[[var]] <- kvantRang(kvantili.predmeti.program[[var]]) - } - for (var in c("N_anket")) { - kvantili.predmeti.program[[var]] <- kvantRang1(kvantili.predmeti.program[[var]]) - } - - - kvantili.predmeti.programi <- rbind(kvantili.predmeti.programi, kvantili.predmeti.program) -} - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/04_Anketa_PRED.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/04_Anketa_PRED.R deleted file mode 100644 index 524b9aef7..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/04_Anketa_PRED.R +++ /dev/null @@ -1,580 +0,0 @@ -# ANKETA PRED IZPITOM -# COURSE ANKETA PRED -------------------------------------------- -# Next we also need all variables for the course that -# were evaluated in ANKETA PRED izpitom -# - -# Select variables needed for ANEKTA PRED IZPITOm -# This variables are students evaluation for the course -# if student participated in she survey, answers to -# open ended questions etc. -var.pred <- - names(data_pred_izpitom)[grepl("sifpredm|PINAGa|IZPRED|PRPOZ|PRPOM" , names(data_pred_izpitom))] -var.pred <- data.frame(var.pred, stringsAsFactors = FALSE) -# And rownames will be variables that are evaluated in the course -rownames(var.pred) <- - c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.ocena.zadovoljstvo", - "predmet.ocena.usklajenost", - "predmet.ocena.samostojnost", - "predmet.ocena.literatura", - "predmet.ocena.obvescenost", - "predmet.ocena.informiranost", - "predmet.ocena.znanje", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - ) - -# Items -vars.cours <- - as.vector(rownames(var.pred)[!rownames(var.pred) %in% c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - )]) - -#==================# -# Update 18.11.2019 -#==================# -# Po novem želimo narediti tudi poročila za -# članice (FKKT, FRI, EF), ki jih do zdaj nismo delali. Tudi -# šifrante dobimo od STUDISA in nekateri podatki -# manjkajo: LETNIK, LURKER ITD -# Zato moramo to ustrezno upoštevati - -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -data.predmeti <- data_pred_izpitom[c(var.pred[, 1], "idprog","letnik","program", "lurker")] -names(data.predmeti) <- c(rownames(var.pred),"ID_vrsta_studija","Letnik","Naziv","lurker") -} else { - data.predmeti <- data_pred_izpitom[c(var.pred[, 1], "idprog","program")] - names(data.predmeti) <- c(rownames(var.pred),"ID_vrsta_studija","Naziv") -} - -# MANJKAJOČE VREDNOSTI---------------------- -# When caluclating course averages -# we want to exclude all missing values -# BUT!!! as in report we would also liek to -# include frequenci tables of some missing values -# we want to keep valuesfor some vairables -# "-99" "Nimam dovolj informacij" -# "-96" "Ne želim odgovoriti" - - -# Missing values for frequency tables -data.pred.miss <- data.predmeti -data.pred.miss[data.pred.miss == "-99"] <- "Nimam dovolj informacij" -# V anketi po se Pravilno beležijo zavrniteve študenta v anketi PRED pa je to navedeno kot -96 -data.pred.miss[data.pred.miss == "-96"] <- "Ne želim odgovoriti" - -# setting missing values and keeping some for frequency tables -# all values with some miss for tables -someMiss.pred <- sort(unique(as.vector(as.matrix(data.pred.miss[, vars.cours])))) -# Select only valid frequencis and not missing cases -someMiss.pred <- someMiss.pred[someMiss.pred > 0] - - - -# Missing values for averages and charts -data.predmeti[,! colnames(data.predmeti) %in% (c("predmet.izpolnjeval.pred"))][data.predmeti[,! colnames(data.predmeti) %in% (c("predmet.izpolnjeval.pred"))] < 0] <- NA -# Convert to numeric columns -data.predmeti[c(vars.cours)] <- as.data.frame(lapply(data.predmeti[c(vars.cours)] , as.numeric)) - - - -# data.predmeti$predmet.sifra <- as.numeric(data.predmeti$predmet.sifra) -data.predmeti <- data.predmeti[order(data.predmeti$predmet.sifra),] -# ali je anketa veljavna za predmet; ali je student ni izpolnjeval (je pa začel anketo) -# '-1' neodgovorjeno vprašanje -data.predmeti$veljavna <- - data.predmeti$predmet.izpolnjeval.pred == -1 & - !is.na(data.predmeti$predmet.izpolnjeval.pred) - -# Ali je študent anekto PRED izpitom zavrnil -data.predmeti$zavrnjena <- - (!data.predmeti$veljavna & - !is.na(data.predmeti$predmet.izpolnjeval.pred)) - -# adding student data (year and programme) -data.predmeti <- - merge( - data.predmeti, - programi.imena[, c("ID", "Naziv")], - by.x = "ID_vrsta_studija", - by.y = "ID", - all.x = TRUE, - sort = FALSE - ) - -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -names(data.predmeti)[match(c("ID_vrsta_studija", "Letnik", "Naziv.y"), - names(data.predmeti))] <- - c("student.program.sifra", - "student.letnik", - "student.program.ime") -} else { - names(data.predmeti)[match(c("ID_vrsta_studija", "Naziv.y"), - names(data.predmeti))] <- - c("student.program.sifra", - "student.program.ime") -} - -#------------------------------------------ ERROR CHECK ---------------------------------------------# -# ali so v bazi kakšni predmeti ki jih ni v šifrantu -outlier.cr <- - unique(data.predmeti$predmet.sifra)[!(unique(data.predmeti$predmet.sifra) %in% unique(sifrant$IDP))] -if (length(outlier.cr) > 0) { - outlier.cr <- paste(outlier.cr, collapse='\n') - warning('V šifrantu ni predmetov, ki pa so v bazi:\n', outlier.cr) -} -#---------------------------------------- //ERROR CHECK// -------------------------------------------# - - - -############## -## PREDMETI ## -############## -# povprečja -predMean <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = mean, - na.rm = TRUE) - -colnames(predMean)[2:ncol(predMean)] <- paste0(vars.cours, "_mean") - -# Mediane -predMedian <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = median, - na.rm = TRUE) -colnames(predMedian)[2:ncol(predMedian)] <- paste0(vars.cours,"_median") - -# sd -predSd <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = sd, - na.rm = TRUE) -colnames(predSd)[2:ncol(predSd)] <- paste0(vars.cours,"_sd") - -# min -predMin <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = min, - na.rm = TRUE) -colnames(predMin)[2:ncol(predMin)] <- paste0(vars.cours,"_min") -predMin[predMin==Inf] <- NA - -# max -predMax <- - aggregate(data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = max, - na.rm = TRUE) -colnames(predMax)[2:ncol(predMax)] <- paste0(vars.cours,"_max") -predMax[predMax==-Inf] <- NA - -# N posamezne spremenljivke -predN <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(predN)[2:ncol(predN)] <- paste0(vars.cours,"_N") - -# N answering before exam -predNanket <- - aggregate(data.predmeti$veljavna, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNanket)[2] <- "N_anket" - - -# N didn't want to answer before exam -predNzavrnjenih <- - aggregate(data.predmeti$zavrnjena, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih)[2] <- "N_zavrnjenih" - -# N Lurkerjev PRED izpitom -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -data.predmeti$lurker[data.predmeti$lurker == 0] <- NA -predNLurkerji <- - aggregate( - as.numeric(data.predmeti$lurker), - by = data.predmeti["predmet.sifra"], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(predNLurkerji)[2] <- "N_lurkerjev_pred" -} - -# Prvi kvartil -predQ1 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.25), - na.rm = T - ) -colnames(predQ1)[2:ncol(predQ1)] <- paste0(vars.cours,"_Q1") - -# Tretji kvartil -predQ3 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.75), - na.rm = T - ) -colnames(predQ3)[2:ncol(predQ3)] <- paste0(vars.cours,"_Q3") - -# Prvi decil -predD1 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.1), - type = 5, - na.rm = T - ) -colnames(predD1)[2:ncol(predD1)] <- paste0(vars.cours,"_D1") - -# Deveti decil -predD9 <- - aggregate( - data.predmeti[vars.cours], - by = data.predmeti["predmet.sifra"], - FUN = quantile, - probs = c(0.9), - type = 5, - na.rm = T - ) -colnames(predD9)[2:ncol(predD9)] <- paste0(vars.cours,"_D9") - - -# Združimo izračunane statistike za predmete - - -# Merge data for lecturer -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { # LURKERJI -povprecja.predmeti <- - Reduce( - function(x, y) - merge( - x, - y, - c("predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - predMean, - predSd, - predMin, - predMax, - predN, - predQ1, - predQ3, - predMedian, - predD1, - predD9, - predNLurkerji, - predNanket, - predNzavrnjenih - ) - ) -} else { - povprecja.predmeti <- - Reduce( - function(x, y) - merge( - x, - y, - c("predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - predMean, - predSd, - predMin, - predMax, - predN, - predQ1, - predQ3, - predMedian, - predD1, - predD9, - predNanket, - predNzavrnjenih - ) - ) -} -# združit s šifrantom -povprecja.predmeti <- - merge( - povprecja.predmeti, - unique(sifrant[!( - colnames(sifrant) %in% c("IDPEDAGOGA", "NAZIV.PEDAGOGA", "ST_KT", "ST_UR", "NOSILEC") - )]), - by.x = "predmet.sifra", - by.y = "IDP", - all.x = TRUE, - sort = FALSE - ) - -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# -# Write csv data for AGREGAT: kjerkoli bomo delali trende, bomo prikazali tudi povprečja -# za predmete, ki imajo manj kot 4 enote. In sicer trentuno v primeru, da ima izvajalec -# pri predmetu premalo dogovorov povprečij ne prikažemo oz ne računamo. -# Pri trendih pa bo postopek naslednji: -# V kolikor vsota odgovorov v dveh zaporednih letnih preseže 3 odgovore potem to prikažemo -# v novem stolpcu. In te ocene potrebujemo za trende. -#write.csv2(povprecja.predmeti, paste0("povprecja.predmeti.agregat_", fakulteta, ".csv")) -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# - - -# zakrivanje vrednosti kjer ni dovolj enot -premalo <- povprecja.predmeti[paste0(vars.cours,"_N")] < minEnot -povprecja.predmeti[paste0(vars.cours,"_mean")][premalo] <- NA -povprecja.predmeti[paste0(vars.cours,"_sd")][premalo] <- NA -povprecja.predmeti[paste0(vars.cours,"_min")][premalo] <- NA -povprecja.predmeti[paste0(vars.cours,"_max")][premalo] <- NA - - -# average of components - all, before exam -povprecja.predmeti$predmet.ocena.SKUPAJ <- rowMeans(povprecja.predmeti[paste0(vars.cours,"_mean")], na.rm = T) -#povprecja.predmeti$predmet.ocena.SKUPAJ.pred <- rowMeans(povprecja.predmeti[paste0(vars.cours,"_mean")], na.rm = T) - -# Število študentov pri posameznem predmetu: Spremenimo iz character v numeric -povprecja.predmeti$ST_STUD <- as.numeric(povprecja.predmeti$ST_STUD) - -# Kjer je negativno število pomeni, da gre za več vpisanih študentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.predmeti$ST_STUD <- ifelse(povprecja.predmeti$ST_STUD < as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), - as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), povprecja.predmeti$ST_STUD) - -# % odgovora -povprecja.predmeti$sodelujocih.pct <- povprecja.predmeti$N_anket / povprecja.predmeti$ST_STUD * 100 -# % zavrnjenih -povprecja.predmeti$zavrnjenih.pct <- povprecja.predmeti$N_zavrnjenih / povprecja.predmeti$ST_STUD * 100 -# N in % neodzivnih (ni pristopilo k anketi) -povprecja.predmeti$N_neodzivnih <- povprecja.predmeti$ST_STUD - povprecja.predmeti$N_anket - povprecja.predmeti$N_zavrnjenih -povprecja.predmeti$neodzivnih.pct <- povprecja.predmeti$N_neodzivnih / povprecja.predmeti$ST_STUD * 100 -## //average of components - all, before, after exam// ## - -# preurejeno ime predmeta -povprecja.predmeti$ime.predmeta <- povprecja.predmeti$PREDMET - -# IZREDNi ŠTUDIJ -izredni <- povprecja.predmeti$NACIN=="2" # če je izredni predmet mora biti to v oklepaju -izredni <- izredni[!is.na(izredni) ] -povprecja.predmeti$ime.predmeta[izredni] <- paste(povprecja.predmeti$ime.predmeta[izredni], "(izredna izvedba)") -# //IZREDNi ŠTUDIJ// # - - - -######################## -## ŠTUDIJSKI PROGRAMI ## -######################## -# število ocen po programih (za poročila in povprečja po programih) -programi <- unique(data.predmeti[c("student.program.sifra", "student.program.ime")]) -programi <- subset(programi, !is.na(student.program.sifra)) -programi <- subset(programi, student.program.ime != "NA") -programi <- programi[order(programi$student.program.ime), ] - -## predmet: Študijski program ## -povprecja.predmeti[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.prog.temp <- subset(data.predmeti, veljavna) -programi.studentov <- as.data.frame.matrix(table(data.prog.temp$predmet.sifra, data.prog.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.predmeti[match(rownames(programi.studentov), povprecja.predmeti$predmet.sifra), names(programi.studentov)] <- programi.studentov - -povprecja.predmeti <- povprecja.predmeti[order(povprecja.predmeti$PREDMET),] - - - -# are there any courses with too many answers in the database according to sifrant.xlsx -premalo_vpisanih <- povprecja.predmeti$N_neodzivnih < 0 -premalo_vpisanih <- !is.na(premalo_vpisanih) -if (any(premalo_vpisanih)) { - warning( - c( - "Some courses have more students in the database than number of students that are attending the course according to sifrant.xlsx", - paste( - "\n", - povprecja.predmeti$predmet.sifra[premalo_vpisanih], - povprecja.predmeti$PREDMET[premalo_vpisanih], - paste0( - "(", - abs(povprecja.predmeti$N_neodzivnih[premalo_vpisanih]), - " more students)" - ) - ) - ) - ) -} - - - - -################# -## Quantiles ## -################# - -# Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu -kvantili.predmeti <- povprecja.predmeti[c("predmet.sifra","ime.predmeta","ST_STUD","N_anket","sodelujocih.pct", - paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")] -for (var in c(paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")) { - kvantili.predmeti[[var]] <- kvantRang(kvantili.predmeti[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.predmeti[[var]] <- kvantRang1(kvantili.predmeti[[var]]) - -} -# //Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu// # - - - -# Glej npr izpis izvajalca, Tabela 1.1 (vrstico Povprečje FDV), -# kjer se izpiše število predmetov v anketi PRED izpitom -kvantili.predmeti.st.pred <- sum(kvantili.predmeti$predmet.ocena.SKUPAJ!= ".") # Število vseh ocenjenih predmetov: anketa PRED -kvantili.zadovoljstvo <- sum(kvantili.predmeti$predmet.ocena.zadovoljstvo_mean != ".") # - - - - -##################################### -# POVPREČJA PO ŠTUDIJSKIH PROGRAMIH -##################################### -# Skupne ocene predmetov po posameznih študijskih programih -progMeanPredm <- aggregate(data.predmeti[c(vars.cours)], - by = data.predmeti["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ <- rowMeans(progMeanPredm[vars.cours], na.rm = TRUE) - - - - - -## course averages by programme ## -povprecja.predmeti.programi <- NULL -povprecja.predmeti.programi.brez.cenzure <- NULL # Zapišemo vsa povprečja oz. vse ocene, tudi tista, ki imajo 4 odgovore ali manj -## course averages by programme ## -for (program in programi$student.program.sifra) { - # povprečja - data.program <- subset(data.predmeti, student.program.sifra == program) - - predMean <- aggregate(data.program[vars.cours], by = data.program["predmet.sifra"], FUN = mean, na.rm = TRUE) - colnames(predMean)[2:ncol(predMean)] <- paste0(vars.cours,"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.program[vars.cours], by = data.program["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - colnames(predN)[2:ncol(predN)] <- paste0(vars.cours,"_N") - # N answering before and after exam - predNanket <- aggregate(data.program$veljavna, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - - predmeti.program <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.programi.brez.cenzure <- rbind(povprecja.predmeti.programi.brez.cenzure,cbind(predmeti.program, - program.studentov = program, - program.studentov.ime = programi[programi$student.program.sifra == program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.program[paste0(vars.cours,"_N")] < minEnot - predmeti.program[paste0(vars.cours,"_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.program$predmet.ocena.SKUPAJ <- rowMeans(predmeti.program[paste0(vars.cours,"_mean")],na.rm=T) - - povprecja.predmeti.programi <- rbind(povprecja.predmeti.programi, cbind(predmeti.program, program.studentov = program, - program.studentov.ime = programi[programi$student.program.sifra==program, - "student.program.ime"])) -} -povprecja.predmeti.programi <- merge(povprecja.predmeti.programi, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.programi.brez.cenzure <- merge(povprecja.predmeti.programi.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA","PRAKSA")], - by = "predmet.sifra", all.x = T) -## //course averages by programme// ## - - - - -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { # FKKT nima podatka o letnikih -## course averages by student's year ## -povprecja.predmeti.letniki <- NULL -povprecja.predmeti.letniki.brez.cenzure <- NULL # Vsa povprečja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## course averages by students' year ## -for (letnik in unique(sort(data.predmeti$student.letnik))) { - # povprečja - data.letnik <- subset(data.predmeti, student.letnik == letnik) - # data.letnik.po <- subset(data.predmeti.PO, student.program.sifra == program) - - predMean <- aggregate(data.letnik[vars.cours], - by = data.letnik["predmet.sifra"], FUN=mean, na.rm=TRUE) - - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.cours),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.letnik[c(vars.cours)], - by=data.letnik["predmet.sifra"], FUN=function(x) sum(!is.na(x))) - - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.cours),"_N") - # N answering before and after exam - predNanket <- aggregate(data.letnik$veljavna, by = data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - - - predmeti.letnik <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.letniki.brez.cenzure <- rbind(povprecja.predmeti.letniki.brez.cenzure, cbind(predmeti.letnik, letnik.studentov = letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.letnik[c(paste0(vars.cours,"_N"))] < minEnot - predmeti.letnik[c(paste0(vars.cours,"_mean"))][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.letnik$predmet.ocena.SKUPAJ <- rowMeans(predmeti.letnik[paste0(vars.cours,"_mean")], na.rm = T) - - - povprecja.predmeti.letniki <- rbind(povprecja.predmeti.letniki, cbind(predmeti.letnik, letnik.studentov=letnik)) -} -povprecja.predmeti.letniki <- merge(povprecja.predmeti.letniki, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.letniki.brez.cenzure <- merge(povprecja.predmeti.letniki.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA","PRAKSA")], - by = "predmet.sifra", all.x = T) -## //course averages by students' year// ## -} - - -kvantili.predmeti.programi <- NULL -for (program in unique(povprecja.predmeti.programi$program.studentov)) { - kvantili.predmeti.program <- povprecja.predmeti.programi[povprecja.predmeti.programi$program.studentov == program & - (povprecja.predmeti.programi$N_anket > 0), - c("predmet.sifra","N_anket","program.studentov","program.studentov.ime", - paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")] - for (var in c(paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")) { - kvantili.predmeti.program[[var]] <- kvantRang(kvantili.predmeti.program[[var]]) - } - for (var in c("N_anket")) { - kvantili.predmeti.program[[var]] <- kvantRang1(kvantili.predmeti.program[[var]]) - } - - - kvantili.predmeti.programi <- rbind(kvantili.predmeti.programi, kvantili.predmeti.program) -} - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/05_Izvajalci_PRED – kopija.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/05_Izvajalci_PRED – kopija.R deleted file mode 100644 index 215ecbf0d..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/05_Izvajalci_PRED – kopija.R +++ /dev/null @@ -1,835 +0,0 @@ -#---------------------------------- PODATKI ZA IZVAJALCE (ANKETA PRED) -------------------------------# - -# LECTURER----------------------------------------------- -# First we need to subset all lecturers that are teaching -# There can be up to 55 lecturers in the data base --> That means that for the single -# course there can be multiple lectures (izvajalec1 .... izvajalec12 etc) see -# "anketa_pred_izp_FDV for example. -# First lets see how many lecturers for single course there can be -# In case of FDV we have 12 lectures -nbr.izvajalci <- - names(data_pred_izpitom)[grepl("izvajalec." , names(data_pred_izpitom))] - -# Select all variables that are needed to do statistics and charts for each lecturer (izvajalec) -# We will use library (stringr) in order to subset all columns -# that are relevant for Lecturer (izvajalec) -library(stringr) -var.izv <- - names(data_pred_izpitom)[!is.na(str_extract(names(data_pred_izpitom), "[0-9]+") == 1)] -# We do not want to have Q variables and PRKT variables as these are not important for lecturer -var.izv <- var.izv[!grepl("Q|PRKT|idprog|program|IDP1", var.izv)] - -# Nov we will create a data frame of each lecturer (column) that is is teaching course -# and is evaluated. NOTE: for single course there could be multiple lecturers that -# are evaluated seperately -# First we check how myna lecturers there is that students evaluated -var.izv <- data.frame(lapply(seq(length(nbr.izvajalci)), function(i) { - df <- NULL - df[[i]] <- - var.izv[grepl(paste0("^[a-z]*", i, "[a-z]*$"), var.izv, ignore.case = TRUE)] -}), stringsAsFactors = FALSE) - -# Then we add colnames -colnames(var.izv) <- - unlist(lapply(seq(length(nbr.izvajalci)), function(i) - paste0("izvajalec.", i))) - -# And rownames will be variables that are evaluated in the course and -# also wil help us detrmine the teacher (izvajalec.sifra) and if he -# had lectures in the course (izvajalec.jepouceval == "-1"). -# izvajalec.jepouceval == "1") means that lecturer did not teach -rownames(var.izv) <- - c( - "izvajalec.ime", - "izvajalec.sifra", - "izvajalec.jepouceval", - "izvajalec.ocena.kakovost", - "izvajalec.ocena.pripravljenost", - "izvajalec.ocena.razumljivost", - "izvajalec.ocena.zanimivost", - "izvajalec.ocena.kriticnost", - "izvajalec.ocena.korektnost", - "izvajalec.komentar.dobro", - "izvajalec.komentar.slabo" - ) -vars.izv <- - as.vector(rownames(var.izv)[!rownames(var.izv) %in% c("izvajalec.ime", - "izvajalec.sifra", - "izvajalec.komentar.dobro", - "izvajalec.komentar.slabo")]) - - -# COURSE ANKETA PRED -------------------------------------------- -# Next we also need all variables for the course that -# was evaluated in ANKETA PRED izpitom -# - -# Select variables needed for ANEKTA PRED IZPITOm -# This variables are students evaluation for the course -# if student participated in she survey, answers to -# open ended questions etc. -var.pred <- - names(data_pred_izpitom)[grepl("sifpredm|PINAGa|IZPRED|PRPOZ|PRPOM" , names(data_pred_izpitom))] -var.pred <- data.frame(var.pred, stringsAsFactors = FALSE) -# And rownames will be variables that are evaluated in the course -rownames(var.pred) <- - c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.ocena.zadovoljstvo", - "predmet.ocena.usklajenost", - "predmet.ocena.samostojnost", - "predmet.ocena.literatura", - "predmet.ocena.obvescenost", - "predmet.ocena.informiranost", - "predmet.ocena.znanje", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - ) - -# Items -vars.cours <- - as.vector(rownames(var.pred)[!rownames(var.pred) %in% c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - )]) - - -data.izvajalci <- NULL -for (i in names(var.izv)){ - # spremenljivke ki smo jih določili zgoraj + we also need student letnik and program for tables - # We will also calculate average scors for all students based on ther year - data.temp <- data_pred_izpitom[c(var.pred[, 1], var.izv[[i]],"idprog","letnik","program","lurker")] - names(data.temp) <- c(rownames(var.pred), rownames(var.izv), "ID_vrsta_studija","Letnik","Naziv","lurker") - data.temp <- subset(data.temp, izvajalec.sifra > 0) # samo kjer je naveden izvajalec - if (is.null(data.izvajalci)) { - data.izvajalci <- data.temp - } else { - data.izvajalci <- rbind(data.izvajalci,data.temp) - } -} - -# MANJKAJOČE VREDNOSTI---------------------- -# When caluclating lecturers averages -# we want to exclude all missing values -# But whwn we will do frequency tables we want to -# keep values -# "-99" "Nimam dovolj informacij" -# "-96" "Ne želim odgovoriti" - - -# Missing values for frequency tables -data.izv.miss <- data.izvajalci -data.izv.miss[data.izv.miss == "-99"] <- "Nimam dovolj informacij" -data.izv.miss[data.izv.miss == "-96"] <- "Ne želim odgovoriti" -data.izv.miss[data.izv.miss < 0] <- NA - - -# Missing values for averages and charts -data.izvajalci[,! colnames(data.izvajalci) %in% (c("predmet.izpolnjeval.pred","izvajalec.jepouceval"))][data.izvajalci[,! colnames(data.izvajalci) %in% (c("predmet.izpolnjeval.pred","izvajalec.jepouceval"))] < 0] <- NA -# Convert to numeric columns -data.izvajalci[c(vars.izv, vars.cours)] <- as.data.frame(lapply(data.izvajalci[c(vars.izv, vars.cours)] , as.numeric)) - -# all values with some miss for tables -# Glej tabelo Povprečja in deleži kategorij odgovorov za komponente pedagoškega dela izvajalca pri predmetu (anketa PRED izpitom)" -izv.someMiss <- sort(unique(as.vector(as.matrix(data.izv.miss[,vars.izvajalec$cont$vars])))) - -# Check if values are missing. We need column_name for table making -# V poročilu za izvajalca glej podpoglavje: Frekvenčna porazdelitev ocen komponent pedagoškega dela izvajalca -# V primeru, da kakšna vrednost manjka jo ustvarimo, sicer ko poženemo koda-izvajalec_predmet ne generira tabel -column_name <- - c("1", - "2", - "3", - "4", - "5", - "Ne želim odgovoriti", - "Nimam dovolj informacij") - -if (length(which(izv.someMiss %in% column_name)) < 7) { - # Če so kakšne manjkajoče vrednosti, ki se dodajajo v tabele kot imena stolpcev za izvajalca - Missing <- setdiff(column_name, izv.someMiss) # Find names of missing columns - izv.someMiss <- c(Missing,izv.someMiss) - izv.someMiss <- sort(izv.someMiss) -} - -# MANJKAJOČE VREDNOSTI---------------------- -data.izvajalci <- data.izvajalci[order(data.izvajalci$izvajalec.sifra, data.izvajalci$predmet.sifra), ] -# Število vseh odgovorov. To so odgovori na predmet in izvajalca -# '-1' neodgovorjeno vprašanje, '-2' preskok zaradi pogoja (IF) -data.izvajalci$veljavna.vsiodgovori <- - data.izvajalci$predmet.izpolnjeval.pred == -1 & - ( - data.izvajalci$izvajalec.jepouceval == 1 | - data.izvajalci$izvajalec.jepouceval == 2 | - data.izvajalci$izvajalec.jepouceval == -2 - ) -# Število odgovorov izvajalca -# ali je anketa veljavna za izvajalca; ali je student ni izpolnjeval (je pa začel anketo) -data.izvajalci$veljavna <- - data.izvajalci$predmet.izpolnjeval.pred == -1 & - (data.izvajalci$izvajalec.jepouceval == 1 | - data.izvajalci$izvajalec.jepouceval == -2) -data.izvajalci$zavrnjena <- - ( - !data.izvajalci$veljavna & - !is.na(data.izvajalci$predmet.izpolnjeval.pred) & - !is.na(data.izvajalci$izvajalec.jepouceval) & - !(data.izvajalci$izvajalec.jepouceval == 2) - ) -data.izvajalci$nipouceval <- - data.izvajalci$izvajalec.jepouceval == 2 # Če je študent v anketi pred izpitom odgovoril, da ga izvajalec pri tem predmetu ni poučeval -# adding student data (year and programme) -data.izvajalci <- - merge( - data.izvajalci, - programi.imena[, c("ID", "Naziv")], - by.x = "ID_vrsta_studija", - by.y = "ID", - all.x = TRUE, - sort = FALSE - ) -# Matching names -names(data.izvajalci)[match(c("ID_vrsta_studija", "Letnik", "Naziv.y"), - names(data.izvajalci))] <- - c("student.program.sifra", - "student.letnik", - "student.program.ime") - - - -#------------------------------------------ ERROR CHECK ---------------------------------------------# - -# Če je output.pred > 1 to pomeni, da sta bazi 1KA odgovorov (anketa PRED) in šifrant X1 neskladni -# Torej vsa neskladja odpravimo -if (nrow(output.pred) > 0) { - data.izvajalci <- data.izvajalci[! paste(data.izvajalci$predmet.sifra, data.izvajalci$izvajalec.sifra) %in% - paste(output.pred$sifpredm, output.pred$ID), ] -} - -#---------------------------------------- //ERROR CHECK// -------------------------------------------# - -#------------------------------ OPISNE STATISTIKE ----------------------------------# - -# IZVAJALCI ANKETA PRED------------------------------- - -# Lecturers mean by the course -izvMean <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = mean, - na.rm = TRUE) -# -colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - -# mediane -izvMedian <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = median, - na.rm = TRUE) -colnames(izvMedian)[3:ncol(izvMedian)] <- paste0(vars.izvajalec$cont$vars,"_median") - -# sd -izvSd <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = sd, - na.rm = TRUE) -colnames(izvSd)[3:ncol(izvSd)] <- paste0(vars.izvajalec$cont$vars,"_sd") - -# min -izvMin <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = min, - na.rm = TRUE) -colnames(izvMin)[3:ncol(izvMin)] <- paste0(vars.izvajalec$cont$vars,"_min") -izvMin[izvMin==Inf] <- NA - -# max -izvMax <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = max, - na.rm = TRUE) -colnames(izvMax)[3:ncol(izvMax)] <- paste0(vars.izvajalec$cont$vars,"_max") -izvMax[izvMax==-Inf] <- NA - -# N posamezne spremenljivke -izvN <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - -# N anket -izvNanket <- - aggregate(data.izvajalci$veljavna, by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], FUN = sum) -colnames(izvNanket)[3] <- "N_anket" - -# N vseh odgovorov -izvNanketvsiodgovori <- aggregate(data.izvajalci$veljavna.vsiodgovori,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNanketvsiodgovori)[3] <- "N_anketTotal" - -# N zavrnjenih anket -izvNzavrnjenih <- - aggregate(data.izvajalci$zavrnjena, by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], FUN = sum) -colnames(izvNzavrnjenih)[3] <- "N_zavrnjenih" - - -# N Lurkerjev PRED izpitom -data.izvajalci$lurker[data.izvajalci$lurker == 0] <- NA -izvNLurkerji <- - aggregate( - as.numeric(data.izvajalci$lurker), - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(izvNLurkerji)[3] <- "N_lurkerjev_ivz" - -# N anket: Izvajalec ni poučeval -izvNipouceval <- - aggregate(data.izvajalci$nipouceval, by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], FUN = sum) -colnames(izvNipouceval)[3] <- "Ni_pouceval" - -# Prvi kvartil Q1 -izvQ1 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.25), - na.rm = T - ) -colnames(izvQ1)[3:ncol(izvQ1)] <- paste0(vars.izvajalec$cont$vars,"_Q1") - -# Tretji kvartil -izvQ3 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.75), - na.rm = T - ) -colnames(izvQ3)[3:ncol(izvQ3)] <- paste0(vars.izvajalec$cont$vars,"_Q3") - -# Prvi decil -izvD1 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.1), - type = 5, - na.rm = T - ) -colnames(izvD1)[3:ncol(izvD1)] <- paste0(vars.izvajalec$cont$vars,"_D1") - -# Deveti decil -izvD9 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.9), - type = 5, - na.rm = T - ) -colnames(izvD9)[3:ncol(izvD9)] <- paste0(vars.izvajalec$cont$vars,"_D9") - - -# Zdužimo opisne statistike izvajalcev -# Merge data for lecturer -povprecja.izvajalci <- - Reduce( - function(x, y) - merge( - x, - y, - c("izvajalec.sifra", "predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - izvMean, - izvSd, - izvMin, - izvMax, - izvN, - izvNanket, - izvNanketvsiodgovori, - izvNzavrnjenih, - izvNipouceval, - izvQ1, - izvQ3, - izvMedian, - izvD1, - izvD9, - izvNLurkerji - ) - ) - -# združit s šifrantom -povprecja.izvajalci <- merge(povprecja.izvajalci, sifrant, - by.x = c("izvajalec.sifra", "predmet.sifra"), - by.y = c("IDPEDAGOGA", "IDP"), all.x = TRUE, sort = FALSE) - - -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# -# Write csv data for AGREGAT: kjerkoli bomo delali trende, bomo prikazali tudi povprečja -# za predmete, ki imajo manj kot 4 enote. In sicer trentuno v primeru, da ima izvajalec -# pri predmetu premalo dogovorov povprečij ne prikažemo oz ne računamo. -# Pri trendih pa bo postopek naslednji: -# V kolikor vsota odgovorov v dveh zaporednih letnih preseže 3 odgovore potem to prikažemo -# v novem stolpcu. In te ocene potrebujemo za trende. -write.csv2( - povprecja.izvajalci, - paste0("povprecja.izvajalci.agregat_", fakulteta, ".csv") -) -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# - - -# zakrivanje vrednosti kjer ni dovolj enot -# If there are less than 4 answers we do not calculate mean for the course or lecturer -premalo <- povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_sd")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_min")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_max")][premalo] <- NA - - -# Kjer je negativno število pomeni, da gre za več vpisanih študentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.izvajalci$ST_STUD <- - ifelse( - povprecja.izvajalci$ST_STUD < as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih), - as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih), - povprecja.izvajalci$ST_STUD - ) - -# povprečje vseh komponent izvajalca -povprecja.izvajalci$izvajalec.ocena.SKUPAJ <- - rowMeans(povprecja.izvajalci[paste0(vars.izvajalec$cont$vars, "_mean")], na.rm = T) - -# % sodelujocih -povprecja.izvajalci$sodelujocih.pct <- - povprecja.izvajalci$N_anket / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % zavrnjenih -povprecja.izvajalci$zavrnjenih.pct <- - povprecja.izvajalci$N_zavrnjenih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % Ni pouceval -povprecja.izvajalci$nipouceval.pct <- - povprecja.izvajalci$Ni_pouceval / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -## N in % neodzivnih -#intersect(as, povprecja.izvajalci$ST_STUD) -povprecja.izvajalci$N_neodzivnih <- - as.numeric(povprecja.izvajalci$ST_STUD) - povprecja.izvajalci$N_anketTotal - povprecja.izvajalci$N_zavrnjenih -povprecja.izvajalci$neodzivnih.pct <- - povprecja.izvajalci$N_neodzivnih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 -## //IZVAJALCI// ## - - -# nova imena predmetov še k povprečjem izvajalcev[] -povprecja.izvajalci <- merge(povprecja.izvajalci, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], by = "predmet.sifra", sort = FALSE) - - - - -######################## -## ŠTUDIJSKI PROGRAMI ## -######################## -# število ocen po programih (za poročila in povprečja po programih) -programi <- unique(data.predmeti[c("student.program.sifra", "student.program.ime")]) -programi <- subset(programi, !is.na(student.program.sifra)) -programi <- subset(programi, student.program.ime != "NA") -programi <- programi[order(programi$student.program.ime), ] - -## izvajalec: Študijski program ## -povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.izv.temp <- subset(data.izvajalci, veljavna) -programi.studentov <- as.data.frame.matrix(table(paste(data.izv.temp$izvajalec.sifra, data.izv.temp$predmet.sifra, sep = "_"), data.izv.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.izvajalci[match(rownames(programi.studentov), paste(povprecja.izvajalci$izvajalec.sifra, povprecja.izvajalci$predmet.sifra, sep = "_")), names(programi.studentov)] <- programi.studentov - -## predmet: Študijski program ## -povprecja.predmeti[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.prog.temp <- subset(data.predmeti, veljavna) -programi.studentov <- as.data.frame.matrix(table(data.prog.temp$predmet.sifra, data.prog.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.predmeti[match(rownames(programi.studentov), povprecja.predmeti$predmet.sifra), names(programi.studentov)] <- programi.studentov - -# sort by name -povprecja.izvajalci <- povprecja.izvajalci[order(povprecja.izvajalci$NAZIV.PEDAGOGA, povprecja.izvajalci$PREDMET), ] -povprecja.predmeti <- povprecja.predmeti[order(povprecja.predmeti$PREDMET),] - - - - -# skupna povprečja izvajalcev (povprečja ocen pri vseh predmetih) -povprecja.izvajalci.skupaj <- - aggregate(povprecja.izvajalci[, c( - "ST_STUD", - "N_anket", - "N_anketTotal", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )], - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], - FUN = mean, - na.rm = TRUE) - - - -# number of evaluations from different programmes -vsota.ocen.programov <- - aggregate(povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)], - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], - FUN = sum, - na.rm = TRUE) - - - -# number of courses with at least minimun nuber of answers -st.ocen <- aggregate(list(st.ocen=povprecja.izvajalci$N_anket >= minEnot), - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], FUN = sum, na.rm = TRUE) - - -povprecja.izvajalci.skupaj <- - Reduce( - function(x, y) - merge( - x, - y, - by = "izvajalec.sifra", - all.x = TRUE, - sort = FALSE - ) , - list( - povprecja.izvajalci.skupaj, - vsota.ocen.programov, - st.ocen, - unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]) - ) - ) - - - -# sort -povprecja.izvajalci.skupaj <- povprecja.izvajalci.skupaj[order(povprecja.izvajalci.skupaj$NAZIV.PEDAGOGA),] - - - - -# da izračunamo povprečja vseh predmetov določenega izvajalca rabimo ocene predmetov po izvajalcih (podvojene vrstice z različnimi šiframi izvajalcev) -povprecja.predmeti.vsi.izvajalci <- - merge( - povprecja.izvajalci[, c("izvajalec.sifra", "predmet.sifra")], - povprecja.predmeti, - by = "predmet.sifra", - all.x = TRUE, - sort = FALSE - ) - -povprecja.predmetov.izvajalca.skupaj <- - aggregate( - povprecja.predmeti.vsi.izvajalci[, c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.cours, "_mean"), - "predmet.ocena.SKUPAJ")], - by = povprecja.predmeti.vsi.izvajalci[, "izvajalec.sifra", drop = FALSE], - FUN = mean, - na.rm = TRUE - ) - - -# še imena izvajalcev -povprecja.predmetov.izvajalca.skupaj <- merge(povprecja.predmetov.izvajalca.skupaj, - unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]), - by = "izvajalec.sifra", all.x = TRUE) - -# povprečja vseh izvajalecv pri vsakem predmetu -povprecja.predmet.izvajalci.skupaj <- aggregate(povprecja.izvajalci[, c("ST_STUD","N_anket","N_anketTotal","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")], - by = povprecja.izvajalci[,"predmet.sifra",drop = FALSE], - FUN = mean, na.rm = TRUE) -# še imena predmetov -povprecja.predmet.izvajalci.skupaj <- merge(povprecja.predmet.izvajalci.skupaj, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], - by = "predmet.sifra", all.x = TRUE) - - -povprecja.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[order(povprecja.predmetov.izvajalca.skupaj$NAZIV.PEDAGOGA),] -povprecja.predmet.izvajalci.skupaj <- povprecja.predmet.izvajalci.skupaj[order(povprecja.predmet.izvajalci.skupaj$ime.predmeta),] - - - - - -################# -## Quantiles ## -################# - -# for every lecturer/course -# S funkcijo kvantRang in kvantRang1 izračunamo in barvamo kvantilne range, ki se pokažejo v posameznih tabelah (glej skirpto funkcije.r) -# Kvantilni rangi za izvajalce pri predmetih (IPP) -povprecja.izvajalci$ime.predmeta<- povprecja.izvajalci$PREDMET - -kvantili.izvajalci <- povprecja.izvajalci[c("izvajalec.sifra","NAZIV.PEDAGOGA","predmet.sifra","ime.predmeta","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci[[var]] <- kvantRang(kvantili.izvajalci[[var]]) - -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci[[var]] <- kvantRang1(kvantili.izvajalci[[var]]) - -} -# //Kvantilni rangi za izvajalce pri predmetih (IPP)// # - - - -## lecturer averages ## -kvantili.izvajalci.skupaj <- povprecja.izvajalci.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang(kvantili.izvajalci.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang1(kvantili.izvajalci.skupaj[[var]]) - -} - - - - - - -kvantili.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD", - "N_anket","sodelujocih.pct", - paste0(vars.cours,"_mean"), - "predmet.ocena.SKUPAJ")] -for (var in c(paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang(kvantili.predmetov.izvajalca.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang1(kvantili.predmetov.izvajalca.skupaj[[var]]) - -} - - - -## for table names (izpis izvajalca, programov, fakultete) ## -kvantili.izvajalci.st <- sum(kvantili.izvajalci$izvajalec.ocena.SKUPAJ != ".") # Število vseh ocenjenih izvajalcev fakultete -kvantili.izvajalci.skupaj.st <- sum(kvantili.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") # Število vseh ocenjenih IPP (izvajalcev pri) -kvantili.predmetov.izvajalca.skupaj.st.pred <- sum(kvantili.predmetov.izvajalca.skupaj$predmet.ocena.SKUPAJ != ".") - - - - - - - -##################################### -# POVPREČJA PO ŠTUDIJSKIH PROGRAMIH -##################################### -# Skupna povprečja izvajalcav po posameznih študijskih programih -progMeanIzv <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci["student.program.sifra"], - FUN = mean, - na.rm = TRUE) -# Dodamo še skupno povprečje glede na vseh sedem komponent -progMeanIzv <- - cbind(progMeanIzv, izvajalec.ocena.SKUPAJ = rowMeans(progMeanIzv[vars.izvajalec$cont$vars])) - -#izračun povprečij izvajalcev za študijske programe in insert v poročila za fakulteto -progMeanIzv.fak <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("student.program.sifra", "student.program.ime")], - FUN = mean, - na.rm = TRUE) - -progMeanIzv.fak1 <- - cbind(progMeanIzv.fak, - izvajalec.ocena.SKUPAJ = rowMeans(progMeanIzv.fak[vars.izvajalec$cont$vars], na.rm = TRUE)) -# Število odogovorov (število anket) pri posameznem študijskem programu -st.odgovorov.fak1 <- - aggregate(data.izvajalci$veljavna, by = data.izvajalci[c("student.program.sifra", "student.program.ime")], FUN = sum) -colnames(st.odgovorov.fak1)[3] <- "N_anket" # Poimenujemo stolpec - -progMeanIzv.fak1 <- - merge( - progMeanIzv.fak1, - st.odgovorov.fak1, - by = c("student.program.sifra", "student.program.ime"), - all = TRUE, - sort = FALSE - ) -## //povprečja programov// ## - - - - - - - - - -#################################### -## lecturer averages by programme ## -#################################### -povprecja.izvajalci.programi <- NULL -povprecja.izvajalci.programi.brez.cenzure <- NULL # Vsa povprečja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by programme ## -for (program in programi$student.program.sifra) { - data.program <- subset(data.izvajalci, student.program.sifra == program) - if (nrow(data.program)>0){ - # povprečja - izvMean <- aggregate(data.program[vars.izvajalec$cont$vars],by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = mean, na.rm = TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.program[vars.izvajalec$cont$vars], by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.program$veljavna, by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.program <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - izvajalci.program <- merge(izvajalci.program, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - povprecja.izvajalci.programi.brez.cenzure <- rbind(povprecja.izvajalci.programi.brez.cenzure, - cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.program[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - # average of components - izvajalci.program$izvajalec.ocena.SKUPAJ <- rowMeans(izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")],na.rm=T) - - povprecja.izvajalci.programi <- rbind(povprecja.izvajalci.programi, cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - } -} -povprecja.izvajalci.programi <- merge(povprecja.izvajalci.programi, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) - - -povprecja.izvajalci.programi.brez.cenzure <- merge(povprecja.izvajalci.programi.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA","PRAKSA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -## //lecturer averages by programme// ## - -######################################### -## lecturer averages by students' year ## -######################################### -povprecja.izvajalci.letniki <- NULL -povprecja.izvajalci.letniki.brez.cenzure <- NULL # Vsa povprečja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by students' year ## -for (letnik in unique(sort(data.izvajalci$student.letnik))) { - data.letnik <- subset(data.izvajalci, student.letnik == letnik) - - # povprečja - izvMean <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=mean, na.rm=TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.letnik$veljavna, by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.letnik <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - izvajalci.letnik <- merge(izvajalci.letnik, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - povprecja.izvajalci.letniki.brez.cenzure <- rbind(povprecja.izvajalci.letniki.brez.cenzure, - cbind(izvajalci.letnik, letnik.studentov=letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - - povprecja.izvajalci.letniki <- rbind(povprecja.izvajalci.letniki, cbind(izvajalci.letnik, letnik.studentov=letnik)) -} -povprecja.izvajalci.letniki <- merge(povprecja.izvajalci.letniki, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -povprecja.izvajalci.letniki.brez.cenzure <- merge(povprecja.izvajalci.letniki.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", - "NAZIV.PEDAGOGA", "NACIN_STUDIJA","PRAKSA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -## //lecturer averages by students' year// ## - - - - - -## PODATKI ZA TABELE, KI SE DODAJO K "ANALIZI IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH" ## -test1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test2 <- cbind(test1, izvajalec.ocena.SKUPAJ=rowMeans(test1[vars.izvajalec$cont$vars], na.rm = TRUE)) - - -#Zaokroži vrednosti za izpis programov pri IZVAJALCU -round_df <- function(x, digits) { - # round all numeric variables - # x: data frame - # digits: number of digits to round - numeric_columns <- sapply(x, class) == 'numeric' - x[numeric_columns] <- round(x[numeric_columns], digits) - x -} -test2 <- round_df(test2, 1) -## //PODATKI ZA TABELE// ## - - - -############################ -# quantiles by programme # -########################### -kvantili.izvajalci.programi <- NULL -for (program in unique(povprecja.izvajalci.programi$program.studentov)) { - kvantili.izvajalci.program <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$program.studentov == program & - povprecja.izvajalci.programi$N_anket > 0, - c("izvajalec.sifra","predmet.sifra","program.studentov","program.studentov.ime", - "N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.program[[var]] <- kvantRang(kvantili.izvajalci.program[[var]]) - } - - for (var in c("N_anket")) { - kvantili.izvajalci.program[[var]] <- kvantRang1(kvantili.izvajalci.program[[var]]) - } - - kvantili.izvajalci.programi <- rbind(kvantili.izvajalci.programi, kvantili.izvajalci.program) -} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/05_Izvajalci_PRED.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/05_Izvajalci_PRED.R deleted file mode 100644 index 361150a26..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/05_Izvajalci_PRED.R +++ /dev/null @@ -1,886 +0,0 @@ -#---------------------------------- PODATKI ZA IZVAJALCE (ANKETA PRED) -------------------------------# - -# LECTURER----------------------------------------------- -# First we need to subset all lecturers that are teaching -# There can be up to 55 lecturers in the data base --> That means that for the single -# course there can be multiple lectures (izvajalec1 .... izvajalec12 etc) see -# "anketa_pred_izp_FDV for example. -# First lets see how many lecturers for single course there can be -# In case of FDV we have 12 lectures -nbr.izvajalci <- - names(data_pred_izpitom)[grepl("izvajalec." , names(data_pred_izpitom))] - -# Select all variables that are needed to do statistics and charts for each lecturer (izvajalec) -# We will use library (stringr) in order to subset all columns -# that are relevant for Lecturer (izvajalec) -library(stringr) -var.izv <- - names(data_pred_izpitom)[!is.na(str_extract(names(data_pred_izpitom), "[0-9]+") == 1)] -# We do not want to have Q variables and PRKT variables as these are not important for lecturer -var.izv <- var.izv[!grepl("Q|PRKT|idprog|program|IDP1", var.izv)] - -# Nov we will create a data frame of each lecturer (column) that is is teaching course -# and is evaluated. NOTE: for single course there could be multiple lecturers that -# are evaluated seperately -# First we check how myna lecturers there is that students evaluated -var.izv <- data.frame(lapply(seq(length(nbr.izvajalci)), function(i) { - df <- NULL - df[[i]] <- - var.izv[grepl(paste0("^[a-z]*", i, "[a-z]*$"), var.izv, ignore.case = TRUE)] -}), stringsAsFactors = FALSE) - -# Then we add colnames -colnames(var.izv) <- - unlist(lapply(seq(length(nbr.izvajalci)), function(i) - paste0("izvajalec.", i))) - -# And rownames will be variables that are evaluated in the course and -# also wil help us detrmine the teacher (izvajalec.sifra) and if he -# had lectures in the course (izvajalec.jepouceval == "-1"). -# izvajalec.jepouceval == "1") means that lecturer did not teach -rownames(var.izv) <- - c( - "izvajalec.ime", - "izvajalec.sifra", - "izvajalec.jepouceval", - "izvajalec.ocena.kakovost", - "izvajalec.ocena.pripravljenost", - "izvajalec.ocena.razumljivost", - "izvajalec.ocena.zanimivost", - "izvajalec.ocena.kriticnost", - "izvajalec.ocena.korektnost", - "izvajalec.komentar.dobro", - "izvajalec.komentar.slabo" - ) -vars.izv <- - as.vector(rownames(var.izv)[!rownames(var.izv) %in% c("izvajalec.ime", - "izvajalec.sifra", - "izvajalec.komentar.dobro", - "izvajalec.komentar.slabo")]) - - -# COURSE ANKETA PRED -------------------------------------------- -# Next we also need all variables for the course that -# was evaluated in ANKETA PRED izpitom -# - -# Select variables needed for ANEKTA PRED IZPITOm -# This variables are students evaluation for the course -# if student participated in she survey, answers to -# open ended questions etc. -var.pred <- - names(data_pred_izpitom)[grepl("sifpredm|PINAGa|IZPRED|PRPOZ|PRPOM" , names(data_pred_izpitom))] -var.pred <- data.frame(var.pred, stringsAsFactors = FALSE) -# And rownames will be variables that are evaluated in the course -rownames(var.pred) <- - c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.ocena.zadovoljstvo", - "predmet.ocena.usklajenost", - "predmet.ocena.samostojnost", - "predmet.ocena.literatura", - "predmet.ocena.obvescenost", - "predmet.ocena.informiranost", - "predmet.ocena.znanje", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - ) - -# Items -vars.cours <- - as.vector(rownames(var.pred)[!rownames(var.pred) %in% c( - "predmet.sifra", - "predmet.izpolnjeval.pred", - "predmet.komentar.dobro", - "predmet.komentar.slabo" - )]) - - -data.izvajalci <- NULL -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -for (i in names(var.izv)){ - # spremenljivke ki smo jih določili zgoraj + we also need student letnik and program for tables - # We will also calculate average scors for all students based on ther year - data.temp <- data_pred_izpitom[c(var.pred[, 1], var.izv[[i]],"idprog","letnik","program","lurker")] - names(data.temp) <- c(rownames(var.pred), rownames(var.izv), "ID_vrsta_studija","Letnik","Naziv","lurker") - data.temp <- subset(data.temp, izvajalec.sifra > 0) # samo kjer je naveden izvajalec - if (is.null(data.izvajalci)) { - data.izvajalci <- data.temp - } else { - data.izvajalci <- rbind(data.izvajalci,data.temp) - } -} -} else { - for (i in names(var.izv)){ - # spremenljivke ki smo jih določili zgoraj + we also need student letnik and program for tables - # We will also calculate average scors for all students based on ther year - data.temp <- data_pred_izpitom[c(var.pred[, 1], var.izv[[i]],"idprog","program")] - names(data.temp) <- c(rownames(var.pred), rownames(var.izv), "ID_vrsta_studija","Naziv") - data.temp <- subset(data.temp, izvajalec.sifra > 0) # samo kjer je naveden izvajalec - if (is.null(data.izvajalci)) { - data.izvajalci <- data.temp - } else { - data.izvajalci <- rbind(data.izvajalci,data.temp) - } - } -} -# MANJKAJOČE VREDNOSTI---------------------- -# When caluclating lecturers averages -# we want to exclude all missing values -# But whwn we will do frequency tables we want to -# keep values -# "-99" "Nimam dovolj informacij" -# "-96" "Ne želim odgovoriti" - - -# Missing values for frequency tables -data.izv.miss <- data.izvajalci -data.izv.miss[data.izv.miss == "-99"] <- "Nimam dovolj informacij" -data.izv.miss[data.izv.miss == "-96"] <- "Ne želim odgovoriti" -data.izv.miss[data.izv.miss < 0] <- NA - - -# Missing values for averages and charts -data.izvajalci[,! colnames(data.izvajalci) %in% (c("predmet.izpolnjeval.pred","izvajalec.jepouceval"))][data.izvajalci[,! colnames(data.izvajalci) %in% (c("predmet.izpolnjeval.pred","izvajalec.jepouceval"))] < 0] <- NA -# Convert to numeric columns -data.izvajalci[c(vars.izv, vars.cours)] <- as.data.frame(lapply(data.izvajalci[c(vars.izv, vars.cours)] , as.numeric)) - -# all values with some miss for tables -# Glej tabelo Povprečja in deleži kategorij odgovorov za komponente pedagoškega dela izvajalca pri predmetu (anketa PRED izpitom)" -izv.someMiss <- sort(unique(as.vector(as.matrix(data.izv.miss[,vars.izvajalec$cont$vars])))) - -# Check if values are missing. We need column_name for table making -# V poročilu za izvajalca glej podpoglavje: Frekvenčna porazdelitev ocen komponent pedagoškega dela izvajalca -# V primeru, da kakšna vrednost manjka jo ustvarimo, sicer ko poženemo koda-izvajalec_predmet ne generira tabel -column_name <- - c("1", - "2", - "3", - "4", - "5", - "Ne želim odgovoriti", - "Nimam dovolj informacij") - -if (length(which(izv.someMiss %in% column_name)) < 7) { - # Če so kakšne manjkajoče vrednosti, ki se dodajajo v tabele kot imena stolpcev za izvajalca - Missing <- setdiff(column_name, izv.someMiss) # Find names of missing columns - izv.someMiss <- c(Missing,izv.someMiss) - izv.someMiss <- sort(izv.someMiss) -} - -# MANJKAJOČE VREDNOSTI---------------------- -data.izvajalci <- data.izvajalci[order(data.izvajalci$izvajalec.sifra, data.izvajalci$predmet.sifra), ] -# Število vseh odgovorov. To so odgovori na predmet in izvajalca -# '-1' neodgovorjeno vprašanje, '-2' preskok zaradi pogoja (IF) -data.izvajalci$veljavna.vsiodgovori <- - data.izvajalci$predmet.izpolnjeval.pred == -1 & - ( - data.izvajalci$izvajalec.jepouceval == 1 | - data.izvajalci$izvajalec.jepouceval == 2 | - data.izvajalci$izvajalec.jepouceval == -2 - ) -# Število odgovorov izvajalca -# ali je anketa veljavna za izvajalca; ali je student ni izpolnjeval (je pa začel anketo) -data.izvajalci$veljavna <- - data.izvajalci$predmet.izpolnjeval.pred == -1 & - (data.izvajalci$izvajalec.jepouceval == 1 | - data.izvajalci$izvajalec.jepouceval == -2) -data.izvajalci$zavrnjena <- - ( - !data.izvajalci$veljavna & - !is.na(data.izvajalci$predmet.izpolnjeval.pred) & - !is.na(data.izvajalci$izvajalec.jepouceval) & - !(data.izvajalci$izvajalec.jepouceval == 2) - ) -data.izvajalci$nipouceval <- - data.izvajalci$izvajalec.jepouceval == 2 # Če je študent v anketi pred izpitom odgovoril, da ga izvajalec pri tem predmetu ni poučeval -# adding student data (year and programme) -data.izvajalci <- - merge( - data.izvajalci, - programi.imena[, c("ID", "Naziv")], - by.x = "ID_vrsta_studija", - by.y = "ID", - all.x = TRUE, - sort = FALSE - ) -# Matching names -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -names(data.izvajalci)[match(c("ID_vrsta_studija", "Letnik", "Naziv.y"), - names(data.izvajalci))] <- - c("student.program.sifra", - "student.letnik", - "student.program.ime") -} else { - names(data.izvajalci)[match(c("ID_vrsta_studija", "Naziv.y"), - names(data.izvajalci))] <- - c("student.program.sifra", - "student.program.ime") -} - - -#------------------------------------------ ERROR CHECK ---------------------------------------------# - -# Če je output.pred > 1 to pomeni, da sta bazi 1KA odgovorov (anketa PRED) in šifrant X1 neskladni -# Torej vsa neskladja odpravimo -if (nrow(output.pred) > 0) { - data.izvajalci <- data.izvajalci[! paste(data.izvajalci$predmet.sifra, data.izvajalci$izvajalec.sifra) %in% - paste(output.pred$sifpredm, output.pred$ID), ] -} - -#---------------------------------------- //ERROR CHECK// -------------------------------------------# - -#------------------------------ OPISNE STATISTIKE ----------------------------------# - -# IZVAJALCI ANKETA PRED------------------------------- - -# Lecturers mean by the course -izvMean <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = mean, - na.rm = TRUE) -# -colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - -# mediane -izvMedian <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = median, - na.rm = TRUE) -colnames(izvMedian)[3:ncol(izvMedian)] <- paste0(vars.izvajalec$cont$vars,"_median") - -# sd -izvSd <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = sd, - na.rm = TRUE) -colnames(izvSd)[3:ncol(izvSd)] <- paste0(vars.izvajalec$cont$vars,"_sd") - -# min -izvMin <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = min, - na.rm = TRUE) -colnames(izvMin)[3:ncol(izvMin)] <- paste0(vars.izvajalec$cont$vars,"_min") -izvMin[izvMin==Inf] <- NA - -# max -izvMax <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = max, - na.rm = TRUE) -colnames(izvMax)[3:ncol(izvMax)] <- paste0(vars.izvajalec$cont$vars,"_max") -izvMax[izvMax==-Inf] <- NA - -# N posamezne spremenljivke -izvN <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - -# N anket -izvNanket <- - aggregate(data.izvajalci$veljavna, by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], FUN = sum) -colnames(izvNanket)[3] <- "N_anket" - -# N vseh odgovorov -izvNanketvsiodgovori <- aggregate(data.izvajalci$veljavna.vsiodgovori,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNanketvsiodgovori)[3] <- "N_anketTotal" - -# N zavrnjenih anket -izvNzavrnjenih <- - aggregate(data.izvajalci$zavrnjena, by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], FUN = sum) -colnames(izvNzavrnjenih)[3] <- "N_zavrnjenih" - - -# N Lurkerjev PRED izpitom -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -data.izvajalci$lurker[data.izvajalci$lurker == 0] <- NA -izvNLurkerji <- - aggregate( - as.numeric(data.izvajalci$lurker), - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(izvNLurkerji)[3] <- "N_lurkerjev_ivz" -} -# N anket: Izvajalec ni poučeval -izvNipouceval <- - aggregate(data.izvajalci$nipouceval, by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], FUN = sum) -colnames(izvNipouceval)[3] <- "Ni_pouceval" - -# Prvi kvartil Q1 -izvQ1 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.25), - na.rm = T - ) -colnames(izvQ1)[3:ncol(izvQ1)] <- paste0(vars.izvajalec$cont$vars,"_Q1") - -# Tretji kvartil -izvQ3 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.75), - na.rm = T - ) -colnames(izvQ3)[3:ncol(izvQ3)] <- paste0(vars.izvajalec$cont$vars,"_Q3") - -# Prvi decil -izvD1 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.1), - type = 5, - na.rm = T - ) -colnames(izvD1)[3:ncol(izvD1)] <- paste0(vars.izvajalec$cont$vars,"_D1") - -# Deveti decil -izvD9 <- - aggregate( - data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("predmet.sifra", "izvajalec.sifra")], - FUN = quantile, - probs = c(0.9), - type = 5, - na.rm = T - ) -colnames(izvD9)[3:ncol(izvD9)] <- paste0(vars.izvajalec$cont$vars,"_D9") - - -# Zdužimo opisne statistike izvajalcev -# Merge data for lecturer -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -povprecja.izvajalci <- - Reduce( - function(x, y) - merge( - x, - y, - c("izvajalec.sifra", "predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - izvMean, - izvSd, - izvMin, - izvMax, - izvN, - izvNanket, - izvNanketvsiodgovori, - izvNzavrnjenih, - izvNipouceval, - izvQ1, - izvQ3, - izvMedian, - izvD1, - izvD9, - izvNLurkerji - ) - ) -} else { - povprecja.izvajalci <- - Reduce( - function(x, y) - merge( - x, - y, - c("izvajalec.sifra", "predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - izvMean, - izvSd, - izvMin, - izvMax, - izvN, - izvNanket, - izvNanketvsiodgovori, - izvNzavrnjenih, - izvNipouceval, - izvQ1, - izvQ3, - izvMedian, - izvD1, - izvD9 - ) - ) -} -# združit s šifrantom -povprecja.izvajalci <- merge(povprecja.izvajalci, sifrant, - by.x = c("izvajalec.sifra", "predmet.sifra"), - by.y = c("IDPEDAGOGA", "IDP"), all.x = TRUE, sort = FALSE) - - -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# -# Write csv data for AGREGAT: kjerkoli bomo delali trende, bomo prikazali tudi povprečja -# za predmete, ki imajo manj kot 4 enote. In sicer trentuno v primeru, da ima izvajalec -# pri predmetu premalo dogovorov povprečij ne prikažemo oz ne računamo. -# Pri trendih pa bo postopek naslednji: -# V kolikor vsota odgovorov v dveh zaporednih letnih preseže 3 odgovore potem to prikažemo -# v novem stolpcu. In te ocene potrebujemo za trende. -# write.csv2( -# povprecja.izvajalci, -# paste0("povprecja.izvajalci.agregat_", fakulteta, ".csv") -# ) -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# - - -# zakrivanje vrednosti kjer ni dovolj enot -# If there are less than 4 answers we do not calculate mean for the course or lecturer -premalo <- povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_sd")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_min")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_max")][premalo] <- NA - - -# Kjer je negativno število pomeni, da gre za več vpisanih študentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.izvajalci$ST_STUD <- - ifelse( - povprecja.izvajalci$ST_STUD < as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih), - as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih), - povprecja.izvajalci$ST_STUD - ) - -# povprečje vseh komponent izvajalca -povprecja.izvajalci$izvajalec.ocena.SKUPAJ <- - rowMeans(povprecja.izvajalci[paste0(vars.izvajalec$cont$vars, "_mean")], na.rm = T) - -# % sodelujocih -povprecja.izvajalci$sodelujocih.pct <- - povprecja.izvajalci$N_anket / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % zavrnjenih -povprecja.izvajalci$zavrnjenih.pct <- - povprecja.izvajalci$N_zavrnjenih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % Ni pouceval -povprecja.izvajalci$nipouceval.pct <- - povprecja.izvajalci$Ni_pouceval / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -## N in % neodzivnih -#intersect(as, povprecja.izvajalci$ST_STUD) -povprecja.izvajalci$N_neodzivnih <- - as.numeric(povprecja.izvajalci$ST_STUD) - povprecja.izvajalci$N_anketTotal - povprecja.izvajalci$N_zavrnjenih -povprecja.izvajalci$neodzivnih.pct <- - povprecja.izvajalci$N_neodzivnih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 -## //IZVAJALCI// ## - - -# nova imena predmetov še k povprečjem izvajalcev[] -povprecja.izvajalci <- merge(povprecja.izvajalci, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], by = "predmet.sifra", sort = FALSE) - - - - -######################## -## ŠTUDIJSKI PROGRAMI ## -######################## -# število ocen po programih (za poročila in povprečja po programih) -programi <- unique(data.predmeti[c("student.program.sifra", "student.program.ime")]) -programi <- subset(programi, !is.na(student.program.sifra)) -programi <- subset(programi, student.program.ime != "NA") -programi <- programi[order(programi$student.program.ime), ] - -## izvajalec: Študijski program ## -povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.izv.temp <- subset(data.izvajalci, veljavna) -programi.studentov <- as.data.frame.matrix(table(paste(data.izv.temp$izvajalec.sifra, data.izv.temp$predmet.sifra, sep = "_"), data.izv.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.izvajalci[match(rownames(programi.studentov), paste(povprecja.izvajalci$izvajalec.sifra, povprecja.izvajalci$predmet.sifra, sep = "_")), names(programi.studentov)] <- programi.studentov - -## predmet: Študijski program ## -povprecja.predmeti[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.prog.temp <- subset(data.predmeti, veljavna) -programi.studentov <- as.data.frame.matrix(table(data.prog.temp$predmet.sifra, data.prog.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.predmeti[match(rownames(programi.studentov), povprecja.predmeti$predmet.sifra), names(programi.studentov)] <- programi.studentov - -# sort by name -povprecja.izvajalci <- povprecja.izvajalci[order(povprecja.izvajalci$NAZIV.PEDAGOGA, povprecja.izvajalci$PREDMET), ] -povprecja.predmeti <- povprecja.predmeti[order(povprecja.predmeti$PREDMET),] - - - - -# skupna povprečja izvajalcev (povprečja ocen pri vseh predmetih) -povprecja.izvajalci.skupaj <- - aggregate(povprecja.izvajalci[, c( - "ST_STUD", - "N_anket", - "N_anketTotal", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )], - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], - FUN = mean, - na.rm = TRUE) - - - -# number of evaluations from different programmes -vsota.ocen.programov <- - aggregate(povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)], - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], - FUN = sum, - na.rm = TRUE) - - - -# number of courses with at least minimun nuber of answers -st.ocen <- aggregate(list(st.ocen=povprecja.izvajalci$N_anket >= minEnot), - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], FUN = sum, na.rm = TRUE) - - -povprecja.izvajalci.skupaj <- - Reduce( - function(x, y) - merge( - x, - y, - by = "izvajalec.sifra", - all.x = TRUE, - sort = FALSE - ) , - list( - povprecja.izvajalci.skupaj, - vsota.ocen.programov, - st.ocen, - unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]) - ) - ) - - - -# sort -povprecja.izvajalci.skupaj <- povprecja.izvajalci.skupaj[order(povprecja.izvajalci.skupaj$NAZIV.PEDAGOGA),] - - - - -# da izračunamo povprečja vseh predmetov določenega izvajalca rabimo ocene predmetov po izvajalcih (podvojene vrstice z različnimi šiframi izvajalcev) -povprecja.predmeti.vsi.izvajalci <- - merge( - povprecja.izvajalci[, c("izvajalec.sifra", "predmet.sifra")], - povprecja.predmeti, - by = "predmet.sifra", - all.x = TRUE, - sort = FALSE - ) - -povprecja.predmetov.izvajalca.skupaj <- - aggregate( - povprecja.predmeti.vsi.izvajalci[, c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.cours, "_mean"), - "predmet.ocena.SKUPAJ")], - by = povprecja.predmeti.vsi.izvajalci[, "izvajalec.sifra", drop = FALSE], - FUN = mean, - na.rm = TRUE - ) - - -# še imena izvajalcev -povprecja.predmetov.izvajalca.skupaj <- merge(povprecja.predmetov.izvajalca.skupaj, - unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]), - by = "izvajalec.sifra", all.x = TRUE) - -# povprečja vseh izvajalecv pri vsakem predmetu -povprecja.predmet.izvajalci.skupaj <- aggregate(povprecja.izvajalci[, c("ST_STUD","N_anket","N_anketTotal","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")], - by = povprecja.izvajalci[,"predmet.sifra",drop = FALSE], - FUN = mean, na.rm = TRUE) -# še imena predmetov -povprecja.predmet.izvajalci.skupaj <- merge(povprecja.predmet.izvajalci.skupaj, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], - by = "predmet.sifra", all.x = TRUE) - - -povprecja.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[order(povprecja.predmetov.izvajalca.skupaj$NAZIV.PEDAGOGA),] -povprecja.predmet.izvajalci.skupaj <- povprecja.predmet.izvajalci.skupaj[order(povprecja.predmet.izvajalci.skupaj$ime.predmeta),] - - - - - -################# -## Quantiles ## -################# - -# for every lecturer/course -# S funkcijo kvantRang in kvantRang1 izračunamo in barvamo kvantilne range, ki se pokažejo v posameznih tabelah (glej skirpto funkcije.r) -# Kvantilni rangi za izvajalce pri predmetih (IPP) -povprecja.izvajalci$ime.predmeta<- povprecja.izvajalci$PREDMET - -kvantili.izvajalci <- povprecja.izvajalci[c("izvajalec.sifra","NAZIV.PEDAGOGA","predmet.sifra","ime.predmeta","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci[[var]] <- kvantRang(kvantili.izvajalci[[var]]) - -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci[[var]] <- kvantRang1(kvantili.izvajalci[[var]]) - -} -# //Kvantilni rangi za izvajalce pri predmetih (IPP)// # - - - -## lecturer averages ## -kvantili.izvajalci.skupaj <- povprecja.izvajalci.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang(kvantili.izvajalci.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang1(kvantili.izvajalci.skupaj[[var]]) - -} - - - - - - -kvantili.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD", - "N_anket","sodelujocih.pct", - paste0(vars.cours,"_mean"), - "predmet.ocena.SKUPAJ")] -for (var in c(paste0(vars.cours,"_mean"),"predmet.ocena.SKUPAJ")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang(kvantili.predmetov.izvajalca.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang1(kvantili.predmetov.izvajalca.skupaj[[var]]) - -} - - - -## for table names (izpis izvajalca, programov, fakultete) ## -kvantili.izvajalci.st <- sum(kvantili.izvajalci$izvajalec.ocena.SKUPAJ != ".") # Število vseh ocenjenih izvajalcev fakultete -kvantili.izvajalci.skupaj.st <- sum(kvantili.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") # Število vseh ocenjenih IPP (izvajalcev pri) -kvantili.predmetov.izvajalca.skupaj.st.pred <- sum(kvantili.predmetov.izvajalca.skupaj$predmet.ocena.SKUPAJ != ".") - - - - - - - -##################################### -# POVPREČJA PO ŠTUDIJSKIH PROGRAMIH -##################################### -# Skupna povprečja izvajalcav po posameznih študijskih programih -progMeanIzv <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci["student.program.sifra"], - FUN = mean, - na.rm = TRUE) -# Dodamo še skupno povprečje glede na vseh sedem komponent -progMeanIzv <- - cbind(progMeanIzv, izvajalec.ocena.SKUPAJ = rowMeans(progMeanIzv[vars.izvajalec$cont$vars])) - -#izračun povprečij izvajalcev za študijske programe in insert v poročila za fakulteto -progMeanIzv.fak <- - aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("student.program.sifra", "student.program.ime")], - FUN = mean, - na.rm = TRUE) - -progMeanIzv.fak1 <- - cbind(progMeanIzv.fak, - izvajalec.ocena.SKUPAJ = rowMeans(progMeanIzv.fak[vars.izvajalec$cont$vars], na.rm = TRUE)) -# Število odogovorov (število anket) pri posameznem študijskem programu -st.odgovorov.fak1 <- - aggregate(data.izvajalci$veljavna, by = data.izvajalci[c("student.program.sifra", "student.program.ime")], FUN = sum) -colnames(st.odgovorov.fak1)[3] <- "N_anket" # Poimenujemo stolpec - -progMeanIzv.fak1 <- - merge( - progMeanIzv.fak1, - st.odgovorov.fak1, - by = c("student.program.sifra", "student.program.ime"), - all = TRUE, - sort = FALSE - ) -## //povprečja programov// ## - - - - - - - - - -#################################### -## lecturer averages by programme ## -#################################### -povprecja.izvajalci.programi <- NULL -povprecja.izvajalci.programi.brez.cenzure <- NULL # Vsa povprečja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by programme ## -for (program in programi$student.program.sifra) { - data.program <- subset(data.izvajalci, student.program.sifra == program) - if (nrow(data.program)>0){ - # povprečja - izvMean <- aggregate(data.program[vars.izvajalec$cont$vars],by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = mean, na.rm = TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.program[vars.izvajalec$cont$vars], by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.program$veljavna, by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.program <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - izvajalci.program <- merge(izvajalci.program, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - povprecja.izvajalci.programi.brez.cenzure <- rbind(povprecja.izvajalci.programi.brez.cenzure, - cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.program[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - # average of components - izvajalci.program$izvajalec.ocena.SKUPAJ <- rowMeans(izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")],na.rm=T) - - povprecja.izvajalci.programi <- rbind(povprecja.izvajalci.programi, cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - } -} -povprecja.izvajalci.programi <- merge(povprecja.izvajalci.programi, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) - - -povprecja.izvajalci.programi.brez.cenzure <- merge(povprecja.izvajalci.programi.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA","PRAKSA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -## //lecturer averages by programme// ## - -######################################### -## lecturer averages by students' year ## -######################################### -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -povprecja.izvajalci.letniki <- NULL -povprecja.izvajalci.letniki.brez.cenzure <- NULL # Vsa povprečja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by students' year ## -for (letnik in unique(sort(data.izvajalci$student.letnik))) { - data.letnik <- subset(data.izvajalci, student.letnik == letnik) - - # povprečja - izvMean <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=mean, na.rm=TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.letnik$veljavna, by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.letnik <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - izvajalci.letnik <- merge(izvajalci.letnik, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - povprecja.izvajalci.letniki.brez.cenzure <- rbind(povprecja.izvajalci.letniki.brez.cenzure, - cbind(izvajalci.letnik, letnik.studentov=letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - - povprecja.izvajalci.letniki <- rbind(povprecja.izvajalci.letniki, cbind(izvajalci.letnik, letnik.studentov=letnik)) -} -povprecja.izvajalci.letniki <- merge(povprecja.izvajalci.letniki, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -povprecja.izvajalci.letniki.brez.cenzure <- merge(povprecja.izvajalci.letniki.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", - "NAZIV.PEDAGOGA", "NACIN_STUDIJA","PRAKSA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -## //lecturer averages by students' year// ## -} - - - - -## PODATKI ZA TABELE, KI SE DODAJO K "ANALIZI IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH" ## -test1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test2 <- cbind(test1, izvajalec.ocena.SKUPAJ=rowMeans(test1[vars.izvajalec$cont$vars], na.rm = TRUE)) - - -#Zaokroži vrednosti za izpis programov pri IZVAJALCU -round_df <- function(x, digits) { - # round all numeric variables - # x: data frame - # digits: number of digits to round - numeric_columns <- sapply(x, class) == 'numeric' - x[numeric_columns] <- round(x[numeric_columns], digits) - x -} -test2 <- round_df(test2, 1) -## //PODATKI ZA TABELE// ## - - - -############################ -# quantiles by programme # -########################### -kvantili.izvajalci.programi <- NULL -for (program in unique(povprecja.izvajalci.programi$program.studentov)) { - kvantili.izvajalci.program <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$program.studentov == program & - povprecja.izvajalci.programi$N_anket > 0, - c("izvajalec.sifra","predmet.sifra","program.studentov","program.studentov.ime", - "N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.program[[var]] <- kvantRang(kvantili.izvajalci.program[[var]]) - } - - for (var in c("N_anket")) { - kvantili.izvajalci.program[[var]] <- kvantRang1(kvantili.izvajalci.program[[var]]) - } - - kvantili.izvajalci.programi <- rbind(kvantili.izvajalci.programi, kvantili.izvajalci.program) -} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/06_Anketa_PO.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/06_Anketa_PO.R deleted file mode 100644 index 68677ec7b..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/06_Anketa_PO.R +++ /dev/null @@ -1,715 +0,0 @@ -# COURSE ANKETA PO -------------------------------------------- -# Next we also need all variables for the course that -# was evaluated in ANKETA PRED izpitom -# - -# Select variables needed for ANEKTA PRED IZPITOm -# This variables are students evaluation for the course -# if student participated in she survey, answers to -# open ended questions etc. -var.po <- - names(data_po_izpitu)[grepl("sifpredm|PONAGa|POKOMP|PONAL|POKT$|POPRAK" , names(data_po_izpitu))] -var.po <- data.frame(var.po, stringsAsFactors = FALSE) -# And rownames will be variables that are evaluated in the course -rownames(var.po) <- - c( - "predmet.sifra", - "predmet.izpolnjeval.po", - "predmet.ocena.kompetence", - "predmet.komentar.kompetence.pojasnilo", - "predmet.ocena.vsebine", - "predmet.ocena.naloge", - "predmet.ocena.kriteriji", - "predmet.ocena.krediti", - "predmet.ocena.ponudba", - "predmet.ocena.pomoč", - "predmet.ocena.navodila", - "predmet.ocena.korist", - "predmet.ocena.učinkovitost", - "predmet.ocena.strokovnost", - "predmet.ocena.podpora", - "predmet.ocena.primernost", - "predmet.ocena.dolzina", - "predmet.komentar.praksa" - ) - -# Items -vars.cours.po<- - as.vector(rownames(var.po)[!rownames(var.po) %in% c( - "predmet.sifra", - "predmet.izpolnjeval.po", - "predmet.komentar.dobro", - "predmet.komentar.slabo", - "predmet.komentar.kompetence.pojasnilo", - "predmet.komentar.praksa" - )]) - - - -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { # FKKT nima podatka o letnikih in lurkerjih -# ANKETA PRED IZPITOM -data.predmeti.po <- data_po_izpitu[c(var.po[, 1], "idprog","letnik","program", "lurker")] -names(data.predmeti.po) <- c(rownames(var.po),"ID_vrsta_studija","Letnik","Naziv","lurker") -} else { - data.predmeti.po <- data_po_izpitu[c(var.po[, 1], "idprog","program")] - names(data.predmeti.po) <- c(rownames(var.po),"ID_vrsta_studija","Naziv") -} -# MANJKAJOČE VREDNOSTI---------------------- -# When caluclating lecturers averages -# we want to exclude all missing values -# But whwn we will do frequency tables we want to -# keep values -# "-99" "Nimam dovolj informacij" -# "-96" "Ne želim odgovoriti" - - -# Missing values for frequency tables -data.po.miss <- data.predmeti.po -data.po.miss[data.po.miss == "-99"] <- "Nimam dovolj informacij" -# V anketi po se Pravilno beležijo zavrniteve študenta v anketi PRED pa je to navedeno kot -96 -data.po.miss[data.po.miss == "-98"] <- "Ne želim odgovoriti" -# setting missing values and keeping some for frequency tables -# all values with some miss for tables -someMiss.po <- sort(unique(as.vector(as.matrix(data.po.miss[, vars.cours.po])))) -# Select only valid frequencis and not missing cases -someMiss.po <- someMiss.po[someMiss.po > 0] - -# Missing values for averages and charts -data.predmeti.po[,! colnames(data.predmeti.po) %in% (c("predmet.izpolnjeval.po"))][data.predmeti.po[,! colnames(data.predmeti.po) %in% (c("predmet.izpolnjeval.po"))] < 0] <- NA - -# Convert to numeric columns -data.predmeti.po[c(vars.cours.po)] <- as.data.frame(lapply(data.predmeti.po[c(vars.cours.po)] , as.numeric)) - - - -# data.predmeti.po$predmet.sifra <- as.numeric(data.predmeti.po$predmet.sifra) -data.predmeti.po <- data.predmeti.po[order(data.predmeti.po$predmet.sifra),] -# ali je anketa veljavna za predmet; ali je student ni izpolnjeval (je pa začel anketo) -# '-1' neodgovorjeno vprašanje -data.predmeti.po$veljavna <- data.predmeti.po$predmet.izpolnjeval.po == -1 -# Ali je študent zavrnil izpolnjevanje ankete -data.predmeti.po$zavrnjena <- (!data.predmeti.po$veljavna & !is.na(data.predmeti.po$predmet.izpolnjeval.po)) - - -# adding student data (year and programme) -data.predmeti.po <- - merge( - data.predmeti.po, - programi.imena[, c("ID", "Naziv")], - by.x = "ID_vrsta_studija", - by.y = "ID", - all.x = TRUE, - sort = FALSE - ) - -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { # FKKT nima podatka o letnikih in lurkerjih -names(data.predmeti.po)[match(c("ID_vrsta_studija", "Letnik", "Naziv.y"), - names(data.predmeti.po))] <- - c("student.program.sifra", - "student.letnik", - "student.program.ime") -} else { - names(data.predmeti.po)[match(c("ID_vrsta_studija", "Naziv.y"), - names(data.predmeti.po))] <- - c("student.program.sifra", - "student.program.ime") -} - - - -# povprečja -poMean <- - aggregate(data.predmeti.po[vars.cours.po], - by = data.predmeti.po["predmet.sifra"], - FUN = mean, - na.rm = TRUE) - -colnames(poMean)[2:ncol(poMean)] <- paste0(vars.cours.po, "_mean") - -# Mediane -poMedian <- - aggregate(data.predmeti.po[vars.cours.po], - by = data.predmeti.po["predmet.sifra"], - FUN = median, - na.rm = TRUE) -colnames(poMedian)[2:ncol(poMedian)] <- paste0(vars.cours.po,"_median") - -# sd -poSd <- - aggregate(data.predmeti.po[vars.cours.po], - by = data.predmeti.po["predmet.sifra"], - FUN = sd, - na.rm = TRUE) -colnames(poSd)[2:ncol(poSd)] <- paste0(vars.cours.po,"_sd") - -# min -poMin <- - aggregate(data.predmeti.po[vars.cours.po], - by = data.predmeti.po["predmet.sifra"], - FUN = min, - na.rm = TRUE) -colnames(poMin)[2:ncol(poMin)] <- paste0(vars.cours.po,"_min") -poMin[poMin == Inf] <- NA - -# max -poMax <- - aggregate(data.predmeti.po[vars.cours.po], - by = data.predmeti.po["predmet.sifra"], - FUN = max, - na.rm = TRUE) -colnames(poMax)[2:ncol(poMax)] <- paste0(vars.cours.po,"_max") -poMax[poMax==-Inf] <- NA - -# N posamezne spremenljivke -poN <- - aggregate( - data.predmeti.po[vars.cours.po], - by = data.predmeti.po["predmet.sifra"], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(poN)[2:ncol(poN)] <- paste0(vars.cours.po,"_N") - -# N answering after exam -poNanket <- - aggregate(data.predmeti.po$veljavna, by = data.predmeti.po["predmet.sifra"], FUN = sum) -colnames(poNanket)[2] <- "N_anket" - - -# N didn't want to answer after exam -poNzavrnjenih <- - aggregate(data.predmeti.po$zavrnjena, by = data.predmeti.po["predmet.sifra"], FUN = sum) -colnames(poNzavrnjenih)[2] <- "N_zavrnjenih" - - -# N Lurkerjev PRED izpitom -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -data.predmeti.po$lurker[data.predmeti.po$lurker == 0] <- NA -poNLurkerji <- - aggregate( - as.numeric(data.predmeti.po$lurker), - by = data.predmeti.po["predmet.sifra"], - FUN = function(x) - sum(!is.na(x)) - ) -colnames(poNLurkerji)[2] <- "N_lurkerjev_po" -} - -# razporejanje ocen za kreditne točke (n & %) # Ustreznost KT -krediti_razporejanje_n <- table(data.predmeti.po$predmet.sifra, data.predmeti.po$predmet.ocena.krediti) -krediti_razporejanje_pct <- prop.table(krediti_razporejanje_n, 1) * 100 - -if (!is.null(dimnames(krediti_razporejanje_n)[[2]])) { - colnames(krediti_razporejanje_n) <- paste0("krediti_razporejanje_n_", colnames(krediti_razporejanje_n)) - - colnames(krediti_razporejanje_pct) <- paste0("krediti_razporejanje_pct_", colnames(krediti_razporejanje_pct)) - - krediti_razporejanje_n <- cbind( - as.data.frame.matrix(krediti_razporejanje_n), - predmet.sifra = rownames(krediti_razporejanje_n) - ) - - krediti_razporejanje_pct <- - cbind( - as.data.frame.matrix(krediti_razporejanje_pct), - predmet.sifra = rownames(krediti_razporejanje_pct) - ) -} else { - krediti_razporejanje_n <- NULL - krediti_razporejanje_pct <- NULL -} - -# razporejanje ocen za kompetence1 (n & %) -kompetence1_razporejanje_n <- - table(data.predmeti.po$predmet.sifra, - data.predmeti.po$predmet.ocena.kompetence) -kompetence1_razporejanje_pct <- prop.table(kompetence1_razporejanje_n, 1) * 100 - -if (!is.null(dimnames(kompetence1_razporejanje_n)[[2]])) { - colnames(kompetence1_razporejanje_n) <- - paste0("kompetence1_razporejanje_n_", - colnames(kompetence1_razporejanje_n)) - colnames(kompetence1_razporejanje_pct) <- - paste0("kompetence1_razporejanje_pct_", - colnames(kompetence1_razporejanje_pct)) - kompetence1_razporejanje_n <- - cbind( - as.data.frame.matrix(kompetence1_razporejanje_n), - predmet.sifra = rownames(kompetence1_razporejanje_n) - ) - kompetence1_razporejanje_pct <- - cbind( - as.data.frame.matrix(kompetence1_razporejanje_pct), - predmet.sifra = rownames(kompetence1_razporejanje_pct) - ) -} else { - kompetence1_razporejanje_n <- NULL - kompetence1_razporejanje_pct <- NULL -} - - -# Prvi kvartil Q1 -poQ1 <- - aggregate( - data.predmeti.po[vars.cours.po], - by = data.predmeti.po[c("predmet.sifra")], - FUN = quantile, - probs = c(0.25), - na.rm = T - ) -colnames(poQ1)[2:ncol(poQ1)] <- paste0(vars.cours.po,"_Q1") - -# Tretji kvartil -poQ3 <- - aggregate( - data.predmeti.po[vars.cours.po], - by = data.predmeti.po[c("predmet.sifra")], - FUN = quantile, - probs = c(0.75), - na.rm = T - ) -colnames(poQ3)[2:ncol(poQ3)] <- paste0(vars.cours.po,"_Q3") - -# Prvi decil -poD1 <- - aggregate( - data.predmeti.po[vars.cours.po], - by = data.predmeti.po[c("predmet.sifra")], - FUN = quantile, - probs = c(0.1), - type = 5, - na.rm = T - ) -colnames(poD1)[2:ncol(poD1)] <- paste0(vars.cours.po,"_D1") - -# Deveti decil -poD9 <- - aggregate( - data.predmeti.po[vars.cours.po], - by = data.predmeti.po[c("predmet.sifra")], - FUN = quantile, - probs = c(0.9), - type = 5, - na.rm = T - ) -colnames(poD9)[2:ncol(poD9)] <- paste0(vars.cours.po,"_D9") - - - - - -# Združimo izračunane statistike za predmete -# Merge data for lecturer -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -povprecja.predmeti.po <- - Reduce( - function(x, y) - merge( - x, - y, - c("predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - poMean, - poSd, - poMin, - poMax, - poN, - poQ1, - poQ3, - poMedian, - poNLurkerji, - poD1, - poD9, - poNanket, - poNzavrnjenih - ) - ) -} else { - povprecja.predmeti.po <- - Reduce( - function(x, y) - merge( - x, - y, - c("predmet.sifra"), - all = TRUE, - sort = FALSE - ) , - list( - poMean, - poSd, - poMin, - poMax, - poN, - poQ1, - poQ3, - poMedian, - poD1, - poD9, - poNanket, - poNzavrnjenih - ) - ) -} - -# Če spremenljivka krediti_razporejanje_n ni NULL, jo združimo v popvrecja.predmeti sicer ne. -if (!is.null(krediti_razporejanje_n)) { - povprecja.predmeti.po <- merge(povprecja.predmeti.po, krediti_razporejanje_n, by = "predmet.sifra", all = TRUE, sort = FALSE) - povprecja.predmeti.po <- merge(povprecja.predmeti.po, krediti_razporejanje_pct, by = "predmet.sifra", all = TRUE, sort = FALSE) -} -if (!is.null(kompetence1_razporejanje_n)) { - povprecja.predmeti.po <- merge(povprecja.predmeti.po, kompetence1_razporejanje_n, by = "predmet.sifra", all = TRUE, sort = FALSE) - povprecja.predmeti.po <- merge(povprecja.predmeti.po, kompetence1_razporejanje_pct, by = "predmet.sifra", all = TRUE, sort = FALSE) -} - -# združit s šifrantom -povprecja.predmeti.po <- merge(povprecja.predmeti.po, unique(sifrant[!(colnames(sifrant) %in% c("IDPEDAGOGA", "NAZIV.PEDAGOGA", "ST_KT", "ST_UR", "NOSILEC"))]), - by.x = "predmet.sifra", by.y = "IDP", all.x = TRUE, sort = FALSE) - - - - - -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# -# Write csv data for AGREGAT: kjerkoli bomo delali trende, bomo prikazali tudi povprečja -# za predmete, ki imajo manj kot 4 enote. In sicer trentuno v primeru, da ima izvajalec -# pri predmetu premalo dogovorov povprečij ne prikažemo oz ne računamo. -# Pri trendih pa bo postopek naslednji: -# V kolikor vsota odgovorov v dveh zaporednih letnih preseže 3 odgovore potem to prikažemo -# v novem stolpcu. In te ocene potrebujemo za trende. -# write.csv2(povprecja.predmeti.po, -# paste0("povprecja.predmeti.po.agregat_", fakulteta, ".csv")) -#----------------------------- AGREGAT ZA TRENDE: NOVI STOLPCI ----------------------------------# - - -# zakrivanje vrednosti kjer ni dovolj enot -premalo <- povprecja.predmeti.po[paste0(vars.cours.po,"_N")] < minEnot -povprecja.predmeti.po[paste0(vars.cours.po,"_mean")][premalo] <- NA -povprecja.predmeti.po[paste0(vars.cours.po,"_sd")][premalo] <- NA -povprecja.predmeti.po[paste0(vars.cours.po,"_min")][premalo] <- NA -povprecja.predmeti.po[paste0(vars.cours.po,"_max")][premalo] <- NA - - -# average of components - all, before exam -povprecja.predmeti.po$predmet.ocena.SKUPAJ <- rowMeans(povprecja.predmeti.po[paste0(vars.cours.po[2:4],"_mean")], na.rm = T) -povprecja.predmeti.po$predmet.ocena.SKUPAJ.praksa <- rowMeans(povprecja.predmeti.po[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - -# Število študentov pri posameznem predmetu: Spremenimo iz character v numeric -povprecja.predmeti.po$ST_STUD <- as.numeric(povprecja.predmeti.po$ST_STUD) - -# Kjer je negativno število pomeni, da gre za več vpisanih študentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.predmeti.po$ST_STUD <- ifelse(povprecja.predmeti.po$ST_STUD < as.numeric(povprecja.predmeti.po$N_anket) + as.numeric(povprecja.predmeti.po$N_zavrnjenih), - as.numeric(povprecja.predmeti.po$N_anket) + as.numeric(povprecja.predmeti.po$N_zavrnjenih), povprecja.predmeti.po$ST_STUD) - -# % odgovora -povprecja.predmeti.po$sodelujocih.pct <- povprecja.predmeti.po$N_anket / povprecja.predmeti.po$ST_STUD * 100 -# % zavrnjenih -povprecja.predmeti.po$zavrnjenih.pct <- povprecja.predmeti.po$N_zavrnjenih / povprecja.predmeti.po$ST_STUD * 100 -# N in % neodzivnih (ni pristopilo k anketi) -povprecja.predmeti.po$N_neodzivnih <- povprecja.predmeti.po$ST_STUD - povprecja.predmeti.po$N_anket - povprecja.predmeti.po$N_zavrnjenih -povprecja.predmeti.po$neodzivnih.pct <- povprecja.predmeti.po$N_neodzivnih / povprecja.predmeti.po$ST_STUD * 100 -## //average of components - all, before, after exam// ## - -# preurejeno ime predmeta -povprecja.predmeti.po$ime.predmeta <- povprecja.predmeti.po$PREDMET - -# IZREDNi ŠTUDIJ -izredni <- povprecja.predmeti.po$NACIN=="2" # če je izredni predmet mora biti to v oklepaju -izredni <- izredni[!is.na(izredni) ] -povprecja.predmeti.po$ime.predmeta[izredni] <- paste(povprecja.predmeti.po$ime.predmeta[izredni], "(izredna izvedba)") - -######################## -## ŠTUDIJSKI PROGRAMI ## -######################## -# število ocen po programih (za poročila in povprečja po programih) -programi.po <- unique(data.predmeti.po[c("student.program.sifra", "student.program.ime")]) -programi.po <- subset(programi.po, !is.na(student.program.sifra)) -programi.po <- subset(programi.po, student.program.ime != "NA") -programi.po <- programi.po[order(programi.po$student.program.ime), ] - - -## predmet: Študijski program ## -povprecja.predmeti.po[paste0("program_studenta_", programi.po$student.program.sifra)] <- 0 -data.prog.temp.po <- subset(data.predmeti.po, veljavna) -programi.studentov.po <- as.data.frame.matrix(table(data.prog.temp.po$predmet.sifra, data.prog.temp.po$student.program.sifra)) -names(programi.studentov.po) <- paste0("program_studenta_", names(programi.studentov.po)) -povprecja.predmeti.po[match(rownames(programi.studentov.po), povprecja.predmeti.po$predmet.sifra), names(programi.studentov.po)] <- programi.studentov.po - -# sort by name -povprecja.predmeti.po <- povprecja.predmeti.po[order(povprecja.predmeti.po$PREDMET),] - - -# are there any courses with too many answers in the database according to sifrant.xlsx -premalo_vpisanih <- povprecja.predmeti.po$N_neodzivnih < 0 -premalo_vpisanih <- !is.na(premalo_vpisanih) -if (any(premalo_vpisanih)) { - warning( - c( - "Some courses have more students in the database than number of students that are attending the course according to sifrant.xlsx", - paste( - "\n", - povprecja.predmeti.po$predmet.sifra[premalo_vpisanih], - povprecja.predmeti.po$PREDMET[premalo_vpisanih], - paste0( - "(", - abs(povprecja.predmeti.po$N_neodzivnih[premalo_vpisanih]), - " more students)" - ) - ) - ) - ) -} - - -# da izračunamo povprečja vseh predmetov določenega izvajalca rabimo ocene predmetov po izvajalcih (podvojene vrstice z različnimi šiframi izvajalcev) -povprecja.predmeti.vsi.izvajalci.po <- - merge( - povprecja.izvajalci[, c("izvajalec.sifra", "predmet.sifra")], - povprecja.predmeti.po, - by = "predmet.sifra", - all.x = TRUE, - sort = FALSE - ) - -povprecja.predmetov.izvajalca.skupaj.po <- - aggregate( - povprecja.predmeti.vsi.izvajalci.po[, c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.cours.po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.praksa")], - by = povprecja.predmeti.vsi.izvajalci.po[, "izvajalec.sifra", drop = FALSE], - FUN = mean, - na.rm = TRUE - ) - -# še imena izvajalcev -povprecja.predmetov.izvajalca.skupaj.po <- merge(povprecja.predmetov.izvajalca.skupaj.po, - unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]), - by = "izvajalec.sifra", all.x = TRUE) - -# povprečja vseh izvajalecv pri vsakem predmetu -povprecja.predmet.izvajalci.skupaj.po <- aggregate(povprecja.izvajalci[, c("ST_STUD","N_anket","N_anketTotal","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")], - by = povprecja.izvajalci[,"predmet.sifra",drop = FALSE], - FUN = mean, na.rm = TRUE) -# še imena predmetov -povprecja.predmet.izvajalci.skupaj.po <- merge(povprecja.predmet.izvajalci.skupaj.po, povprecja.predmeti.po[,c("predmet.sifra","ime.predmeta")], - by = "predmet.sifra", all.x = TRUE) - - -povprecja.predmetov.izvajalca.skupaj.po <- povprecja.predmetov.izvajalca.skupaj.po[order(povprecja.predmetov.izvajalca.skupaj.po$NAZIV.PEDAGOGA),] -povprecja.predmet.izvajalci.skupaj.po <- povprecja.predmet.izvajalci.skupaj.po[order(povprecja.predmet.izvajalci.skupaj.po$ime.predmeta),] - - -################# -## Quantiles ## -################# - -# Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu -kvantili.predmeti.po <- povprecja.predmeti.po[c("predmet.sifra","ime.predmeta","ST_STUD","N_anket","sodelujocih.pct", - paste0(vars.cours.po,"_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.praksa")] - -# Kredite in kompetence barvam posebaj vars.cours.po[c(-1,-5)] -for (var in c(paste0(vars.cours.po[c(-5)],"_mean"),"predmet.ocena.SKUPAJ", "predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti.po[[var]] <- kvantRang(kvantili.predmeti.po[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.predmeti.po[[var]] <- kvantRang1(kvantili.predmeti.po[[var]]) - -} - -for (var in c(paste0(vars.cours.po[c(5)],"_mean"))) { - kvantili.predmeti.po[[var]] <- kvantRang2(kvantili.predmeti.po[[var]]) - -} -# //Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu// # - - -kvantili.predmetov.izvajalca.skupaj.po <- povprecja.predmetov.izvajalca.skupaj.po[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD", - "N_anket","sodelujocih.pct", - paste0(vars.cours.po,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.praksa", - "predmet.ocena.krediti_mean","predmet.ocena.kompetence_mean")] -for (var in c(paste0(vars.cours.po,"_mean"),"predmet.ocena.SKUPAJ")) { - kvantili.predmetov.izvajalca.skupaj.po[[var]] <- kvantRang(kvantili.predmetov.izvajalca.skupaj.po[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.predmetov.izvajalca.skupaj.po[[var]] <- kvantRang1(kvantili.predmetov.izvajalca.skupaj.po[[var]]) - -} - - -# Glej npr izpis izvajalca, Tabela 1.1 (vrstico Povprečje FDV), -# kjer se izpiše število predmetov v anketi PRED izpitom -kvantili.predmeti.st.po <- sum(kvantili.predmeti.po$predmet.ocena.SKUPAJ != ".") # Število vseh ocenjenih predmetov: anketa PO -kvantili.predmetov.izvajalca.skupaj.st.po <- sum(kvantili.predmetov.izvajalca.skupaj.po$predmet.ocena.SKUPAJ != ".") -kvantili.ustreznotsKT <- sum(kvantili.predmeti.po$predmet.ocena.krediti_mean != ".") # Število vseh ocen za ustreznost KT (anketa PO) - - - - -##################################### -# POVPREČJA PO ŠTUDIJSKIH PROGRAMIH -##################################### -# Skupne ocene predmetov po posameznih študijskih programih -progMeanPo <- aggregate(data.predmeti.po[vars.cours.po], - by = data.predmeti.po["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanPo$predmet.ocena.SKUPAJ <- rowMeans(progMeanPo[vars.cours.po], na.rm = TRUE) -progMeanPo$predmet.ocena.SKUPAJ.praksa <- rowMeans(progMeanPo[vars.predmet$cont$praksa], na.rm = TRUE) - - -## course averages by programme: ANKETA PO IZPITU ## -povprecja.predmeti.programi.PO <- NULL -povprecja.predmeti.programi.PO.brez.cenzure.PO <- NULL # Zapišemo vsa povprečja oz. vse ocene, tudi tista, ki imajo 4 odgovore ali manj -## course averages by programme ## -for (program in programi.po$student.program.sifra) { - # povprečja - data.program <- subset(data.predmeti.po, student.program.sifra == program) - predMean <- aggregate(data.program[vars.cours.po], - by = data.program["predmet.sifra"], FUN = mean, na.rm = TRUE) - - colnames(predMean)[2:ncol(predMean)] <- paste0(vars.cours.po,"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.program[vars.cours.po], - by = data.program["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - - colnames(predN)[2:ncol(predN)] <- paste0(vars.cours.po,"_N") - # N answering before and after exam - predNanket <- aggregate(data.program$veljavna, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - - predmeti.program <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.programi.PO.brez.cenzure.PO <- - rbind( - povprecja.predmeti.programi.PO.brez.cenzure.PO, - cbind( - predmeti.program, - program.studentov = program, - program.studentov.ime = programi.po[programi.po$student.program.sifra == program, - "student.program.ime"] - ) - ) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.program[paste0(vars.cours.po,"_N")] < minEnot - predmeti.program[paste0(vars.cours.po,"_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.program$predmet.ocena.SKUPAJ <- rowMeans(predmeti.program[paste0(vars.cours.po[c(2, 3, 4)],"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.program[paste0(vars.predmet$cont$praksa,"_mean")],na.rm=T) - - povprecja.predmeti.programi.PO <- rbind(povprecja.predmeti.programi.PO, cbind(predmeti.program, program.studentov = program, - program.studentov.ime = programi.po[programi.po$student.program.sifra==program, - "student.program.ime"])) -} -povprecja.predmeti.programi.PO <- merge(povprecja.predmeti.programi.PO, povprecja.predmeti.po[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.programi.PO.brez.cenzure.PO <- merge(povprecja.predmeti.programi.PO.brez.cenzure.PO, - povprecja.predmeti.po[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA","PRAKSA")], - by = "predmet.sifra", all.x = T) -## //course averages by programme// ## - - - - - - - -## course averages by student's year ANKETA PO IZPITU ## -if(ID != 3000030 && ID != 3000064 && ID != 3000004 && ID != 3000063) { -povprecja.predmeti.letniki.PO <- NULL -povprecja.predmeti.letniki.PO.brez.cenzure.PO <- NULL # Vsa povprečja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## course averages by students' year ## -for (letnik in unique(sort(data.predmeti.po$student.letnik))) { - # povprečja - data.letnik <- subset(data.predmeti.po, student.letnik == letnik) - predMean <- aggregate(data.letnik[vars.cours.po], - by = data.letnik["predmet.sifra"], - FUN=mean, na.rm=TRUE) - colnames(predMean)[2:ncol(predMean)] <- paste0(vars.cours.po,"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.letnik[vars.cours.po], - by=data.letnik["predmet.sifra"], FUN=function(x) sum(!is.na(x))) - colnames(predN)[2:ncol(predN)] <- paste0(vars.cours.po,"_N") - # N answering before and after exam - predNanket <- aggregate(data.letnik$veljavna, by = data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - - - predmeti.letnik <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.letniki.PO.brez.cenzure.PO <- rbind(povprecja.predmeti.letniki.PO.brez.cenzure.PO, cbind(predmeti.letnik, letnik.studentov = letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.letnik[paste0(vars.cours.po,"_N")] < minEnot - predmeti.letnik[paste0(vars.cours.po,"_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.letnik$predmet.ocena.SKUPAJ <- rowMeans(predmeti.letnik[paste0(vars.cours.po[c(2, 3, 4)],"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - - povprecja.predmeti.letniki.PO <- rbind(povprecja.predmeti.letniki.PO, cbind(predmeti.letnik, letnik.studentov=letnik)) -} -povprecja.predmeti.letniki.PO <- merge(povprecja.predmeti.letniki.PO, povprecja.predmeti.po[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.letniki.PO.brez.cenzure.PO <- merge(povprecja.predmeti.letniki.PO.brez.cenzure.PO, - povprecja.predmeti.po[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA","PRAKSA")], - by = "predmet.sifra", all.x = T) -## //course averages by students' year// ## -} - - - -kvantili.predmeti.programi.PO <- NULL -for (program in unique(povprecja.predmeti.programi.PO$program.studentov)) { - kvantili.predmeti.program <- povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$program.studentov == program & - (povprecja.predmeti.programi.PO$N_anket > 0), - c("predmet.sifra","N_anket","program.studentov","program.studentov.ime", - paste0(vars.cours.po,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.praksa")] - for (var in c(paste0(vars.cours.po[c(-5)],"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti.program[[var]] <- kvantRang(kvantili.predmeti.program[[var]]) - } - for (var in c("N_anket")) { - kvantili.predmeti.program[[var]] <- kvantRang1(kvantili.predmeti.program[[var]]) - } - - for (var in c(paste0(vars.cours.po[c(5)],"_mean"))) { - kvantili.predmeti.program[[var]] <- kvantRang2(kvantili.predmeti.program[[var]]) - } - - - kvantili.predmeti.programi.PO <- rbind(kvantili.predmeti.programi.PO, kvantili.predmeti.program) -} - - -# Ker se pri nekaterih članicah (AGRFT 19/19) zgodi, da imajo ocene za program le v anketi PO izpitu -# smo v spodnjo kodo dodali "colnames(povprecja.izvajalci) %in%" -vsota.ocen.programov.po <- - aggregate(povprecja.izvajalci[colnames(povprecja.izvajalci) %in% paste0("program_studenta_", programi.po$student.program.sifra)], - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], - FUN = sum, - na.rm = TRUE) - - - - -# -povprecja.izvajalci.skupaj <- merge(povprecja.izvajalci.skupaj, vsota.ocen.programov.po, by = "izvajalec.sifra", all.x = TRUE, sort = FALSE) diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec - Copy.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec - Copy.R deleted file mode 100644 index 8621dd8a2..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec - Copy.R +++ /dev/null @@ -1,4433 +0,0 @@ -########## -#' @NOTE # -########## -# Kode for generating report for izvajalec e.g, izvajalec_321_FDV.pdf -# The repsent code consist of IV parts: -#' # @PART I Izvajalec -#' # @PART II predmet -#' # @PART III studijska praksa -#' # @PART IV compiling tex files -#' into PDF -# The three parts generate pdf report for lecturer -#--------------------------------------------------------------------# - - - -#---------------------- 1KA strenik -------------------------# -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo -# za posamezno fakulteto na streniku -# Tega trenutno ne rabimo -#params <- commandArgs(trailingOnly = TRUE) -#ID <- params[1] -#---------------------- //1KA strenik// ---------------------# - -############################################################## -# Run first # -# source("Evalvacija/R/00_dataanalysis.R", encoding = "UTF-8") -############################################################## - - -# ---------------- ADDITIONAL PARAMETERS BEFORE CRAETING REPORT FOR LECTURER -----------------# -# V primeru, da v poroilu za izvajalca nosilec predmeta eli videti tudi ocene soizvajalca -nosilci_soizvajalcev <- TRUE -# ali naj omeji poroila samo na doloene izvajalce -omejeniIzvajalci <- TRUE -# katere glede na vrstico zgoraj -omejeniIzvajalciSifre <- c("3000001_PEFUL_514") -#-------------- //ADDITIONAL PARAMETERS BEFORE CRAETING REPORT FOR LECTURER// ---------------# - - -###################################### -#' DATA NEEDED FOR PDF REPORT: @PART I -###################################### -#--------------------------------------------- IZVAJALEC ------------------------------------------------# -# omejeniIzvajalci v primeru da se generira samo poroila za doloene izvajalce; -# naredi se tudi za vse soizvajalce pri vseh njihovih predemtih + -# (za primere kjer je nosilec v omejeniIzvajalciSifre) -if (omejeniIzvajalci) { - # ifre predmetov, ki pripadajo izvajalcu - omejeniPredmetiSifre <- - data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% omejeniIzvajalciSifre] - # Izvajalci, ki so sodeloval pri predmetu - sifreIzvajalec <- - as.character(unique(data.izvajalci$izvajalec.sifra[data.izvajalci$predmet.sifra %in% omejeniPredmetiSifre])) -} else { - sifreIzvajalec <- - as.character(unique(data.izvajalci$izvajalec.sifra)) -} - -# For Loop purposes----------------------------------- -# Naredili bomo list, ki bo sestavni del PDF dokumenta -# Torej list, ki vsebuej vse podatke o izvajalcu -izvajalci <- NULL -# Povpreja za ocene komponent vseh programov, -# v katerih je izvajalec sodeloval -izvajalci_program <- NULL -# Deli v katere bomo zapisali posamezna latex -# poglavja oz. izraune za izvajalce -part <- NULL -#----------------------------------------------------# - -# START COMPILING DATA FOR IZVAJALEC-------------------------------------------------- -# Zanka, ki generira poroila za vse unikatne ifre izvajalcev, ki so v sifreIzvajalec -for (izvajalec in sifreIzvajalec) { - # indeks izvajalcev z imeni in predmeti po ifrah izvajalcev - # Ime izvajalca - ime.izvajalca <- - sifrant[sifrant$IDPEDAGOGA == izvajalec, 'NAZIV.PEDAGOGA'][1] - # Preverimo, da ime izvajalca obstaja in ni v ifrantu ni napake - if (is.na(ime.izvajalca)) { - warning(paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!'), - immediate. = TRUE) - ime.izvajalca <- - paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!') - } - - #--------- INFORAMTION ABOUT LECTURER AND HIS COURSES AND PROGRAMMES ---------# - # izvajalec in Povpreje predmeta / predmetov - izvajalci[[izvajalec]] <- list( - ime = ime.izvajalca, - predmeti = as.character(unique( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$predmet.sifra - )), - ime.datoteke = paste('izvajalec_', izvajalec, '.pdf', sep = - '') - ) - - # Povpreje izvajalca: tudijski program (Uporabimo pri poroilu izvajalca in sicer poglavje: Sumarne tudijske ocene programov) - izvajalci_program[[izvajalec]] <- list( - ime = ime.izvajalca, - predmeti = as.character(unique( - subset(povprecja.izvajalci.programi, izvajalec.sifra == izvajalec)$predmet.sifra - )), - ime.datoteke = paste('izvajalec_', izvajalec, '.pdf', sep = - '') - ) - #------- //INFORAMTION ABOUT LECTURER AND HIS COURSES AND PROGRAMMES// -------# - - - # Analize za vse predmete, ki jih pouuje izvajalec---------------------------- - # Zanka za vse ifre predmetov izvajalca izvajalci[[izvajalec]]$predmeti - for (predmet in izvajalci[[izvajalec]]$predmeti){ - - #-------------- LECTURER DATA -------------------# - # Povpreje predmetov izvajalca - povp.izv.predm <- - subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec & predmet.sifra == predmet) - # Podatki o izvajalcu (komentarji na njegove predmete, itd.) - izv.koment <- - subset(data.izvajalci, - izvajalec.sifra == izvajalec & predmet.sifra == predmet & veljavna) - #------------ //LECTURER DATA// -----------------# - - # Generiraj poroila za vse komponente, kjer so vsaj 4 odgovori - if (povp.izv.predm$N_anket >= minEnot) { # cele dele dela smo kjer je dovolj enot (ve ali enako 4) - - - #--------------------------------- PDF CHAPTER NAMED "OCENA IZVAJALCA" ---------------------------------# - # This chapter consist fo two tables and one radar graph (see in "izvajalec_321.PDF) - # The order of tables and graph in this chapter is following: - # 1) TABLE 1 - # 2) RADAR CHART - # 3) TABLE 2 - - # FIRST TABLE (TABLE 1) ------------------------ - #==============================================# - # vars.izvajalec$cont$vars <- imena komponent za izvajalca, ki so jih ocenjevali tudenti - tabela.cont <- cbind.data.frame( - # tevilo odgovorov posamezne komponente - N = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_N")]), - # Povpreje komponent izvajalca (Kakovost, itd.) - mean = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_mean")]), - # Standardni odklon komponent - sd = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_sd")]), - # Min vrednosti komponent na likertovi letvici od 1-5 - min = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_min")]), - # Min vrednosti komponent na likertovi letvici od 1-5 - max = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_max")]) - ) - # For radar chart - radar.m <- tabela.cont - # e je NA potem doda piko "." <- Prikaz v latex tabeli - tabela.cont[is.na(tabela.cont)] <- "." - - # e je tevilo enot manje kot 4 dodaj opombo, ki se bo izpisala pod latex tabelo - if (any(tabela.cont == ".")) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega - tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' - } else {opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}"} - - # Povpreja ocen komponent izvajalcev celotne fakultete - F.mean <- data.frame(F.avg.izv[paste0(vars.izvajalec$cont$vars,"_mean")]) - colnames(F.mean) <- 'Fmean' - tabela.cont <- cbind(tabela.cont, F.mean) - - # Zdruimo vrstice: tabela.cont z vrsticami: SKUPNE OCENE IZVAJALCA in vrstice s Povpreji Fakultete (FDVcont) - tabela.cont <- - rbind(tabela.cont, - c('', - povp.izv.predm$izvajalec.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont$Fmean, na.rm = TRUE) - )) - - # Premaknemo SD, MIN IN MAX V TABELO porazdelitev.tex - op.sta.izva <- tabela.cont[c(3, 4, 5)] - # Barvanje vrednosti glede na mejne vrednosti. - tabela.contR <- formatval(tabela.cont) # formatval is custom defined function - - # Imena vrstic tabele - rownames(tabela.contR) <- c(as.character(vars.izvajalec$cont$ime.dolgo[vars.izvajalec$cont$vars]), '\\hline\n\\textbf{Skupaj}') - - # PORAZDELITEV ODGOVOROV IZVAJALEC # - #################################### - ## Tabela frekvennih porazdelitev ocen komponent za izvajalce pri predmetu ## - izva.pred.freq <- subset(data.izv.miss, izvajalec.sifra == izvajalec & predmet.sifra == predmet) - - # Frequency distribution - dist <- t(sapply(izva.pred.freq[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izv.someMiss)))) - - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.1 <- round((rowSums(dist[,1:2], na.rm = TRUE)) / (rowSums(dist, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.2 <- round((rowSums(dist[,4:5], na.rm = TRUE)) / (rowSums(dist, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.1 <- ifelse(tabela.contR$mean == ".", ".", dist.pct.1) - dist.pct.2 <- ifelse(tabela.contR$mean == ".", ".", dist.pct.2) - - # Barvanje vrednosti - dist.pct.1 <- ifelse(dist.pct.1 != "." & dist.pct.1 >= 20, paste('{\\color{Orange}\\textbf{', dist.pct.1, '}}'),dist.pct.1) - dist.pct.2 <- ifelse(dist.pct.2 != "." & dist.pct.2 <= 50, paste('{\\color{Orange}\\textbf{', dist.pct.2, '}}'),dist.pct.2) - ## /Porazdelitev delei / ## - - # Zdruimo stolpce - tabela.contR <- qpcR:::cbind.na(tabela.contR,dist.pct.1,dist.pct.2) - tabela.contR <- tabela.contR[, c(1, 2, 7, 8, 6)] - - - # PORAZDELITEV ODGOVOROV FAKULTETA # - #################################### - # Enako naredimo e za FAKULTETO - izva.pred.freq.f <- subset(data.izvajalci, (veljavna)) - izv.dist.f <- t(sapply(izva.pred.freq.f[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izv.someMiss)))) - - dist.pct.FDV.1 <- round((rowSums(izv.dist.f[,1:2], na.rm = TRUE))/ (rowSums(izv.dist.f, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.FDV.2 <- round((rowSums(izv.dist.f[,4:5], na.rm = TRUE)) / (rowSums(izv.dist.f, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - dist.pct.FDV.1 <- ifelse(dist.pct.FDV.1 >= 20, paste('{\\color{Orange}\\textbf{', dist.pct.FDV.1, '}}'),dist.pct.FDV.1) - dist.pct.FDV.2 <- ifelse(dist.pct.FDV.2 <= 50, paste('{\\color{Orange}\\textbf{', dist.pct.FDV.2, '}}'),dist.pct.FDV.2) - # /Porazdelitev delei/ # - - # Zdruimo - tabela.contR <- - qpcR:::cbind.na(tabela.contR, dist.pct.FDV.1, dist.pct.FDV.2) - - colnames(tabela.contR) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - - # Morebitne "." v zadnjem stolpcu nadomestimo z NA, da se ne izpie v Latex tabeli - tabela.contR[nrow(tabela.contR), c(1, 3, 4)] <- NA - - # Latex Table Compile tex file - tabela.contR.tex <- - capture.output( - Hmisc::latex( - toLatex(tabela.contR), - caption = "Povpreja in delei kategorij odgovorov za komponente pedagokega dela - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)", - rowlabel = '', - # Prva vrstica v tabeli (zgoraj levo ne bo poimenovana) - file = '', - where = 'H', - cgroup = c("Izvajalec", fakulteta), - # Imena stolpcev bodo razdeljena na dva dela ter poimenovana (Izvajalec, ime fakultete) in - n.cgroup = c(4, 3), - # grupirana. Prvi stolpec obsega 5 vrstic drugi stolpec obsega 1 vrstico - col.just = rep_len('c', ncol(tabela.contR)), - rowlabel.just = 'p{7cm}', - # irina vrstic - insert.bottom = opomba - ) - ) - #-------------- //FIRST TABLE (TABLE 1)// ------------------# - - - - # RADAR CHART #------------------------------ - #===========================================# - # Glej poroilo za izvajalca, in sicer Slika: Opisne statistike pedagokega dela za izvajalca pri predmetu (anketa PRED izpitom) - if (sum(!is.na(radar.m$mean)) < 4) { - radar.m$mean <- radar.m$mean[!is.na(radar.m$mean)] <- NA - } # e so bile 3 zaporedne vrednosti je nastala udna rta zato reemo, da naj bodo najmanj 4 - radar.cont <- - data.frame(rbind(5, 1, t(cbind( - F.mean, as.numeric(radar.m$mean) - ))), - row.names = 1:4, - check.names = FALSE) - #Imena stolpcev radar grafa:"Kakovost","Pripravljenost", "Razumljivost","Zanimivost","Kritinost","Korektnost" - colnames(radar.cont) <- - sub(" ", "\n", as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars])) - # CairoPDF initializes a new graphics device that uses the cairo graphics library for rendering - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/", izvajalec, '_', predmet, '_cont.pdf', sep=''), - family='sans', pointsize=9, width=6, height=4) - #Setting graph margins. xpd=TRUE -enable things to be drawn outside the plot region - par(mar = (c(0, 4, 1, 6) + 0.1), xpd = TRUE) - # Plot RADAR CHART fmsb::radarchart - fmsb::radarchart( - radar.cont, - pcol = c('dodgerblue3', 'firebrick3'), - cglcol = 'gray75', - plwd = 2, - plty = 1, - cglwd = 1, - cglty = 1, - seg = 4, - axistype = 1, - caxislabels = c(1:5), - axislabcol = 'gray25', - centerzero = TRUE - ) - legend( - 'topright', - inset = c(-0.15, 0), - legend = c("Izvajalec", paste(fakulteta, "Povpreje")), - col = c('firebrick3', 'dodgerblue3'), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - #-------------------- // RADAR CHART // --------------------# - - - # SECOND TABLE (TABLE 2) -------------------------- - #=================================================# - # Tabela Frekvenne porazdelitve ocen komponent - # pedagokega dela izvajalca (anketa PRED izpitom) - dist.freq <- dist - - # samo kjer je dovolj enot - dist.freq[rowSums(dist.freq) < minEnot, ] <- NA - dist.freq <- cbind(dist.freq, rowSums(dist.freq, na.rm = TRUE)) - - # Imena stolpcev - dist.freq <- - cbind(dist.freq, formatval(op.sta.izva[-nrow(op.sta.izva),])) - - # Colnames for Latex tables - colnames(dist.freq) <- - c( - "\\textbf{1}", - "\\textbf{2}", - "\\textbf{3}", - "\\textbf{4}", - "\\textbf{5}", - "\\textbf{Ne elim odg.}", - "\\textbf{Nimam informacij}", - "\\textbf{Skupaj}", - "\\textbf{Sd}", - "\\textbf{Min}", - "\\textbf{Max}" - ) - - # Also add rownames - rownames(dist.freq) <- as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars]) - - # Generiranje LATEX TABELE - porazdelitev.tex <- capture.output( - Hmisc::latex( - dist.freq, - caption = "Frekvenna porazdelitev ocen komponent pedagokega dela izvajalca - (anketa PRED izpitom)", - rowlabel = "\\textbf{Komponente}", - file = "", - where = "H", - col.just = rep_len("c", ncol(dist.freq)), - insert.bottom = "" - ) - ) - #-------------- //SECOND TABLE (TABLE 2)// ------------------# - - - # CREATE CHAPTER -------------------------------------- - part$izvajalec[[izvajalec]][[predmet]]$cont <- c( - tabela.contR.tex, - # Radar graf, ki smo ga prej shranili s pomojo CAIROPDF, sedaj naloimo - "\\begin{figure}[H]", - "\\caption{Opisne statistike pedagokega dela za \\textbf{izvajalca} - pri predmetu (anketa PRED izpitom)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-izvajalec-slike/", - izvajalec, - '_', - predmet, - '_cont.pdf}}' - ), - "\\end{figure}", - porazdelitev.tex - ) - #------------------------------- //PDF CHAPTER NAMED "OCENA IZVAJALCA"// -------------------------------# - - - - #---------------------- STUDENTS COMENTS FOR LECTURER ON OPEN ENDED QUESTIONS -------------------------# - ## TEKSTOVNE (KOMENTARJI tUDENTOV) ## - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpraanja" - data.text <- lapply(izv.koment[vars.izvajalec$text$vars], trim) - for (textvar in names(data.text)) { - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- - gsub(pattern = '\\\\', - replacement = '!backslash!', - x = data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo otevileni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - part$izvajalec[[izvajalec]][[predmet]]$text <- tex.text - #-------------------- //STUDENTS COMENTS FOR LECTURER ON OPEN ENDED QUESTIONS// -----------------------# - - - # ------------------- PDF CHAPTER NAMED "ANALIZA IZVAJALCA PO PROGRAMIH IN LETNIKIH" -------------------# - ## analiza izvajalca po smereh in letnikih tudentov ## - # Glej kodo tabelaBy.r kjer definiramo funkcijo tabelaBy - - # Get data from which program did the greades for the lecturer come from - izvBySmer.df = subset( - povprecja.izvajalci.programi.brez.cenzure, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & N_anket > 0 - )[c( - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - paste0(vars.izvajalec$cont$vars, "_N"), - "program.studentov.ime" - )] - - # Prepare data and create latex table (see custom function "pro.let.c") - izvajalecBySmer <- pro.let.c(izvBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje izvajalca pri predmetu}", # Second argument rownames for lecturers total average - F.avg.izv, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.izvajalci.st," - izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od IPP of lecturer - "Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} - glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)", # Fifth argument is Latex Table caption - "IPP", # Sixth argument is for the type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, #Seventh argument, If is TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( #Eight argument presents Colnames for Latex table which are rotated 90 degrees in Latex tables: latex.rotate in custom function for rotating purposes - "t. odgovorov", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ))) - - - # Povpreja glede na letnik tudentov - izvByLetnik <- - subset( - povprecja.izvajalci.letniki.brez.cenzure, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & N_anket > 0 - )[c( - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - paste0(vars.izvajalec$cont$vars, "_N"), - "letnik.studentov" - )] - # Prepare data and create latex table (see custom function "pro.let.c") - izvajalecByLetnik <- pro.let.c(izvByLetnik, - "\\hline \\textbf{Povpreje izvajalca pri predmetu}", - F.avg.izv, - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.izvajalci.st," - izvedb pri predmetih)}"), - "Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} - po letniku vpisanih tudentov (anketa PRED izpitom)", - "IPP", - letnik = TRUE, - colnam = latex.rotate(c( # Colnames for Latex table - "t. odgovorov", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ))) - - - # Kvantilni rangi - # Generiranje tabel, glej poroilo za izvajalca, tabelo: - # "Kvantilni rangi za Povprene ocene komponentizvajalca pri predmetu glede na tudijske programe tudentov** (anketa PRED izpitom)" - progs <- rownames(izvajalecBySmer$tabela[izvajalecBySmer$tabela$N_anket >= minEnot,]) - izvajalecBySmerProgrami <- - subset( - kvantili.izvajalci.programi, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & program.studentov.ime %in% progs - ) - - if (nrow(izvajalecBySmerProgrami) > 0) { - # For Latex table purposes we also need the number of lecturers on each student programm - proggIZ.tmp <- - povprecja.izvajalci.programi[povprecja.izvajalci.programi$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - proggIZ.tmp <- - aggregate(proggIZ.tmp$predmet.sifra, by = proggIZ.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - # Merge number of lecturers with quantile ranks - izvajalecBySmerProgrami <- - merge( - izvajalecBySmerProgrami, - proggIZ.tmp[c("x","program.studentov")], - by = c("program.studentov"), - all.x = TRUE - ) - - # Sort data based on number of IPP (izvajalci pri predmetih) - izvajalecBySmerProgrami <- - izvajalecBySmerProgrami[order(izvajalecBySmerProgrami$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(izvajalecBySmerProgrami) <- - make.unique(as.character(izvajalecBySmerProgrami$program.studentov.ime)) - # Tidy daata for Latex tables - izvajalecBySmerProgrami <- - izvajalecBySmerProgrami[c( - "x", - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - # Imena Stolpcev - colnames(izvajalecBySmerProgrami) <- latex.rotate(c("t. IPP***","t. odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}")) - # Compile Latex Table - izvajalecBySmerProgrami <- capture.output(Hmisc::latex(izvajalecBySmerProgrami, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetu} - glede na vse predmete v doloen tudijski - program vpisanih tudentov** (anketa PRED izpitom)"), - rowlabel="", - file="", - where="H", - rowlabel.just="p{10.2cm}", - insert.bottom=kvan.pojas3, - longtable = TRUE, - multicol=FALSE, - col.just=c("c","|c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c") - )) - } else { - izvajalecBySmerProgrami <- NULL - } - - - # - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik <- c(izvajalecBySmer$tex, izvajalecBySmerProgrami, izvajalecByLetnik$tex) - # /analiza izvajalca po smereh in letnikih tudentov/ # - - } else { # e ni dovolj enot - part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot <- - "- Zaradi prenizkega tevila odgovorov analiza izvajalca ni bila narejena. -" - } - #------------------- //PDF CHAPTER NAMED "ANALIZA IZVAJALCA PO PROGRAMIH IN LETNIKIH"// -------------------# - } - - - - #---------------------------- PDF CHAPTER NAMED: Povzetek: Ocene predmetov in izvajalca ----------------------------# - - # paste0(vars.izvajalec$cont$vars,"_mean") <- Kakovost, Pripravljenost, razumljivost, zanimivost, kritinost, korektnost - pov.izv <- - povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anketTotal", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - # Preverimo e pri izvajalcu obstajajo lurkerji - povzetek.izvajalca.lurkerji <- povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra==izvajalec, - c("N_lurkerjev_ivz")] - - # e povpreja Predmetov - # Komponente za anketo PRED izpitom (glej tabelo 1,1) - pov.pred <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")] - - # Preverimo, e so v v odgovore ankete PRED zajeti tudi lurkerji - povzetek.predmetov.pred.lurkerji <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_pred")] - - - - # Komponente za anketo PO izpitu (glej tabelo 1,2) - pov.po <- povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.krediti_mean")] - - - povzetek.predmetov.po.lurkerji <- povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_po")] - - - # PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA # - # Povprene ocene izvajalca pri predmetih - povprecja.izvajalci.skupaj.temp <- subset(povprecja.izvajalci.skupaj, izvajalec.sifra==izvajalec) - - meansI <- - povprecja.izvajalci.skupaj.temp[c( - "ST_STUD", - "N_anketTotal", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpred <- - subset(povprecja.predmetov.izvajalca.skupaj, - izvajalec.sifra == izvajalec)[c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpo <- - subset(povprecja.predmetov.izvajalca.skupaj.po, - izvajalec.sifra == izvajalec)[c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - ## //PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA// ## - - ##### averages of programmes from which lecturer got grades# from which programme most grades come from ##### - colnames(povprecja.izvajalci.skupaj.temp) <- gsub('.x','',names(povprecja.izvajalci.skupaj.temp)) - maxProgram <- sub("program_studenta_", "", - names(sort( - povprecja.izvajalci.skupaj.temp[paste0("program_studenta_", - programi$student.program.sifra)], decreasing = - TRUE - )[1])) - # Get the programme mean - maxIPP <- subset(povprecja.izvajalci.programi, program.studentov %in% maxProgram) - # Number of Lecturers with enough answers (4 or more) on the programme - maxIPP.n <- length(which(maxIPP$N_anket >=4)) - # Program Rowname - maxIPP.nm <- as.character(unique(maxIPP$program.studentov.ime)) - maxIPP <- maxIPP[, grepl("mean|Skupaj", colnames(maxIPP), ignore.case = TRUE)] - maxIPP <- colMeans(maxIPP, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxIPP <- as.data.frame.list(maxIPP) - # Add Rownames - rownames(maxIPP) <- maxIPP.nm - # Color and tidy values for Latex table - #maxIPP <- formatval(maxIPP) - - if (all(maxIPP != ".")) { - # Programme rownames from which most grades come from - maxProgramIme <- - paste0( - "\\hline \\textbf{Povpreje ", - programi$student.program.ime[programi$student.program.sifra == maxProgram], - " (", - maxIPP.n, - " izvajalcev pri predmetih)*}" - ) - # Also Add programme average - meansIprog <- - c("--", "--", "--", "--", "--", "--", "--", unname(maxIPP)) - } else { - maxProgramIme <- NULL - meansIprog <- NULL - } - - - - # PREDMET PRED IZPITOM - # averages of programmes from which lectur got grades# from which programme most grades come from - maxProgramPRED <- - sub("program_studenta_", "", names(sort(povp.izv.predm[paste0("program_studenta_", programi$student.program.sifra)], decreasing = - TRUE)[1])) - maxProg <- subset(povprecja.predmeti.programi, program.studentov %in% maxProgramPRED) - # Number of Lecturers with enough answers (4 or more) on the programme - maxProg.n <- length(which(maxProg$N_anket >=4)) - # Program Rowname - maxProg.nm <- as.character(unique(maxProg$program.studentov.ime)) - maxProg <- maxProg[, grepl("mean|Skupaj", colnames(maxProg), ignore.case = TRUE)] - maxProg <- colMeans(maxProg, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxProg <- as.data.frame.list(maxProg) - # Add Rownames - rownames(maxProg) <- maxProg.nm - # Color and tidy values for Latex table - #maxProg <- formatval(maxProg) - - if (all(maxProg != ".")) { - maxProgramImePRED <- - paste0( - "\\hline \\textbf{Povpreje ", - programi$student.program.ime[programi$student.program.sifra == maxProgramPRED], - " (", - maxProg.n, - " predmetov)*}" - ) - ime.programa <- paste0(programi$student.program.ime[programi$student.program.sifra == maxProgramPRED]) - meansIprogPRED <- - c("--", "--", "--", "--", "--", unname(maxProg)) - } else { - maxProgramImePRED <- NULL - meansIprogPRED <- NULL - } - - - # PREDMET PO IZPITU - maxProgramPO <- - sub("program_studenta_", "", names(sort(povp.izv.predm[paste0("program_studenta_", programi.po$student.program.sifra)], decreasing = - TRUE)[1])) - maxProgpo <- subset(povprecja.predmeti.programi.PO, program.studentov %in% maxProgramPRED) - # Number of Lecturers with enough answers (4 or more) on the programme - maxProgpo.n <- length(which(maxProgpo$N_anket >=4)) - # Program Rowname - maxProgpo.nm <- as.character(unique(maxProgpo$program.studentov.ime)) - maxProgpo <- maxProgpo[, grepl("mean|Skupaj", colnames(maxProgpo), ignore.case = TRUE)] - maxProgpo <- colMeans(maxProgpo, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxProgpo <- as.data.frame.list(maxProgpo) - # Add Rownames - rownames(maxProgpo) <- maxProgpo.nm - # Color and tidy values for Latex table - #maxProgpo <- formatval(maxProgpo) - - if (all(maxProgpo != ".")) { - maxProgramImePO <- - paste0( - "\\hline \\textbf{Povpreje ", - programi.po$student.program.ime[programi.po$student.program.sifra == maxProgramPO], - " (", - maxProgpo.n, - " predmetov)**}" - ) - meansIprogPO <- - c("--", "--", "--", "--", "--", unname(maxProgpo[c( - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )])) - } else { - maxProgramImePO <- NULL - meansIprogPO <- NULL - } - ## //averages of programmes from which lecturer got grades# from which programme most grades come from// ## - - - - # Dodajanje opomb, ki se prikaejo pod posamezno tabelo v poglavju POVZETEK - if (sum(is.na(pov.izv)) > 0) { - opombaI <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. \\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmeta). \\newline - *** tudent je v anketi oznail, da ga doloen izvajalec pri predmetu - ni poueval (npr. ko ve asistentov izvaja vaje pri istem predmetu - za razline skupine tudentov).}}" - - } else { - opombaI <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. - Ocene morebitnih ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.\\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmeta). \\newline - *** tudent je v anketi oznail, da ga doloen izvajalec ni poueval - (npr. ko ve asistentov izvaja vaje pri istem predmetu za razline skupine tudentov).}}" - } - - if (sum(is.na(pov.pred)) > 0) { - opombaPpred <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali predmete - izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. }}" - } else { - opombaPpred <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - } - if (sum(is.na(pov.po)) > 0) { - opombaPpo <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih - komponent (glej metodoloka pojasnila): Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval - podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}\\textbf{Oranno}} so oznaena opazna odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}} in nad {\\color{BrickRed}\\textbf{3.6}}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, so - v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - } else { - opombaPpo <- - "{\\footnotesize \\textit{* Vrednost pod 3.0 pomeni, da je predmet glede - na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno - tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}\\textbf{Oranno}} so oznaena opazna - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene ostalih programov, - v katere so vpisani tudenti, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - } - ## //OPOMBE// ## - - # Zdruimo izraunane vrednosti (v vrstice) za izvajalca in za predmete - povzetek.izvajalca <- rbind(pov.izv, # Povreja izvajalca pri predmetu - meansI, # Povpreje izvajalca pri obeh predmetih - meansIprog, # Povpreje programa iz katerega prihaja najve ocen - c(Fizv[1, 1:ncol(Fizv)], F.avg.ipp), # Povpreje vshe izvajalcev pri predemtih - c("--","--","--","--","--","--","--", F.avg.izv)) # Povpreje vseh unikantnih izvajalcev. - - # Povprene ocene komponent (anketa PRED) - povzetek.predmetov.pred <- rbind(pov.pred, - meansPpred, - meansIprogPRED, - c(Fpred[1, 1:ncol(Fpred)], F.avg.pred)) - - # Povprene ocene komponent (anketa PO izpitu) - # Preverimo ali so v anketi PO odgovori oziroma al so v bazi podatki za predmet - if (!nrow(pov.po) > 0) { - pov.po <- meansPpo - - } - povzetek.predmetov.po <- rbind(pov.po, - meansPpo, - meansIprogPO, - c(Fpo[1, 1:ncol(Fpo)], - F.avg.po[c( - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )])) - - - ########################################## - # OBARVANJA VREDNOSTI V TABELAH (formatNA) - ########################################## - # Izvajalec - povzetek.izvajalca <- formatval(povzetek.izvajalca) - # Vhere Podatek je manj pomemben ali teko izracunljiv. replace "." with "--" - povzetek.izvajalca[nrow(povzetek.izvajalca) - c(0, 2), 1:7] <- "--" - - # Predmeti v Anketi PRED - povzetek.predmetov.pred <- formatval(povzetek.predmetov.pred) - povzetek.predmetov.pred[nrow(povzetek.predmetov.pred) - c(1), 1:5] <- "--" - - # Predmeti v anketi PO - povzetek.predmetov.po <- formatval(povzetek.predmetov.po, KT = TRUE) - povzetek.predmetov.po[nrow(povzetek.predmetov.po) - c(1), 1:5] <- "--" - - # Anketa PO - - ### //OBARVANJE UVODNIH TABEL// ### - - ## Imena vrstc TABEL ## - # Imena vrstic tabele 1.3 oz. IZVAJALCA - - # TABLE ROWNAMES # - # Imena vrstic za Tabelo 1.3 (Izvajalec pri predmetu) - rown.pov.izv <- - povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra == izvajalec, "ime.predmeta"] - # Imena vrstic za Tabelo 1.1 <- ANKETA PRED IZPITOM - rown.pov.pred <- - povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # Imena vrstic za Tabelo 1.2 <- ANKETA PO IZPITU - rown.pov.po <- - povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # Update 10.10.2019 # - # Ker se lahko zgodi, da predmeta v anketi PO sploh ni bilo - # elimo v tem primeru pridobiti ime predmeta iz ANKETE PRED izpitom - # v nasprotnem lahko pride to napake pri generiranju poroil - if(!length(rown.pov.po) > 0) { - rown.pov.po <- rown.pov.pred - } - - # //TABLE ROWNAMES// # - - rownames.pov.izv <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.izv)), - paste0('\\hline \\textbf{Povpreje izvajalca}'), - maxProgramIme, - paste0("\\hline \\textbf{Povpreje ", fakulteta, - " (", kvantili.izvajalci.st," \nizvajalcev pri predmetih)}"), - paste0( "\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.izvajalci.skupaj.st ," \nizvajalcev)}" - ) - ) - - # Imena vrstic tabele 1.1 oz PREDMETA - rownames.pov.pred <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.pred)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}', - maxProgramImePRED, - paste0("\\hline \\textbf{Povpreje ", - fakulteta," (", - kvantili.predmeti.st.pred, " predmetov)}" - ) - ) - - - # Imena vrstic tabele 121 oz PREDMETA - rownames.pov.po <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.po)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}', - maxProgramImePO, - paste0( "\\hline \\textbf{Povpreje ", fakulteta, - " (", kvantili.predmeti.st.po, " predmetov)}" - ) - ) - ## //Imena vrstc// ## - - ## Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ ## - # IPP - colnames(povzetek.izvajalca) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "t. odg. izvajalca**", - "\\% odgovorov izvajalca", - "\\% zavrnitev predmeta", - "\\% nesodelujoih", - "\\% ni poueval***", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ) - ) - # ANKETA PRED - colnames(povzetek.predmetov.pred) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "\\% odgovorov", - "\\% zavrnitev", - "\\% nesodelujoih", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ) - ) - # ANKETA PO - colnames(povzetek.predmetov.po) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "\\% odgovorov", - "\\% zavrnitev", - "\\% nesodelujoih", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po]), - "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko) - ) - ) - ## //Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ // ## - - - - ## e so v bati LURKERJI: Preverimo pri katerem predmetu smo jih upotevali po ZAVRNJENE ENOTE - # IZVAJALCI PRI PREDMETIH ANKETA PRED - st.lurkerjev.IZV <- - ifelse(povzetek.izvajalca.lurkerji >= 1, "\\#", "") - - povzetek.izvajalca[, 5][1:length(st.lurkerjev.IZV)] <- - paste(povzetek.izvajalca[, 5][1:length(st.lurkerjev.IZV)], st.lurkerjev.IZV, sep = "") - - if('\\#' %in% st.lurkerjev.IZV){ - opombaLurkerji.IZV <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.IZV <- NULL - } - - # ANKETA PRED PREDMETI - st.lurkerjev.PRED <- - ifelse(povzetek.predmetov.pred.lurkerji >= 1, "\\#", "") - - povzetek.predmetov.pred[, 4][1:length(st.lurkerjev.PRED)] <- - paste(povzetek.predmetov.pred[, 4][1:length(st.lurkerjev.PRED)], st.lurkerjev.PRED, sep = "") - - if('\\#' %in% st.lurkerjev.PRED){ - opombaLurkerji.PRED <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PRED <- NULL - } - - - # ANKETA PO PREDMETI - st.lurkerjev.PO <- ifelse(povzetek.predmetov.po.lurkerji >= 1, "\\#", "") - if(all(!is.na(st.lurkerjev.PO))) { - povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)] <- paste(povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)], st.lurkerjev.PO, sep = "") - } - - if('\\#' %in% st.lurkerjev.PO){ - opombaLurkerji.PO <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PO <- NULL - } - - - ##################################### - ## Histogrami v poglavju: POVZETEK ## - ##################################### - # We will put two histograms side by side on one page - # Histograms will present two differents components of elcturer or course (see more in report) - # Histogram for lecturer (TABLE 1.3 in the PDF report for the lecturer) - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) { #Histograme izrie v primeru, da ni NA vrednosti - - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM1.pdf"), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - - hist(povprecja.izvajalci$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.st," izvajalcev pri predmetih")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=12) # control over exactly the breakpoints between bins - points(x=subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - y=0, pch="X", cex=2.0) #Kriec v histogramu - # Drugi histogram - hist(povprecja.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.skupaj.st," izvajalcev")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5)) - points(x=subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - y=0, pch="X", cex=2.0) - dev.off() - } - - # Histogram for ANEKTA PRED, see table 1.1 in th epdf report for lecturer - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM2.pdf"), family='sans', - pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - hist(povprecja.predmeti$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.pred," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points( - x = subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - - hist(povprecja.predmeti$predmet.ocena.zadovoljstvo_mean, - xlab=c(paste0("Zadovoljstvo za\n", kvantili.zadovoljstvo," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points( - x = subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - - # Histogram for ANEKTA PO, see table 1.1 in th epdf report for lecturer - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM3.pdf"), family='sans') - hist(povprecja.predmeti.po$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - - # Kreditne Toke - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM5.pdf"), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) - hist(povprecja.predmeti.po$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - hist(povprecja.predmeti.po$predmet.ocena.krediti_mean, - xlab=c(paste0("Ustreznost KT za\n", kvantili.ustreznotsKT," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - ## //Histogrami v poglavju: POVZETEK// ## - - - ## Pojasnilo pod posameznim histogramom ## - # TABELA 1.1: ANKETA PRED - pojas.histog <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.pov.pred[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1], - digits = 1 - ), - " (\\textbf{Zadovoljstvo}) v desnem grafu. }}")) - # TABELA 1.2: ANKETA PO - pojas.histog.po <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.pov.po[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - digits = 1 - ), " (\\textbf{Ustreznost KT}) v desnem grafu.}}")) - - - # TABELA: 1.3 IZVAJALEC PRI PREDMETU - pojas.histog.izv <- c(paste0("{\\footnotesize \\textit{* Poloaj izvajalca pri predmetu \\guillemotright\\textbf{", - paste0(rownames.pov.izv[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu. \\newline ** Poloaj izvajalca (povpreje po vseh njegovih predmetih) - med vsemi izvajalci oznauje kriec X pri vrednosti ", - round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits=1), " v desnem grafu.}}")) - - ## //Pojasnilo dodatno pod histograme// ## - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.2 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - povzetek.predmetov.po <- povzetek.predmetov.po %>% - dplyr::select(-"\\rotatebox{90}{Kompetence\\,}", - -"\\rotatebox{90}{Ustreznost KT*\\,}", - everything()) - ## //vrstni red stolpcev// ## - - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in - # poimenovali vrstice ter stolpce podatkovnega okvirja zanemo z generiranjem LATEX tabel - # Generiranje tabel v poglavju POVZETEK: Tabele Povpreij ankete PRED izpitom, PO izpitu in izvajalcev pri predmetih - tex.povzetek <- c("\\section{Ocene predmetov in izvajalca}", - paste("Prikazana so povpreja za ocene komponent na lestvici 1-5 - za vse predmete izvajalca z vsaj 4 odgovori. - Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno}}, - povpreja pod 3.0 pa {\\color{BrickRed}\\textbf{rdee}}. - Nizko tevilo enot in neugodne stopnje sodelovanja so oznaene - z enojnim () oziroma z dvojnim oklepajem (()). - Podrobnosti so v metodolokih navodilih na koncu poroila in - na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki."), - - capture.output( - Hmisc::latex( - povzetek.predmetov.pred, - caption = "Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{7.3cm}", - longtable = TRUE, - multicol = FALSE, - insert.bottom = c(opombaPpred, opombaLurkerji.PRED), - col.just = c("c", "c|", "c", "c", "c|", "c", "c", "c", "c", "c", "c", "c|", "c"), - rowname = rownames.pov.pred - ) - ), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.1) - Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.pred),"\\textbf{predmetov} in - frekvenna porazdelitev povprenih ocen za \\textbf{Zadovoljstvo} - za", paste0(kvantili.zadovoljstvo),"\\textbf{predmetov}}", - paste0( - "\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", - izvajalec, - "_HISTOGRAM2.pdf}}" - ), - "\\end{figure}",pojas.histog)}, "\\newpage", - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo,opombaLurkerji.PO), - col.just = c("c", "c|", "c", "c", "c|", "c", "c", "c", "|c|", "c", "c"), - rowname=rownames.pov.po)), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.2) - Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.po),"\\textbf{predmetov} in - frekvenna porazdelitev povprenih ocen \\textbf{Ustreznost KT} za", - kvantili.ustreznotsKT,"\\textbf{predmetov}}", - paste0("\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", izvajalec, "_HISTOGRAM5.pdf}}"), - "\\end{figure}", pojas.histog.po)},"\\newpage", - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI,opombaLurkerji.IZV), - col.just = c("c", "c", "c|", "c", "c", "c", "c|", "c", "c", "c", "c", "c", "c|", "c"), - - rowname=rownames.pov.izv)), - # Vstavimo Histogram - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.3) - Frekvenna porazdelitev povprenih ocen \\textbf{Skupaj} za ", - kvantili.izvajalci.st, - "\\textbf{izvajalcev pri predmetih*} in frekvenna porazdelitev - povprenih ocen izvajalcev \\textbf{Skupaj}\n za", - kvantili.izvajalci.skupaj.st," \\textbf{izvajalcev}**}", - paste0("\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", izvajalec, "_HISTOGRAM1.pdf}}"), - "\\end{figure}", pojas.histog.izv)},"\\newpage") - - - # Vse vrednosti za izvajalca zapiemo v spremenljivko, ki jo na koncu uporabimo pri generiranju celotnega poroila - part$izvajalec[[izvajalec]]$povzetek <- tex.povzetek - # V novem poroilu "POVZETEK" elimo imeti samo tabele, brez kvantilnih rangov in histogramov zato spremenljivko prilagodimo - tex.povzetek.povzetek <- c( - capture.output(Hmisc::latex(povzetek.predmetov.pred, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.3cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpred,opombaLurkerji.PRED), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowname=rownames.pov.pred)), - - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo,opombaLurkerji.PO), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowname=rownames.pov.po)), - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI,opombaLurkerji.IZV), - col.just=c(rep_len("c",2),"c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowname=rownames.pov.izv))) - - part$izvajalec[[izvajalec]]$povzetek.povzetek <- tex.povzetek.povzetek - ## //Ocene predmetov in izvajalca <- skupne tabele// ## - - ## //Generiranje LATEX tabel//## - - ############################### - # PODPOGLAVJE: Kvantilni rangi# - ############################### - ## kvantili ## - if (any(kvantili.izvajalci$izvajalec.sifra == izvajalec)) { - kvantili.izvajalca <- - kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - kvantili.izvajalca.skupaj <- - kvantili.izvajalci.skupaj[kvantili.izvajalci.skupaj$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - kvantili.predmetov.pred <- - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - - kvantili.predmetov.po <- - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - - # Pojasnilo vrednosti k posamezni tabeli kvantilnih rangov - pojas <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca[1, 10], "\\%"), - " od ", - kvantili.izvajalci.st, - " - izvajalcev pri predmetih imelo nije povpreje ocen od - vrednosti izvajalca pri predmetu ", - round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - - pojas1 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta v tabeli 1.1. - Kvantilni rang ", - kvantili.predmetov.pred[1, 1], - " za predmet \\guillemotright ", - rownames.pov.izv[1], - "\\guillemotleft \\ pomeni, - da je imelo ", - paste0(kvantili.predmetov.pred[1, 1], "\\%"), - " predmetov nije tevilo vpisanih tudentov od vrednosti ", - paste0(povzetek.predmetov.pred[1, 1]), - " v tabeli 1.1.\\newline ** Kvantilni rang ", - kvantili.predmetov.pred[1, 11], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.predmetov.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo - nije povpreje ocen od vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - - - pojas2 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta - v tabeli 1.2.\\newline ** Kvantilni rang ", - kvantili.predmetov.po[1, 8], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.predmetov.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov - imelo nije povpreje od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - kvantili.predmetov.po[1, 9], - " (\\textbf{Ustreznost KT}) pa pomeni, da je (glede na tevilo kreditnih tok) ", - paste0(kvantili.predmetov.po[1, 9], "\\%"), - " vseh predmetov zahtevalo nije tevilo ur.}}" - ) - ) - - pojas3 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca.skupaj[1, 10], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.izvajalca.skupaj[1, 10], "\\%"), - " od ", - kvantili.izvajalci.skupaj.st, - " izvajalcev pri predmetih imelo nije povpreje od vrednosti izvajalca pri predmetih ", - round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - ## //pojasnilo// ## - - ## Opomba poda tabelami kvantilnih rangov ## - if (any(kvantili.izvajalca == ".")) { - opombaI <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca[1, 10], "\\%"), - " od ", - kvantili.izvajalci.st, - " izvajalcev pri predmetu - imelo nije povpreje od vrednosti ", - round( - subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - } else { - opombaI <- pojas - } - if (any(kvantili.izvajalca.skupaj == ".")) { - opombaIs <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca.skupaj[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca.skupaj[1, 10], "\\%"), - " od ", - kvantili.izvajalci.skupaj.st, - " izvajalcev pri predmetih imelo nije povpreje - od vrednosti ", - round( - subset(povprecja.izvajalci.skupaj, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = - 1 - ), - - " (\\textbf{Skupaj}) v tabeli 1.3. Glej tudi desno sliko 1.3.}}"))} else { - opombaIs <- pojas3 - } - - if (any(kvantili.predmetov.pred == ".")) { - opombaPpred <- - c( - paste( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.1, - Kvantilni rang ", - kvantili.predmetov.pred[1, 1], - " za predmet - \\guillemotright ", - rownames.pov.izv[1], - "\\guillemotleft \\ pomeni, da je imelo ", - paste0(kvantili.predmetov.pred[1, 1], "\\%"), - " izvajalcev pri predmetih v Povpreju nije tevilo vpisanih - tudentov od vrednosti ", - paste0(povzetek.predmetov.pred[1, 1]), - " v tabeli 1.1. - \\newline ** Kvantilni rang ", - kvantili.predmetov.pred[1, 11], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo nije povpreje - od vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - } else { - opombaPpred <- pojas1 - } - if (nrow(kvantili.predmetov.po) > 0) { - if (any(kvantili.predmetov.po == ".")) { - opombaPpo <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.2. - \\newline ** Kvantilni rang ", - kvantili.predmetov.po[1, 8], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov imelo nije povpreje od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang " - , - kvantili.predmetov.po[1, 9], - " (\\textbf{Ustreznost KT} pa pomeni, da je (glede na tevilo kreditnih tok) ", - paste0(kvantili.predmetov.po[1, 9], "\\%"), - " vseh predmetov nije - tevilo ur.}}" - ) - ) - } - else { - opombaPpo <- pojas2 - } - } - - ## //opomba kvantili// ## - - # Imena vrstic v tabelah kvantilnih rangov - rownames.kvantili.izvajalca <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra == - izvajalec, "ime.predmeta"] - ))) - - rownames.kvantili.predmetov.pred <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - ))) - - rownames.kvantili.predmetov.po <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - ))) - # V kolikor predmeta sploh n bilo v bazi ANKETA PO, ime poiemo v anketi PRED - if(!length(rownames.kvantili.predmetov.po) > 0) { - rownames.kvantili.predmetov.po <- rownames.kvantili.predmetov.pred - } - - - # V primeru, da bi eleli pri predmetu v tabeli 1.1 dodati oznako X, da je takoj jasno, na kateri predmet se X v histogramu nanaa) - rownames.kvantili.izvajalca[1] = paste(rownames.kvantili.izvajalca[1], "**", sep = " ") - rownames.kvantili.predmetov.pred[1] = paste(rownames.kvantili.predmetov.pred[1], "**", sep = " ") - rownames.kvantili.predmetov.po[1] = paste(rownames.kvantili.predmetov.po[1], "**", sep = " ") - - # Imena stolpcev za tabele - colnames(kvantili.izvajalca) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.izvajalca.skupaj) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.predmetov.pred) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.predmetov.po) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj**}", - as.character(paste0(vars.predmet$krediti$ime.kratko, "*")) - ) - ) - - # explain what specific quantile means - primer.kvantil <- - kvantili.izvajalca[, ncol(kvantili.izvajalca)][kvantili.izvajalca[, ncol(kvantili.izvajalca)] != "."][1] - if (is.na(primer.kvantil)) { - primer.kvantil <- "." - } - - # Interpretacija vrednosti kvantilnih rangov v tabelah: glej poroilo za izvajalca, podpoglavje Kvantilni rangi. - opredelitev.kvantili <- paste("Kvantilni rangi oznaujejo poloaj predmeta - oziroma izvajalca med vsemi predmeti oziroma - izvajalci celotne fakultete.\nZgornja etrtina - (75-100) je obarvana {\\color{Chateau Green}\\textbf{zeleno}}, - zgornja desetina (90-100) {\\color{Blue Stone}\\textbf{modrozeleno}}. - Spodnja etrtina (0-25) je obarvana {\\color{Orange}\\textbf{oranno}}, - spodnja desetina (0-10) {\\color{BrickRed}\\textbf{rdee}}. - Podrobnosti so v metodolokih navodilih na koncu poroila in - na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki.") - - pojasnilo.kvantili1 <- paste("Primer interpretacije vrednosti v tabeli 1.5:\nKvantilni rang" - , kvantili.izvajalca.skupaj[10], "(\\textbf{Skupaj}) pomeni, - \nda ima", paste0(kvantili.izvajalca.skupaj[10], "\\%"), - "od skupno",kvantili.izvajalci.skupaj.st," izvajalcev nije - povpreje ocenjenih komponent (\\textbf{Skupaj}) za izvajalca pri predmetih - od vrednosti izvajalca", round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - digits = 1 - ), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili2 <- paste("Primer interpretacije vrednosti v tabeli 1.4:\nKvantilni rang", - primer.kvantil, "(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.pov.izv[1],"\\guillemotleft\\ pomeni, da je", - paste0(primer.kvantil, "\\%"), " od skupno", kvantili.izvajalci.st, - "izvajalcev pri predmetih imelo nije povpreje ocenjenih - komponent od vrednosti",round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili4 <- paste("Primer interpretacije vrednosti v tabeli 1.7:\nKvantilni rang", - kvantili.predmetov.po[1,8],"(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.kvantili.predmetov.po[1], "\\guillemotleft\\ pomeni, \nda je", - paste0(kvantili.predmetov.po[1,8], "\\%"), "od skupno", kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocenjenih komponent od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), "(\\textbf{Skupaj}) v tabeli 1.3. Glej tudi sliko 1.3.") - ## //Interpretacija// ## - - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.5 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) + - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - kvantili.predmetov.po <- kvantili.predmetov.po[c(1,2,3,5,6,7,8,4,9)] - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in ppimenovali vrstice ter stolpce podatkovnega okvirja - # zanemo z generiranjem LATEX tabel za podpoglavje: kvantilni rangi - part$izvajalec[[izvajalec]]$kvantili <- c("\\section{Kvantilni rangi}", opredelitev.kvantili, - - capture.output(Hmisc::latex(kvantili.predmetov.pred, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.pred), - " predmeti (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpred, - rowlabel.just='p{9cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$pred)),'|c'), - rowname=rownames.kvantili.predmetov.pred)), - - - capture.output(Hmisc::latex(kvantili.predmetov.po, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.po), - " predmeti (anketa PO izpitu)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpo, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$po[-1])),'|c','|c','c'), - rowname=rownames.kvantili.predmetov.po)), - - - capture.output(Hmisc::latex(kvantili.izvajalca, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetih} ", - paste0("med ",kvantili.izvajalci.st, - " izvajalci pri predmetih "), - " (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaI, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname=rownames.kvantili.izvajalca)), - - - capture.output(Hmisc::latex(kvantili.izvajalca.skupaj, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca} ", - paste0("med ", kvantili.izvajalci.skupaj.st, - " izvajalci")," (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaIs, - rowlabel.just='p{10cm}', - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname="\\textbf{Povpreje izvajalca**}")),"\\newpage") - - - - } else {part$izvajalec[[izvajalec]]$kvantili <- NULL} - ## /kvantili/ ## - - ## //Generiranje LATEX tabel// ## - - - - ################################################################################# - ###Sumarne ocene tudijskih programov (Poglavje pred metodolokim pojasnilom)#### - ################################################################################# - #Izpis Tabel: Povpreja za ocene komponent vseh programov, v katerih je izvajalec sodeloval - - - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - izv.prog <- - subset(povprecja.izvajalci.programi, - izvajalec.sifra == izvajalec & predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(izv.prog) > 0) { - - # Get the programmes ID of lecturer - lect.pr <- izv.prog$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.izv <- subset(povprecja.izvajalci.programi, - program.studentov %in% lect.pr & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.izv <- aggregate( - prog.izv[paste0(vars.izvajalec$cont$vars, "_mean")], - by = list(prog.izv$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - # En Izvajalec ima lahko ve predmetov - n.prog.ipp <- aggregate(prog.izv$izvajalec.sifra, - by = prog.izv[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(x)) - - # Create df with means and number of IFF in programme - m.prog.izv <- - merge( - n.prog.ipp, - m.prog.izv, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.izv) <- make.unique(as.character(m.prog.izv$program.studentov.ime)) - # Select columns for latex tables - m.prog.izv <- m.prog.izv %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes - m.prog.izv <- cbind(m.prog.izv, Skupaj = rowMeans(m.prog.izv[, 2:ncol(m.prog.izv)], na.rm = TRUE)) - # Col mean - m.prog.izv <- rbind(m.prog.izv, c("--", colMeans(m.prog.izv[2:ncol(m.prog.izv)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See fuctom function formatval - m.prog.izv <- formatval(m.prog.izv) - - # Add rownames - rownames(m.prog.izv)[nrow(m.prog.izv)] <- "\\hline \\textbf{Povpreje programov}" - # Add colnames - colnames(m.prog.izv) <- latex.rotate(c("t. IPP", - as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars]), - "\\textbf{Skupaj}")) - # Generating LATEX table - izv.prog.tex <- capture.output(Hmisc::latex(m.prog.izv, - caption = "Ocene komponent - \\textbf{izvajalcev pri predmetih} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel = "", - file = "", - where = "H", - multicol = FALSE, - rowlabel.just = "A{9.5cm}", - insert.bottom = paste( - "{\\footnotesize \\textit{- Podatek je - manj pomemben ali teko izraunljiv. - \\newline ** t. IPP - tevilo vseh - izvajalcev pri predmetih na doloenem programu.}}" - ), - col.just = c("c|", - rep_len("c", length(vars.izvajalec$cont$vars)), "|c"))) - } else { - - izv.prog.tex <- "Ni ocen" - } - - part$izvajalec[[izvajalec]]$progIPP <- izv.prog.tex - ######### - - - - ## OCENE PROGRAMOV PO PREDMETIH ## - ##ANKETA PRED IZPITOM - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - pr.prog.pred <- - subset(povprecja.predmeti.programi, - predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(pr.prog.pred) > 0) { - - # Get the programmes - pr.pred <- pr.prog.pred$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.pred <- subset(povprecja.predmeti.programi, - program.studentov %in% pr.pred & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.pred <- aggregate( - prog.pred[paste0(vars.predmet$cont$pred, "_mean")], - by = list(prog.pred$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - n.prog.pred <- aggregate(prog.pred$predmet.sifra, - by = prog.pred[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(unique(x))) - - # Create df with means and number of IFF in programme - m.prog.pred <- - merge( - n.prog.pred, - m.prog.pred, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.pred) <- make.unique(as.character(m.prog.pred$program.studentov.ime)) - # Select columns for latex tables - m.prog.pred <- m.prog.pred %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes - m.prog.pred <- cbind(m.prog.pred, Skupaj = rowMeans(m.prog.pred[, 2:ncol(m.prog.pred)], na.rm = TRUE)) - # Col mean - m.prog.pred <- rbind(m.prog.pred, c("--", colMeans(m.prog.pred[2:ncol(m.prog.pred)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See fuctom function formatval - m.prog.pred <- formatval(m.prog.pred) - - # Add rownames - rownames(m.prog.pred)[nrow(m.prog.pred)] <- "\\hline \\textbf{Povpreje programov}" - # Add colnames - colnames(m.prog.pred) <- latex.rotate(c("t. predmetov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}")) - # Generating LATEX table - prog.pred.tex <- capture.output(Hmisc::latex(m.prog.pred, - caption = "Ocene komponent \\textbf{predmetov} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel = "", - file = "", - multicol = FALSE, - where = "H", - rowlabel.just = "A{9.5cm}", - insert.bottom = paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just = c("c|", rep_len("c", length(vars.predmet$cont$pred)), "|c"))) - } else { - prog.pred.tex <- "Ni ocen." - } - part$izvajalec[[izvajalec]]$progPRED <- prog.pred.tex - - ##ANKETA PO IZPITU## - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - pr.prog.po <- - subset(povprecja.predmeti.programi.PO, - predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(pr.prog.po) > 0) { - - # Get the programmes - pr.po <- pr.prog.po$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.po <- subset(povprecja.predmeti.programi.PO, - program.studentov %in% pr.po & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.po <- aggregate( - prog.po[c(paste0(vars.predmet$cont$po, "_mean"), "predmet.ocena.krediti_mean")], - by = list(prog.po$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - n.prog.po <- aggregate(prog.po$predmet.sifra, - by = prog.po[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(unique(x))) - - # Create df with means and number of IFF in programme - m.prog.po <- - merge( - n.prog.po, - m.prog.po, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.po) <- make.unique(as.character(m.prog.po$program.studentov.ime)) - # Select columns for latex tables - m.prog.po <- m.prog.po %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes (colmeans from 3 components) - m.prog.po <- cbind(m.prog.po, Skupaj = rowMeans(m.prog.po[, 3:5], na.rm = TRUE)) - # Reorder columns due to the fact the components from ANKETA PO consist of: vsebine, naloge, kriteriji - m.prog.po <- m.prog.po %>% - dplyr::select(-predmet.ocena.kompetence_mean, - -predmet.ocena.krediti_mean, - everything()) - - # Col mean - m.prog.po <- rbind(m.prog.po, c("--", colMeans(m.prog.po[2:ncol(m.prog.po)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See custom function formatval - # Remember in anketa PO we also have KREDITNE TOKE - m.prog.po <- formatval(m.prog.po, KT = TRUE) - - # Add rownames - rownames(m.prog.po)[nrow(m.prog.po)] <- "\\hline \\textbf{Povpreje programov}" - - # Add colnames - colnames(m.prog.po) <- latex.rotate(c("t. predmetov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT*" - )) - - - # Generating LATEX table - prog.po.tex <- capture.output(Hmisc::latex(m.prog.po, - caption="Ocene komponent \\textbf{predmetov} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel="", - file="", - where="H", - multicol = FALSE, - rowlabel.just="A{10cm}", - insert.bottom=paste("{\\footnotesize \\textit{ - -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} - so oznaena opazna odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}}})."), - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"))) - } else { - prog.po.tex <- "Ni ocen." - } - - part$izvajalec[[izvajalec]]$progPO <- prog.po.tex - ######### -} -#------------------------------------------- //IZVAJALEC// ----------------------------------------------# - - -####################################### -#' DATA NEEDED FOR PDF REPORT: @PART II -####################################### -#--------------------------------------------- PREDMET ------------------------------------------------# -predmeti <- NULL -if (omejeniIzvajalci) { - sifrePredmet <- - as.character(unique(data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% sifreIzvajalec])) -} else {sifrePredmet <- as.character(unique(data.izvajalci$predmet.sifra))} - -for (predmet in sifrePredmet){ - - # course average # - # ANKETA PRED - pr.pred.tmp <- subset(povprecja.predmeti, predmet.sifra == predmet) - # ANKETA PO - pr.po.tmp <- subset(povprecja.predmeti.po, predmet.sifra == predmet) - - # Anketa PRED - data.pred.tmp <-subset(data.predmeti, predmet.sifra == predmet & veljavna) - # Anketa PO - data.po.tmp <- subset(data.predmeti.po, predmet.sifra == predmet & veljavna) - - - #kdo so izvajalci predmeta - izvajalci.predmeta <- - unique(subset(data.izvajalci, predmet.sifra == predmet)$izvajalec.sifra) - - if (omejeniIzvajalci) { - izvajalci.predmeta <- - izvajalci.predmeta[izvajalci.predmeta %in% sifreIzvajalec] - } - - ## stopnja sodelovanja ## - stopnjaPredmeta <- pr.pred.tmp$STOPNJA - if (stopnjaPredmeta==1) { - # Faculty string - Fstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - Fstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', pr.pred.tmp$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - Fstring <- '' - } - - imepredmeta <- sub("^BD |^BP ", "", pr.pred.tmp$ime.predmeta) # ime brez BD/BP predpone - imepredmeta <- gsub('_', '\\_', imepredmeta, fixed=T) # pravilni izpis podrtaja v pdf izpisu "_" - imepredmeta <- gsub('&', '\\&', imepredmeta, fixed=T) # pravilni izpis in v pdf izpisu "&" - - - ##Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PRED IZPITOM - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_response_pred_izpitom.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar = (c(4, 4, 1, 13) + 0.1), - mgp = c(3, 2, 0), - xpd = TRUE) - ## Make the matrix for barplot - mat.pred <- cbind( - c( - pr.pred.tmp$sodelujocih.pct, - pr.pred.tmp$zavrnjenih.pct, - pr.pred.tmp$neodzivnih.pct - ), - c(Fpred[as.character(stopnjaPredmeta), "sodelujocih.pct"], - Fpred[as.character(stopnjaPredmeta), "zavrnjenih.pct"], - Fpred[as.character(stopnjaPredmeta), "neodzivnih.pct"]) - ) - - ## Get the y-values for text - ys.pred <- - apply(mat.pred, 2, function(x) - c(x[1] / 2, head(cumsum(x), -1) + tail(x, -1) / 2)) - - ## Make barplot, store mat.pred data - xs.pred <- barplot( - mat.pred, - names.arg = c('Predmet\n', Fstring[2]), - col = c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim = c(0, 100), - space = c(0, 1) - ) - - ## Add text - text(rep(xs.pred, each = nrow(ys.pred)), c(ys.pred), labels = paste0(round(c(mat.pred), 0), "%")) - legend( - "topright", - inset = c(-0.55, 0), - legend = c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col = c("mistyrose1", "dodgerblue3", "firebrick3"), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ############### - - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PO IZPITU - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_response_po_izpitu.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar = (c(4, 4, 1, 13) + 0.1), - mgp = c(3, 2, 0), - xpd = TRUE) - ## Make the matrix for barplot - mat.po <- cbind( - c( - pr.po.tmp$sodelujocih.pct, - pr.po.tmp$zavrnjenih.pct, - pr.po.tmp$neodzivnih.pct - ), - c(Fpo[as.character(stopnjaPredmeta), "sodelujocih.pct"], - Fpo[as.character(stopnjaPredmeta), "zavrnjenih.pct"], - Fpo[as.character(stopnjaPredmeta), "neodzivnih.pct"]) - ) - - ## Get the y-values for text - ys.po <- - apply(mat.po, 2, function(x) - c(x[1] / 2, head(cumsum(x), -1) + tail(x, -1) / 2)) - - ## Make barplot, store mat.po data - xs.po <- barplot( - mat.po, - names.arg = c('Predmet\n', Fstring[2]), - col = c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim = c(0, 100), - space = c(0, 1) - ) - - ## Add text - text(rep(xs.po, each = nrow(ys.po)), c(ys.po), labels = paste0(round(c(mat.po), 0), "%")) - legend( - "topright", - inset = c(-0.55, 0), - legend = c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col = c("mistyrose1", "dodgerblue3", "firebrick3"), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ##### - - - - # Olepavanje slovnice pri izpisu Delea odgovorov: glej tekst, ki se pojavi v drugem poglavju pri izpisu za izvajalca - if (pr.pred.tmp$N_neodzivnih == 1) { # here - odziv <- "ni pristopil" - } else if (pr.pred.tmp$N_neodzivnih == 2){ - odziv <- "nista pristopila" - } else if (pr.pred.tmp$N_neodzivnih == 3 | pr.pred.tmp$N_neodzivnih == 4){ - odziv <- "niso pristopili" - } else { - odziv <- "ni pristopilo" - } - - - # parti predmeta - # cele parte dela smo kjer je dovolj enot - if (pr.pred.tmp$N_anket >= minEnot | isTRUE(pr.po.tmp$N_anket >= minEnot)) { - - tex.sodelovanje <- - c( - paste0( - "Na evalvacijski vpraalnik za predmet \\guillemotright ", - imepredmeta, - "\\guillemotleft \\ PRED izpitom - je (vsaj deloma) odgovarjalo ", - pr.pred.tmp$N_anket, - " od skupno ", - pr.pred.tmp$ST_STUD, - " vpisanih tudentov. Pri posameznih vpraanjih je lahko - tevilo nesodelujoih nekoliko veje (neodgovor spremenljivke). Dodatnih ", - pr.pred.tmp$N_zavrnjenih, - " tudentov je zavrnilo izpolnjevanje ankete, ", - pr.pred.tmp$N_neodzivnih, - " pa k izpolnjevanju ", - odziv, - ". ", - "Odstotek sodelujoih znaa - \\textbf{", - round(pr.pred.tmp$sodelujocih.pct), - "\\%}, ", - "kar lahko primerjamo s povprejem - \\textbf{", - round(Fpred[as.character(stopnjaPredmeta), "sodelujocih.pct"]), - "\\%} vseh ", - Fstring[1], - " predmetov na ", - fakulteta, - ".", - sep = "" - ), - "\\newline", - "\\begin{figure}[H]", - # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PRED izpitom)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_response_pred_izpitom.pdf}}" - ), - "\\end{figure}", - paste0( - "Na anketo PO izpitu je odgovarjalo ", - paste0(pr.po.tmp$N_anket), - " tudentov, kar je \\textbf{", - round(pr.po.tmp$sodelujocih.pct), - "\\%} vseh vpisanih tudentov. ", - "povpreje deleev za vse dodiplomske predmete na ", - fakulteta, - " je znaalo \\textbf{", - round(Fpo[as.character(stopnjaPredmeta), - "sodelujocih.pct"]), - "\\%}." - ), - "\\begin{figure}[H]", - # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PO izpitu)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_response_po_izpitu.pdf}}" - ), - "\\end{figure}" - ) - - part$predmet[[predmet]]$response <- tex.sodelovanje - ## /stopnja sodelovanja/ ## - - - ## tEVILSKE ## - # ANKETI PRED IN PO SKUPAJ - tabela.cont <- cbind.data.frame( - # tevilo odgovorov - N = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_N")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_N")])), - # Povpreje komponent predmeta - mean = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_mean")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_mean")])), - # Standardni odklon komponent - sd = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_sd")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_sd")])), - # Standardni odklon komponent - min = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_min")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_min")])), - # max vrednost komponent - max = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_max")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_max")])) - ) - - # For radar chart - radar.c <- tabela.cont - # IF there are NA values for LATEX TABLE purposes we want to have "." instead - tabela.cont[is.na(tabela.cont)] <- "." - - # Footnote under latex table in case there is not enough data (less than 4) - if (any(tabela.cont$N == ".")) { - opomba <- - '{\\footnotesize {. Podatek ni prikazan zaradi - premajhnega tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' -} else { - opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}" - } - - # Faculty mean for all courses - F.course <- data.frame(c(F.avg.pred[paste0(vars.predmet$cont$pred,"_mean")], - F.avg.po[paste0(vars.predmet$cont$po[-1],"_mean")])) - colnames(F.course) <- 'Fmean' - tabela.cont <- cbind(tabela.cont, F.course) - - - - ## radar graf ## - if (sum(!is.na(radar.c$mean)) < 4) { - radar.c$mean <- - radar.c$mean[!is.na(radar.c$mean)] <- - NA - } # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- - data.frame(rbind(5, 1, t(cbind( - F.course, as.numeric(radar.c$mean) - ))), - row.names = 1:4, - check.names = F) - colnames(radar.cont) <- - sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[c(vars.predmet$cont$pred, vars.predmet$cont$po[-1])])) - # Dodamo zvezdice, da loimo komponente v anekti PO do komponent v anekti PRED - # Bi se dalo veliko enostavneje (samo zandjim trem vrsticam damo zvezdice a zanekrat pustimo :) ) - colnames(radar.cont)[colnames(radar.cont) %in% as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])] <- - paste0(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), "*") - - - # Export Radar chart to PDF with CAIRO - CairoPDF( - paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_cont.pdf"), - family = 'sans', - pointsize = 9, - width = 6, - height = 4 - ) - - par(mar = (c(0, 4, 1, 6) + 0.1), xpd = TRUE) - fmsb::radarchart( - radar.cont, - pcol = c('dodgerblue3', 'firebrick3'), - cglcol = 'gray75', - plwd = 2, - plty = 1, - cglwd = 1, - cglty = 1, - seg = 4, - axistype = 1, - caxislabels = c(1:5), - axislabcol = 'gray25', - centerzero = TRUE - ) - legend( - 'topright', - inset = c(-0.15, 0), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - col = c('firebrick3', 'dodgerblue3'), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ## /radar graf/ ## - - - # LOENI TABELI FREKVENIH PORAZDELITEV IN DELEEV ZA ANKETO PRED IN ANKETO PO - # Anketa PRED - tabela.pred <- - rbind( - # Komponente, ki nastopajo v anketi PRED - tabela.cont[1:7,], - c( - '', - pr.pred.tmp$predmet.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont[1:7, ]$Fmean, na.rm = TRUE) - ) - ) - # Tidy numbers (color, parenthesis etc.) - tabela.pred <- formatval(tabela.pred) - tabela.pred$N[length(tabela.pred$N == ".")] <- NA - - - # frekvence - dist.pred <- t(sapply(data.pred.tmp[, vars.predmet$cont$pred], - function(x) - table(factor(x, levels = someMiss.pred)))) - - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.1 <- round((rowSums(dist.pred[,1:2], na.rm = TRUE)) / (rowSums(dist.pred, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.2 <- round((rowSums(dist.pred[,4:5], na.rm = TRUE)) / (rowSums(dist.pred, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.1 <- ifelse(tabela.pred$mean == ".", ".", dist.pct.1) - dist.pct.2 <- ifelse(tabela.pred$mean == ".", ".", dist.pct.2) - - # Barvanje vrednosti - dist.pct.1 <- ifelse(dist.pct.1 != "." & dist.pct.1 >= 20, paste('{\\color{Orange}\\textbf{', dist.pct.1, '}}'),dist.pct.1) - dist.pct.2 <- ifelse(dist.pct.2 != "." & dist.pct.2 <= 50, paste('{\\color{Orange}\\textbf{', dist.pct.2, '}}'),dist.pct.2) - - tabela.pred.pct <- qpcR:::cbind.na(tabela.pred, dist.pct.1, dist.pct.2) - - - # tevilo odgovorov fakultete na spremenljivke ankete PRED IZPITOM - dist.pred.fakulteta <- subset(data.predmeti, veljavna) - - dist.pred.f <- - t(sapply(dist.pred.fakulteta[, vars.predmet$cont$pred], - function(x) - table(factor(x, levels = someMiss.pred)))) - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - dist.pct.F.1 <- round((rowSums(dist.pred.f[,1:2], na.rm = TRUE))/ (rowSums(dist.pred.f, na.rm = TRUE)) * 100, 0) - dist.pct.F.2 <- round((rowSums(dist.pred.f[,4:5], na.rm = TRUE)) / (rowSums(dist.pred.f, na.rm = TRUE)) * 100, 0) - - dist.pct.F.1 <- ifelse(dist.pct.F.1 >= 20, paste('{\\color{Orange}\\textbf{', dist.pct.F.1, '}}'),dist.pct.F.1) - dist.pct.F.2 <- ifelse(dist.pct.F.2 <= 50, paste('{\\color{Orange}\\textbf{', dist.pct.F.2, '}}'),dist.pct.F.2) - - - # Combine - tabela.pred.pct <- qpcR:::cbind.na(tabela.pred.pct, dist.pct.F.1, dist.pct.F.2) - # /Porazdelitev delei/# - - # Select columns for Latex table pruposes - tabela.pred.pct <- - subset( - tabela.pred.pct, - select = c( - N, # Number of answers for each component in ANKETA PRED - mean, # Lecturers course mean for each component in ANKETA PRED - dist.pct.1, # Percentage of course answers for each component (frequnecy 1 and 2) - dist.pct.2, # Percentage of course answers for each component (frequnecy 4 and 5) - Fmean, # Faculty course mean for each component in ANKETA PRED - dist.pct.F.1, # Percentage of faculty answers with frequnecy 1 and 2 - dist.pct.F.2 # Percentage of faculty answers with frequnecy 1 and 2 - ) - ) - - tabela.pred.pct[nrow(tabela.pred.pct), c(1, 3, 4)] <- NA - - # Add rownames for latex table purposes - rownames(tabela.pred.pct) <- - c(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]), - '\\hline\n\\textbf{Skupaj}') - # Add aslo colnames - colnames(tabela.pred.pct) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.pred.tex <- capture.output(Hmisc::latex(toLatex(tabela.pred.pct), - caption = "Povpreja in delei kategorij odgovorov - za komponente \\textbf{predmeta} - (anketa PRED izpitom)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(4, 3), - col.just = rep_len('c', ncol(tabela.pred.pct)), - rowlabel.just = 'p{7cm}', - insert.bottom = opomba)) - - - # WE DO SIMILAR ALSO FOR ANKETA PO - tabela.po <- - rbind( - # Komponente, ki nastopajo v anketi PRED - tabela.cont[8:10,], - c( - '', - pr.po.tmp$predmet.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont[8:10, ]$Fmean, na.rm = TRUE) - ) - ) - # Tidy numbers (color, parenthesis etc.) - tabela.po <- formatval(tabela.po) - - - # frekvence - dist.po <- t(sapply(data.po.tmp[, vars.predmet$cont$po[-1]], - function(x) - table(factor(x, levels = someMiss.po)))) - - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.po.1 <- round((rowSums(dist.po[,1:2], na.rm = TRUE)) / (rowSums(dist.po, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.po.2 <- round((rowSums(dist.po[,4:5], na.rm = TRUE)) / (rowSums(dist.po, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.po.1 <- ifelse(tabela.po$mean == ".", ".", dist.pct.po.1) - dist.pct.po.2 <- ifelse(tabela.po$mean == ".", ".", dist.pct.po.2) - - - # Barvanje vrednosti - dist.pct.po.1 <- ifelse(dist.pct.po.1 != "." & dist.pct.po.1 >= 20, paste('{\\color{Orange}\\textbf{', dist.pct.po.1, '}}'), dist.pct.po.1) - dist.pct.po.2 <- ifelse(dist.pct.po.2 != "." & dist.pct.po.2 <= 50, paste('{\\color{Orange}\\textbf{', dist.pct.po.2, '}}'), dist.pct.po.2) - ## /Porazdelitev delei / ## - - # Cbind for latex table purposes - tabela.po.pct <- qpcR:::cbind.na(tabela.po, dist.pct.po.1, dist.pct.po.2) - - - # tevilo odgovorov fakultete na spremenljivke ankete PRED IZPITOM - dist.po.fakulteta <- subset(data.predmeti.po, veljavna) - - dist.po.f <- - t(sapply(dist.po.fakulteta[, vars.predmet$cont$po[-1]], - function(x) - table(factor(x, levels = someMiss.po)))) - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - dist.pct.F.po.1 <- round((rowSums(dist.po.f[,1:2], na.rm = TRUE))/ (rowSums(dist.po.f, na.rm = TRUE)) * 100, 0) - dist.pct.F.po.2 <- round((rowSums(dist.po.f[,4:5], na.rm = TRUE)) / (rowSums(dist.po.f, na.rm = TRUE)) * 100, 0) - - dist.pct.F.po.1 <- ifelse(dist.pct.F.po.1 >= 20, paste('{\\color{Orange}\\textbf{', dist.pct.F.po.1, '}}'), dist.pct.F.po.1) - dist.pct.F.po.2 <- ifelse(dist.pct.F.po.2 <= 50, paste('{\\color{Orange}\\textbf{', dist.pct.F.po.2, '}}'), dist.pct.F.po.2) - # Combine - tabela.po.pct <- qpcR:::cbind.na(tabela.po.pct, dist.pct.F.po.1, dist.pct.F.po.2) - # /Porazdelitev delei/# - - # Select columns for Latex table pruposes - tabela.po.pct <- - subset( - tabela.po.pct, - select = c( - N, # Number of answers for each component in ANKETA PRED - mean, # Lecturers course mean for each component in ANKETA PRED - dist.pct.po.1, # Percentage of course answers for each component (frequnecy 1 and 2) - dist.pct.po.2, # Percentage of course answers for each component (frequnecy 4 and 5) - Fmean, # Faculty course mean for each component in ANKETA PRED - dist.pct.F.po.1, # Percentage of faculty answers with frequnecy 1 and 2 - dist.pct.F.po.2 # Percentage of faculty answers with frequnecy 1 and 2 - ) - ) - - # Pri N (tevilu anket) le te v vrstici "Skupaj" - # nadomestimo z NA da se to en prikae v Latex tabeli - tabela.po.pct[nrow(tabela.po.pct), c(1, 3, 4)] <- NA - - # Add rownames for latex table purposes - rownames(tabela.po.pct) <- - c(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$po[-1]]), - '\\hline\n\\textbf{Skupaj}') - # Add aslo colnames - colnames(tabela.po.pct) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.po.tex <- capture.output(Hmisc::latex(toLatex(tabela.po.pct), - caption = "Povpreja in delei kategorij odgovorov - za komponente \\textbf{predmeta} - (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(4, 3), - col.just = rep_len('c', ncol(tabela.po.pct)), - rowlabel.just = 'p{7cm}', - insert.bottom = opomba)) - - - - ################################# - # -- TABELA: Frekvenna porazdelitev odgovorov za komponente predmeta (anketi PRED in PO izpitu) --- # - - ## podrobna porazdelitev ocen za ANKETO PRED IN PO ## - # Get data - dist.course <- rbind(dist.pred, dist.po) - # We also want to have the number of all answers for each component - # And also add Sd, min and max - dist.course <- cbind(dist.course, tabela.cont[c("N", "sd", "min", "max")]) - # Shorten colnames for latex table purposes - colnames(dist.course)[colnames(dist.course) == "Ne elim odgovoriti"] <- "Ne elim odg." - colnames(dist.course)[colnames(dist.course) == "Nimam dovolj informacij"] <- "Nimam informacij" - - if (any(is.na(dist.course))) { - opomba.dist <- - paste( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - - \\newline * Komponente ankete PO izpitu so oznaene z zvezdico.}}" - ) - } else { - opomba.dist <- - paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}" - ) - } - # IF the number of answers is less than 4 we do not show values - dist.course[dist.course$N < 4,] <- "." - # Tidy data - dist.course[8:9] <- formatval(dist.course[8:9]) - # Rownames of components ANKETA PRED in ANKETA PO - rownames(dist.course) <- - c( - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), # Komponente anekte PRED - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]) # Komponente ankete PO - ) - - # a line seperating questions before/after exam - rownames(dist.course)[ rownames(dist.course) == "Vsebine"] <- "\\hline\nVsebine" - - #ankete po izpitu oznaimo/loimo z zvedzico - rownames(dist.course)[8:10] <- paste0(rownames(dist.course)[8:10], "*") - - # Colnames for Latex tables - colnames(dist.course) <- - c( - "\\textbf{1}", - "\\textbf{2}", - "\\textbf{3}", - "\\textbf{4}", - "\\textbf{5}", - "\\textbf{Ne elim odg.}", - "\\textbf{Nimam informacij}", - "\\textbf{Skupaj}", - "\\textbf{Sd}", - "\\textbf{Min}", - "\\textbf{Max}" - ) - - # Compile latex table - distribution.tex <- capture.output(Hmisc::latex(dist.course, - caption = 'Frekvenna porazdelitev odgovorov za - komponente \\textbf{predmeta} - (anketi PRED in PO* izpitu)', - rowlabel = '\\textbf{Komponente}', - file = '', - where = 'H', - col.just = rep_len("c", ncol(dist.course)), - insert.bottom = opomba.dist)) - ## /podrobna porazdelitev ocen/ ## - # Add "fotnote" below radar chart pocture - pojasnilo.radar <- - paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}") - - # Create content - part$predmet[[predmet]]$cont <- c( - tabela.pred.tex, - tabela.po.tex, - "\\begin{figure}[H]", - "\\caption{Povprene ocene komponent \\textbf{predmeta} (anketi PRED in PO* izpitu)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_cont.pdf}}" - ), - "\\end{figure}", - pojasnilo.radar, - distribution.tex - ) - - ## /tEVILSKE/ ## - - - - ## PORABLJENO tEVILO UT (USTREZNOST KT) ## - krediti <- cbind.data.frame( - n = as.numeric(pr.po.tmp[paste0("krediti_razporejanje_n_", 1:5)]), - "\\hfill%" = as.numeric(pr.po.tmp[paste0("krediti_razporejanje_pct_", 1:5)]), - "\\hfill%" = as.numeric(F.avg.KT.likert) - ) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - # barplot # - CairoPDF( paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_krediti.pdf"), - family='sans', pointsize=9, width=6, height=4.5) - par(mar = (c(4, 5, 4, 5) + 0.1), - mgp = c(3, min(2, max(1, 0)), 0), - xpd = TRUE) - barplot( - t(krediti[, 2:3]), - beside = TRUE, - col = c('firebrick3', 'dodgerblue3'), - names.arg = as.character(unlist(vars.predmet$krediti$labele.graf)), - ylim = c(0, 100), - cex.names = 0.9, - las = 1, - axis.lty = 1 - ) - abline(h = 0, xpd = FALSE, col = 'black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', - line = 1.25, - cex = 0.9, - adj = 0) - legend( - 'topright', - inset = c(-0.15,-0.05), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - fill = c('firebrick3', 'dodgerblue3'), - bty = 'n' - ) # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - - if (nrow(pr.po.tmp) > 0){ - if (pr.po.tmp$predmet.ocena.krediti_N < minEnot) { - opomba <- - '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** {\\color{Orange}\\textbf{Oranno}} so oznaena opazna - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja - (pod {\\color{BrickRed}\\textbf{2.3}} in nad {\\color{BrickRed}\\textbf{3.6}}). - so oznaena odstopanja (pod {\\color{BrickRed}\\textbf{2.4}} in nad {\\color{BrickRed}\\textbf{(3.6)}}).}}' - } else { - opomba <- - '{\\footnotesize \\textit{ ** {\\color{Orange}\\textbf{Oranno}} so oznaena opazna - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja - (pod {\\color{BrickRed}\\textbf{2.3}} in nad {\\color{BrickRed}\\textbf{3.6}}). - so oznaena odstopanja (pod {\\color{BrickRed}\\textbf{2.4}} in nad {\\color{BrickRed}\\textbf{(3.6)}}).}}' - } - } - - krediti <- rbind(krediti, c(pr.po.tmp$predmet.ocena.krediti_N, colSums(krediti[,2:3]))) - # Also manually round second and third column for latex table purposes - krediti[,2:3] <- round(krediti[,2:3]) - # Preverimo ali je tevilo odgovorov manje od 4. V tem primeru vrednosti en prikaemo - krediti[,2] <- ifelse(krediti$n < 4, ".", krediti[,2]) - # Add parenthesis for first column if neccessary (Number of answers) - krediti <- formatval(krediti) - - #K Deleem v tabeli dodatmo Povpreje predmeta in Povpreje celotne fakultete - # Povpreja obarvamo gled ena poglavje Metodoloko pojasnilo - # Course mean - krediti.m <- kt.vect.col(pr.po.tmp$predmet.ocena.krediti_mean) - # Faculty mean - krediti.m.f <- kt.vect.col(F.avg.KT) - # Course sd - cr.sd <- - ifelse(is.na(round(pr.po.tmp$predmet.ocena.krediti_sd, 1)), - ".", - round(pr.po.tmp$predmet.ocena.krediti_sd, 1)) - # Faculty sd - F.sd <- round(as.numeric(F.avg.sd.KT) ,1) - - # Tidy data for latex table - krediti.m <- - c('', - paste0('\\textit{', krediti.m, "}"), - paste0('\\textit{', krediti.m.f, "}")) - #ter standardni odklon predmeta in standardni odklon celotne fakultete - krediti.sd <- - c('', - paste0( - '\\textit{', - cr.sd, - "}" - ), - paste0('\\textit{',F.sd, '}')) - - # Add averages and standrad deviation - krediti <- rbind(krediti, krediti.m, krediti.sd) - # Rownames - rownames(krediti) <- - c( - as.character(unlist(vars.predmet$krediti$labele)), - '\\hline\n\\textbf{Skupaj}', - '\\hline\\hline\n\\textit{Povpreje}', - '\n\\textit{Standardni odklon}' - ) - # Compile latex table - krediti.tex <- capture.output(Hmisc::latex(krediti, - caption = "Frekvenna porazdelitev za oceno - ustreznosti tevila porabljenih ur (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(2, 1), - col.just = strsplit("crr", "")[[1]], - insert.bottom = "")) - # Create content - part$predmet[[predmet]]$krediti <- c("\\subsubsection{\\Large tevilo porabljenih ur (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright Ocenite, ali ste za - predmet porabili od (min - max) ur, kot je za ta - predmet predvideno v tudijskem programu (25-30 ur tudentove - obremenitve = 1 ECTS; ki vkljuuje predavanja, vaje, seminar itd. - in vse oblike samostojnega dela)\\guillemotleft", - krediti.tex, #as.character(vars.predmet$krediti$ime.dolgo), - "\\begin{figure}[H]", - paste0("\\caption{Frekvenna porazdelitev za oceno - usterznosti tevila porabljenih ur (anketa PO izpitu)}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_krediti.pdf}}"), - "\\end{figure}") - - ## //PORABLJENI tEVILO UT (USTREZNOST KT)// ## - - - ## KOMPETENCE ## - kompetence <- - cbind.data.frame( - n = as.numeric(pr.po.tmp[paste0("kompetence1_razporejanje_n_", 1:5)]), - "\\hfill%" = as.numeric(pr.po.tmp[paste0("kompetence1_razporejanje_pct_", 1:5)]), - "\\hfill%" = as.numeric(F.avg.kom.likert) - ) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - - - # barplot # - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_kompetence1.pdf"), - family='sans', pointsize=9, width=6, height=4.5) - par(mar = (c(4, 5, 4, 5) + 0.1), - mgp = c(3, min(2, max(1, 0)), 0), - xpd = TRUE) - barplot( - t(kompetence[, 2:3]), - beside = TRUE, - col = c('firebrick3', 'dodgerblue3'), - names.arg = as.character(unlist(vars.predmet$kompetence$labele.graf)), - ylim = c(0, 100), - cex.names = 0.9, - las = 1, - axis.lty = 1 - ) - abline(h = 0, xpd = FALSE, col = 'black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', - line = 1.25, - cex = 0.9, - adj = 0) - legend( - 'topright', - inset = c(-0.15,-0.05), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - fill = c('firebrick3', 'dodgerblue3'), - bty = 'n' - ) # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - if (nrow(pr.po.tmp) > 0){ - if (pr.po.tmp$predmet.ocena.kompetence_N < minEnot) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja {\\color{Orange}\\textbf{(2.4-2.6)}} - in {\\color{Orange}\\textbf{(3.4-3.6)}}, {\\color{BrickRed}\\textbf{rdee}} pa odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}})."}}' - } else { - opomba <- '{\\footnotesize \\textit{** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja {\\color{Orange}\\textbf{(2.4-2.6)}} - in {\\color{Orange}\\textbf{(3.4-3.6)}}, {\\color{BrickRed}\\textbf{rdee}} pa odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}})."}}' - } - } - - kompetence <- rbind(kompetence, c(pr.po.tmp$predmet.ocena.kompetence_N, colSums(kompetence[,2:3]))) - # Also manually round second and third column for latex table purposes - kompetence[,2:3] <- round(kompetence[,2:3]) - # Preverimo ali je tevilo odgovorov manje od 4. V tem primeru vrednosti en prikaemo - kompetence[,2] <- ifelse(kompetence$n < 4, ".", kompetence[,2]) - # Add parenthesis for first column if neccessary (Number of answers) - kompetence <- formatval(kompetence) - - # Povpreja obarvamo gled ena poglavje Metodoloko pojasnilo - # Course mean - komp.m <- formatval(data.frame(mean = pr.po.tmp$predmet.ocena.kompetence_mean))[[1]] - # Faculty mean - komp.m.f <- formatval(data.frame(mean = F.avg.kom))[[1]] - # Course sd - kom.sd <- - ifelse(is.na(round(pr.po.tmp$predmet.ocena.kompetence_sd, 1)), - ".", - round(pr.po.tmp$predmet.ocena.kompetence_sd, 1)) - # Faculty sd - Fcom.sd <- round(as.numeric(F.avg.sd.kom) ,1) - # Tidy data for latex table - komp.m <- - c('', - paste0('\\textit{', komp.m, "}"), - paste0('\\textit{', komp.m.f, "}")) - - #Dodatna linija za STANDARDNI ODKLON predmeta in STANDARDNI ODKLON fakultete - komp.sd <- - c('', - paste0( - '\\textit{', - kom.sd , - "}" - ), - paste0('\\textit{',Fcom.sd, '}')) - - # Combine data - kompetence <- rbind(kompetence, komp.m, komp.sd) - - # Rownames for latex tables purposes - rownames(kompetence) <- - c( - as.character(unlist(vars.predmet$kompetence$labele)), - '\\hline\n\\textbf{Skupaj}', - '\\hline\\hline\n\\textit{Povpreje}', - '\n\\textit{Standardni odklon}' - ) - # Compile latex table - kompetence.tex <- capture.output(Hmisc::latex(kompetence, - caption = "Frekvenna porazdelitev za - oceno pridobljenih kompetenc - (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(2, 1), - col.just = strsplit("crr", "")[[1]], - insert.bottom = "")) - - # Content - part$predmet[[predmet]]$kompetence <- c("\\subsubsection{\\Large Kompetence (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright V kolikni meri ste pri predmetu - pridobili priakovane \\textbf{kompetence}\\guillemotleft ", - kompetence.tex, - "\\begin{figure}[H]", - paste0("\\caption{Frekvenna porazdelitev za oceno pridobljenih kompetenc (anketa PO izpitu)}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_kompetence1.pdf}}"), - "\\end{figure}") - ## //KOMPETENCE// ## - - - ## Izpis: ODGOVORI NA ODPRTA VPRAANJA ANKETA PRED IN PO - # Komentar dobro, Komentar slabo == ANKETA PRED IZPITOM - # Komentar pridobljene kompetence == ANKETA PO IZPITU - - # Tidy data - # ANKETA PRED - data.text.pred <- - lapply(data.pred.tmp[c( - "predmet.komentar.dobro", - "predmet.komentar.slabo")], trim) - #ANKETA PO - data.text.po <- - lapply(data.po.tmp["predmet.komentar.kompetence.pojasnilo"], trim) - - # Append all comments - data.text <- append(data.text.pred, data.text.po) - - for (textvar in names(data.text)) { - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- - gsub(pattern = '\\\\', - replacement = '!backslash!', - x = data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - # Coements will be shown as items (itemization) - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { - # e je kaken komentar - komentarji <- - reports::LL( - text = Hmisc::latexTranslate(komentarji), - copy2clip = FALSE, - enumerate = FALSE - ) - komentarji <- - gsub(pattern = '!backslash!', - replacement = '\\\\textbackslash ', - x = komentarji) - tex.text <- - append(tex.text, append( - paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep = ''), - komentarji - )) - } else { - tex.text <- - append( - tex.text, - append( - paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep = ''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ' - ) - ) - } - } - - part$predmet[[predmet]]$text <- tex.text - - ## //TEKSTOVNE// ## - - # e indeks predmetov - predmeti[[predmet]] <- - list(izvajalci = izvajalci.predmeta, - ime.datoteke = paste('predmet_', predmet, '.pdf', sep = '')) #!preveri!, ime=ime.predmeta - - - #------- POGLAVJE: ANALIZA PREDMETA PO PROGRAMIH IN LETNIKIH ---------# - # Anketa PRED - # Get data from which program did the greades for the course come from - predBySmer.df <- subset(povprecja.predmeti.programi.brez.cenzure, - predmet.sifra == predmet & N_anket > 0)[c( - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - paste0(vars.predmet$cont$pred, "_N"), - "program.studentov.ime" - )] - - # Prepare data and create latex table (see custom function "pro.let.c") - predBySmerpred <- pro.let.c(predBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.pred, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.pred," - predmetov)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} \\guillemotright" , imepredmeta, - "\\guillemotleft \\ glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)" - ) - ), # Fifth argument is Latex Table caption - "PRED", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ))) - - - # Anketa PO - poBySmer.df <- - subset( - povprecja.predmeti.programi.PO.brez.cenzure.PO, - predmet.sifra == predmet & N_anket > 0 - )[c("N_anket", - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_mean"), - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_N"), - "program.studentov.ime")] - - - # prepare data and create latex table: Povprene ocene komponent predmeta gled ena tudijski program vpisanih tudentov (Anketa PO izpitu) - predBySmerpo <- pro.let.c(poBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.po, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.po," - predmetov)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} glede na tudijski program** vpisanih tudentov (anketa PO izpitu)" - ) - ), # Fifth argument is Latex Table caption - "PO", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$po])[-1], - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT***" - ))) - - - # Anketa PRED (letnik tudentov) - predByLetnik.df <- - subset(povprecja.predmeti.letniki.brez.cenzure, - predmet.sifra == predmet & N_anket > 0)[c( - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - paste0(vars.predmet$cont$pred, "_N"), - "letnik.studentov" - )] - - - # Latex table: Povprene ocene komponent predmeta po letniku tudentov (anketa PRED izpitom) - predByLetnikpred <- pro.let.c(predByLetnik.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.pred, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.pred," - izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PRED izpitom)" - ) - ), # Fifth argument is Latex Table caption - "PRED", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = TRUE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ))) - - - # Anketa PO (letnik tudentov) - poByLetnik.df <- subset( - povprecja.predmeti.letniki.PO.brez.cenzure.PO, - predmet.sifra == predmet & N_anket > 0 - )[c("N_anket", - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_mean"), - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_N"), - "letnik.studentov")] - - # Povprene ocene komponent predmeta po letniku tudentov (anketa PO izpitu) - predByLetnikpo <- pro.let.c(poByLetnik.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.po, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PO izpitu)" - ) - ), # Fifth argument is Latex Table caption - "PO", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = TRUE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$po])[-1], - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT***" - ))) - - - - # quantiles: Kvantilni rangi za povprene ocene komponent predmeta glede na vse predmete tudijskega programa, - # v katerega so vpisani tudenti (anketa PRED izpitom) - - # ANKEA PRED IZPITOM - progs <- rownames(predBySmerpred$tabela[predBySmerpred$tabela$N_anket >= minEnot,]) - - predmetBySmerProgrami <- - subset( - kvantili.predmeti.programi, - predmet.sifra == unique(as.character(predmet)) & - program.studentov.ime %in% progs - ) - - if (nrow(predmetBySmerProgrami) > 0) { - progpred.tmp <- - povprecja.predmeti.programi[povprecja.predmeti.programi$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - progpred.tmp <- - aggregate(progpred.tmp$predmet.sifra, by = progpred.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - - predmetBySmerProgrami <- - merge( - predmetBySmerProgrami, - progpred.tmp[c("x","program.studentov")], - by = "program.studentov", - all.x= TRUE - ) - - # Sort data by number of courses in each progrem (column "x") in decreasign order - predmetBySmerProgrami <- - predmetBySmerProgrami[order(predmetBySmerProgrami$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(predmetBySmerProgrami) <- - make.unique(as.character(predmetBySmerProgrami$program.studentov.ime)) - - # Tidy daata for Latex tables - predmetBySmerProgrami <- - predmetBySmerProgrami[c( - "x", - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - # Imena Stolpcev - colnames(predmetBySmerProgrami) <- latex.rotate(c("t. predmetov*","t. odgovorov**", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}")) - - # Compile Latex table - predmetBySmerProgrami.tex <- capture.output(Hmisc::latex(predmetBySmerProgrami, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa, v katerega - so vpisani tudenti (anketa PRED izpitom)" - ), - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{10cm}", - insert.bottom = kvan.pojas1, - multicol = FALSE, - col.just = c("c|", "c|", rep_len("c", length( vars.predmet$cont$pred)), "|c"), - rowname = Hmisc::latexTranslate(rownames(predmetBySmerProgrami)))) - - } else { - predmetBySmerProgrami.tex <- NULL - } - - - # ANKEA PO IZPITU - progs.po <- rownames(predBySmerpo$tabela[predBySmerpo$tabela$N_anket >= minEnot,]) - - predmetBySmerProgramipo <- - subset( - kvantili.predmeti.programi.PO, - predmet.sifra == unique(as.character(predmet)) & - program.studentov.ime %in% progs.po - ) - - if (nrow(predmetBySmerProgramipo) > 0) { - progpo.tmp <- - povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - progpo.tmp <- - aggregate(progpo.tmp$predmet.sifra, by = progpo.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - - predmetBySmerProgramipo <- - merge( - predmetBySmerProgramipo, - progpo.tmp[c("x","program.studentov")], - by = "program.studentov", - all.x= TRUE - ) - - # Sort data by number of courses in each progrem (column "x") in decreasign order - predmetBySmerProgramipo <- - predmetBySmerProgramipo[order(predmetBySmerProgramipo$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(predmetBySmerProgramipo) <- - make.unique(as.character(predmetBySmerProgramipo$program.studentov.ime)) - - # Tidy daata for Latex tables - predmetBySmerProgramipo <- - predmetBySmerProgramipo[c( - "x", - "N_anket", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - # Imena Stolpcev - colnames(predmetBySmerProgramipo) <- latex.rotate(c("t. predmetov***","t. odgovorov*", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT**" - )) - - - # Pojasnilo oz. opomba pod Latex tabelo - kvan.int <- c(paste0("{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je - kvantilni rang za odgovarjajoe vrednosti, vendar ni obarvan, saj gre za administrativni podatek. - \\newline ** Kvantilni rang ", predmetBySmerProgramipo[1,8]," pomeni, da je ", - paste0(predmetBySmerProgramipo[1,8], "\\%")," vseh ocenjenih predmetov zahtevalo - nije tevilo ur glede na tevilo kreditnih tok.\\newline *** Gre za vse predmete z vsaj 4 odgovori - (tudi predmete drugih programov, e so bili izbirni), ki so jih vpisali ttudenti doloenega programa.}}")) - - # Compile Latex table - predmetBySmerProgramipo.tex <- capture.output(Hmisc::latex(predmetBySmerProgramipo, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa, v katerega - so vpisani tudenti (anketa PO izpitu)" - ), - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{10cm}", - insert.bottom = kvan.int, - multicol = FALSE, - col.just = c("c|", "c|", rep_len("c", length( vars.predmet$cont$po[-1])), "|c|", "c", "c"), - rowname = Hmisc::latexTranslate(rownames(predmetBySmerProgramipo)))) - - } else { - predmetBySmerProgramipo.tex <- NULL - } - - - - - part$predmet[[predmet]]$BySmerLetnik <- - c( - "\\setlength{\\tabcolsep}{3pt}", - predBySmerpred$tex, - predmetBySmerProgrami.tex, - predBySmerpo$tex, - predmetBySmerProgramipo.tex, - predByLetnikpred$tex, - predByLetnikpo$tex, - "\\setlength{\\tabcolsep}{6pt}" - ) - - - } else { # e ni dovolj enot - part$predmet[[predmet]]$pojasniloPremaloEnot <- '- Zaradi prenizkega tevila odgovorov analiza predmeta ni bila narejena. -' - } - ## //analiza predmeta po smereh in letnikih tudentov// ## - - - - - # skupne tabele za predmete (POVZETKI) ## - FDVmeans_Izvajalec9_BDorBP <- c(Fizv["skupaj", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - F.avg.izv) - - FDVmeansPredmet_BDorBPpred <- c(Fpred["skupaj",c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - F.avg.pred[c(paste0(vars.predmet$cont$pred,"_mean"), "predmet.ocena.SKUPAJ")]) - - FDVmeansPredmet_BDorBPpo <- c(Fpo["skupaj",c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct")], - F.avg.po[c(paste0(vars.predmet$cont$po,"_mean"), "predmet.ocena.SKUPAJ")], - F.avg.po["predmet.ocena.krediti_mean"]) - - - ## - # povzetek izvajalcev predmeta - povzIzv <- - povprecja.izvajalci[povprecja.izvajalci$predmet.sifra == predmet, c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - imenaIzv <- povprecja.izvajalci[povprecja.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - meansI <- subset(povprecja.predmet.izvajalci.skupaj, predmet.sifra==predmet)[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - if (sum(is.na(povzIzv)) > 0) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaI <- NULL} - povzIzv <- rbind(povzIzv, meansI, FDVmeans_Izvajalec9_BDorBP) - - povzIzv <- formatval(povzIzv) - rownames(povzIzv) <- c(Hmisc::latexTranslate(imenaIzv), "\\hline \\textbf{Povpreje izvajalcev predmeta}", paste("\\hline \\textbf{Povpreje izvajalcev", fakulteta, "(po vseh izvedbah)}")) - colnames(povzIzv) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - tex.povzIzv <- capture.output(Hmisc::latex(povzIzv, caption="Povprene ocene komponent pedagokega dela izvajalcev (anketa PRED izpitom)", rowlabel="", file="", where="H", multicol=FALSE, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{8.9cm}", insert.bottom=opombaI)) - - - povzPredmPRED <- rbind(pr.pred.tmp[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")], unlist(FDVmeansPredmet_BDorBPpred)) - povzPredmPO <- rbind(pr.po.tmp[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.krediti_mean")], unlist(FDVmeansPredmet_BDorBPpo)) - - if (any(is.na(povzPredmPRED))) {opombaPpred <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpred <- NULL} - if (any(is.na(povzPredmPO)) | nrow(povzPredmPO) < 2) {opombaPpo <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpo <- NULL} - - - povzPredmPRED <- formatval(povzPredmPRED) - # Preverimo ali je predmet v bazi ANKETE PO - if (nrow(povzPredmPO) > 1) { - povzPredmPO <- formatval(povzPredmPO, KT = TRUE) - } else { - povzPredmPO <- - rbind(cbind(round(povzPredmPO[1:5], 0), round(povzPredmPO[6:ncol(povzPredmPO)], 1)), - cbind(round(povzPredmPO[1:5], 0), round(povzPredmPO[6:ncol(povzPredmPO)], 1))) - colnames(povzPredmPO) <- - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - ) - povzPredmPO <- formatval(povzPredmPO, KT = TRUE) - - povzPredmPO[1,] <- "--" - opombaPpo <- "{\\footnotesize \\textit{-- Predmet nima odgovorov.}}" - } - - rownames(povzPredmPRED) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', pr.pred.tmp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.pred," predmetov)}"))) - rownames(povzPredmPO) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', pr.pred.tmp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," predmetov)}"))) - colnames(povzPredmPRED) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - colnames(povzPredmPO) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - - - povzPredmPO <- povzPredmPO[c(1,2,3,4,5,7,8,9,10,6,11)] - tex.povzPredmPRED <- c(capture.output(Hmisc::latex(povzPredmPRED, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PRED izpitom)', rowlabel='', file='', where='H', multicol=FALSE, - col.just=c(rep_len('c',1),'c|','c','c','c|',rep_len('c', length(vars.predmet$cont$pred)),'|c'), rowlabel.just='p{7.7cm}', insert.bottom=opombaPpred))) - - tex.povzPredmPO <- c(capture.output(Hmisc::latex(povzPredmPO, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PO izpitu)', rowlabel='', file='', where='H', multicol=FALSE, - col.just=c(rep_len("c",1),"c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), rowlabel.just='p{8.9cm}', insert.bottom=opombaPpo))) - - - part$predmet[[predmet]]$povzetek <- c("\\chapter{Povzetek predmetov}",paste("Prikazana so povpreja za ocene komponent predmetov na lestvici 1-5 - za vse predmete izvajalca z vsaj 4 odgovori. - Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno}}, - povpreja pod 3.0 pa {\\color{BrickRed}\\textbf{rdee}}. - Nizko tevilo enot in neugodne stopnje sodelovanja so oznaene - z enojnim () oziroma z dvojnim oklepajem (()). - Podrobnosti so na \\url{http://ul.1ka.si/metodologija}, - kjer se nahajajo tudi vpraalniki."), - tex.povzPredmPRED, tex.povzPredmPO) - ## //skupne tabele za predmete (povzetki)// ## - - - ## kvantili ## - kvantili.izvajalcev.predmeta <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - imenaIzv <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - - - if (any(kvantili.izvajalcev.predmeta == ".")) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.1, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.}"} else {opombaI <- pojas} - rownames(kvantili.izvajalcev.predmeta) <- Hmisc::latexTranslate(imenaIzv) - colnames(kvantili.izvajalcev.predmeta) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - - tex.kvantili.izvajalcev.predmeta <- capture.output(Hmisc::latex(kvantili.izvajalcev.predmeta, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{izvajalcev pri predmetih} - anketa PRED izpitom (med skupno", kvantili.izvajalci.st, "izvedbami)"), rowlabel="", file="", where="H", multicol=FALSE, - col.just=c("c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{10cm}", insert.bottom=opombaI)) - - - - - kvantili.predmeta.pred <- kvantili.predmeti[kvantili.predmeti$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")] - - - int.predmetPRED <- - c( - paste0( - "{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.1, \n vendar niso dodatno obarvani, saj gre za administrativne podatke. Kvantilni rang ", - kvantili.predmeta.pred[1, 1], - " za predmet \\guillemotright ", - subset(pr.pred.tmp, predmet.sifra == predmet)$PREDMET, - "\\guillemotleft \\ pomeni, da je imelo ", - paste0(kvantili.predmeta.pred[1, 1], "\\%"), - " predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", - paste0(povzPredmPRED[1, 1]), - " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", - kvantili.predmeta.pred[1, 11], - " (\\textbf{Skupaj}), pomeni \nda je ", - paste0(kvantili.predmeta.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - round( - subset(pr.pred.tmp, predmet.sifra == predmet)$predmet.ocena.SKUPAJ, - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - - - if (any(kvantili.predmeta.pred == ".")) {opombaPpred <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.2, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.\\newline **Kvantilni rang ", kvantili.predmeta.pred[1,1]," za predmet \\guillemotright ", gsub("_", "\\_", rownames(kvantili.predmeta.pred)[1], fixed = TRUE),"\\guillemotleft \\ pomeni, da je imelo ", paste0(kvantili.predmeta.pred[1,1], "\\%")," predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", paste0(kvantili.predmeta.pred[1,1]), " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", kvantili.predmeta.pred[1,11], " (\\textbf{Skupaj}), pomeni \nda je ", paste0(kvantili.predmeta.pred[1,11], "\\%"), " od ",kvantili.predmeti.st.pred," predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", round(subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1],digits=1), " (\\textbf{Skupaj}) v tabeli 1.1.}"))} else {opombaPpred <- int.predmetPRED} - rownames(kvantili.predmeta.pred) <- Hmisc::latexTranslate(paste0(gsub("izredna izvedba", "I", pr.pred.tmp$ime.predmeta))) - colnames(kvantili.predmeta.pred) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - tex.kvantili.predmeta.pred <- c(capture.output(Hmisc::latex(kvantili.predmeta.pred, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", kvantili.predmeti.st.pred, "predmeti (anketa PRED izpitom)"), rowlabel="", file="", where="H", multicol=FALSE, - col.just=c("c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="p{9cm}", insert.bottom=opombaPpred))) - - - - kvantili.predmeta.po <- - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra == predmet, c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - - if(nrow(kvantili.predmeta.po) > 0) { - int.predmetPO <- - c( - paste0( - "{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.2, \n vendar niso dodatno obarvani, - saj gre za administrativne podatke.\\newline ** Kvantilni rang ", - kvantili.predmeta.po[1, 8], - " (\\textbf{Skupaj}), pomeni \nda je ", - paste0(kvantili.predmeta.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - round( - subset(pr.po.tmp, predmet.sifra == predmet)$predmet.ocena.SKUPAJ, - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - kvantili.predmeta.po[1, 9], - " (\\textbf{Ustreznost KT}) pomeni, da je ", - paste0(kvantili.predmeta.po[1, 9], "\\%"), - " vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}}" - ) - ) - if (any(kvantili.predmeta.po == ".")) { - opombaPpo <- c( - paste0( - "{\\footnotesize \\textit{. Podatek - ni prikazan zaradi premajhnega tevila enot.} - \\newline * Tudi vrednosti za - \\guillemotright t.vpisanih\\guillemotleft \\, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.3, \n - vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, - saj gre za administrativne podatke.\\newline ** Kvantilni rang ", - kvantili.predmeta.po[1, 8], - " (\\textbf{Skupaj}), pomeni \nda je ", - paste0(kvantili.predmeta.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - kvantili.predmeta.po[1, 9], - " (\\textbf{Ustreznost KT}) pomeni, da je ", - paste0(kvantili.predmeta.po[1, 9], "\\%"), - " vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}" - ) - ) - } - else {opombaPpo <- int.predmetPO} - - rownames(kvantili.predmeta.po ) <- rownames(kvantili.predmeta.pred) - colnames(kvantili.predmeta.po) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko) - ) - ) - - - - kvantili.predmeta.po<-kvantili.predmeta.po[c(1,2,3,5,6,7,8,4,9)] - tex.kvantili.predmeta.po <- - c(capture.output( - Hmisc::latex( - kvantili.predmeta.po, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", - kvantili.predmeti.st.po, - "predmeti (anketa PO izpitu)" - ), - rowlabel = "", - file = "", - where = "H", - multicol = FALSE, - col.just = - c('c', 'c', 'c|', rep_len('c', length( - vars.predmet$cont$po[-1] - )), '|c', '|c', 'c'), - rowlabel.just = "p{10cm}", - insert.bottom = opombaPpo - ) - )) - - } else { - tex.kvantili.predmeta.po <- "Predmet v ANKETI PO ni imel odgovorov zato kvantilni rangi za predmet niso izraunani" - - } - opredelitev.kvantili.predmet<-paste("Kvantilni rangi oznaujejo poloaj predmeta oziroma izvajalca med vsemi - predmeti oziroma izvajalci celotne fakultete.\nZgornja etrtina (75-100) - je obarvana {\\color{Chateau Green}\\textbf{zeleno (pohvalno)}}, zgornja - desetina (90-100) {\\color{Blue Stone}\\textbf{modrozeleno (odlino)}}.\nSpodnja - etrtina (0-25) je obarvana {\\color{Orange}\\textbf{oranno (opozorilno)}}, - spodnja desetina (0-10) {\\color{BrickRed}\\textbf{rdee (kritino)}}. - Podrobnosti so na \\url{http://ul.1ka.si/metodologija}.") - - - part$predmet[[predmet]]$kvantili <- - c( - "\\newpage", - "\\section{Kvantilni rangi}", - opredelitev.kvantili.predmet, - tex.kvantili.predmeta.pred, - tex.kvantili.predmeta.po - ) - ## //kvantili// ## - } -#------------------------------------------- //PREDMET// ----------------------------------------------# - - -######################################## -#' DATA NEEDED FOR PDF REPORT: @PART III -######################################## -#---------------------------------------------- PRAKSA ------------------------------------------------# -# Zanka, ki generira porocila za vse unikatne sifre izvajalcev, ki so v sifreIzvajalec -izvajalciprakse <- NULL -praksaSifre <- subset(sifrant, PRAKSA == 1) -if (omejeniIzvajalci) { - # Ali naj poroila generira samo za tiste izvajlce, ki smo jih opredelili v navodila_dodatno-UTF-8.r - sifreIzvajalecZaPDF <- - as.character(omejeniIzvajalciSifre) # Kateri so to -} else { - sifreIzvajalecZaPDF <- as.character(names(izvajalci)) -} - -praksaSifrePDF <- unique(subset(praksaSifre, IDPEDAGOGA %in% sifreIzvajalecZaPDF)$IDPEDAGOGA) - -for (izvajalecpraks in praksaSifrePDF) { - # indeks izvajalcev z imeni in predmeti po ifrah izvajalcev - - # izvajalec in Povpreje predmeta / predmetov - izvajalciprakse[[izvajalecpraks]] <- - list(sifra.izv = unique(subset(praksaSifre, IDPEDAGOGA == izvajalecpraks)$IDPEDAGOGA), - praksa = as.character(unique( - subset(praksaSifre, IDPEDAGOGA == izvajalecpraks)$IDP - ))) -} - - -if (omejeniIzvajalci) { - sifrepraks <- - as.character(unique(praksaSifre$IDP[praksaSifre$IDPEDAGOGA %in% praksaSifrePDF])) -} else { - sifrepraks <- as.character(unique(praksaSifre$IDP)) -} - - -for (praksa in sifrepraks){ - - povprecja.predmet.praksa <- - subset(povprecja.predmeti.po, predmet.sifra == praksa) - - - # Anketa PO - data.praksa.tmp <- subset(data.predmeti.po, predmet.sifra == praksa & veljavna) - - if(nrow(povprecja.predmet.praksa) > 0) { - data.predmet.temp <- - subset(data.predmeti, - predmet.sifra == praksa & veljavna) - - #kdo so izvajalci predmeta - izvajalci.predmeta <- - unique(subset(praksaSifre, IDP == praksa)$IDPEDAGOGA) - - if (omejeniIzvajalci) { - izvajalci.predmeta <- - izvajalci.predmeta[izvajalci.predmeta %in% praksaSifrePDF] - } - - ## stopnja sodelovanja ## - sodelujocih <- povprecja.predmet.praksa$N_anket - stopnjaPredmeta <- povprecja.predmet.praksa$STOPNJA - if (stopnjaPredmeta==1) { - FDVstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - FDVstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', povprecja.predmet.praksa$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - FDVstring <- '' - } - imepredmeta <- sub("^BD |^BP ", "", povprecja.predmet.praksa$ime.predmeta) # ime brez BD/BP predpone - imepredmeta <- gsub('_', '\\_', imepredmeta, fixed=T) # pravilni izpis podrtaja v pdf izpisu "_" - imepredmeta <- gsub('&', '\\&', imepredmeta, fixed=T) # pravilni izpis in v pdg izpisu "&" - - if(povprecja.predmet.praksa$PRAKSA==1) { #e je predmet imel tudijsko prakso naredi proroilo, sicer ne. - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) -ANKETA PO IZPITU - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",praksa,"_response_po_izpitu_praksa.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.po <- cbind(c(povprecja.predmet.praksa$sodelujocih.pct, - povprecja.predmet.praksa$zavrnjenih.pct, - povprecja.predmet.praksa$neodzivnih.pct), - c(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"], - Fpo[as.character(stopnjaPredmeta),"zavrnjenih.pct"], - Fpo[as.character(stopnjaPredmeta),"neodzivnih.pct"])) - - ## Get the y-values for text - ys.po <- apply(mat.po, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store x data - xs.po <- barplot(mat.po, names.arg=c('Predmet', studijska.praksa), - col=c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim=c(0,100), space=c(0,1)) - - ## Add text - text(rep(xs.po, each=nrow(ys.po)), c(ys.po), labels=paste0(round(c(mat.po), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - ##### - - tex.sodelovanje1 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za - predmet \\guillemotright ", imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", - paste0(povprecja.predmet.praksa$N_anket), " od skupno ", povprecja.predmet.praksa$ST_STUD, - " tudentov, kar je \\textbf{", round(povprecja.predmet.praksa$sodelujocih.pct), "\\%} - vseh vpisanih tudentov. ", "povpreje praks ", fakulteta, " je sicer znaalo - \\textbf{", round(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"]), "\\%}."), - "\\begin{figure}[H]", - "\\caption{Struktura (\\%) tudentov glede na odgovarjanje (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - praksa, "_response_po_izpitu_praksa.pdf}}"), - "\\end{figure}") - izvajalciprakse$predmet[[praksa]]$response1 <- tex.sodelovanje1 - ## /stopnja sodelovanja/ ## - - - tabela.praksa <- cbind.data.frame( - N = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_N")]), - mean = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_mean")]), - sd = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_sd")]), - min = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_min")]), - max = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_max")]) - ) - - povprecja.praksa <- tabela.praksa$mean - - tabela.praksa[is.na(tabela.praksa)] <- "." - - if (min(as.numeric(tabela.praksa$N)) < minEnot) { - opomba <- - '{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot.}}' - } else { - opomba <- "{\\footnotesize {}}" - } - FDVcont.praksa <- - data.frame(F.avg.po[paste0(vars.predmet$cont$praksa, "_mean")]) - colnames(FDVcont.praksa) <- 'Pmean' - tabela.praksa <- cbind(tabela.praksa, FDVcont.praksa) - - - tabela.praksa <- - rbind( - tabela.praksa, - c( - '', - povprecja.predmet.praksa$predmet.ocena.SKUPAJ.praksa, - '', - '', - '', - mean(tabela.praksa$Pmean, na.rm = - TRUE) - ) - ) - - # - tabela.praksa <- formatval(tabela.praksa) - - rownames(tabela.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$praksa])), - '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - colnames(tabela.praksa) <- c('n', 'povpreje', 'sd', 'min', 'max', 'povpreje') - tabela.contR.praksa.tex1 <- capture.output(Hmisc::latex(toLatex(tabela.praksa), - caption="Povprene ocene komponent \\textbf{tudijske prakse} - (anketa PO izpitu)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", studijska.praksa), - n.cgroup=c(5,1), - col.just=rep_len('c', ncol(tabela.praksa)), - rowlabel.just='p{9.5cm}', - insert.bottom=opomba)) - - - ## radar graf ## - if (sum(!is.na(povprecja.praksa)) < 4) {povprecja.praksa <- povprecja.praksa[!is.na(povprecja.praksa)] <-NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(FDVcont.praksa, as.numeric(povprecja.praksa)))), row.names=1:4, check.names=F) - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])) - radar.f<-radar.cont - star.radar2<-as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]) - - colnames(radar.f) <- sub(" ", "\n", star.radar2) - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",praksa,"_cont1.pdf"), - family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) - fmsb::radarchart(radar.f, pcol=c('dodgerblue3','firebrick3'), cglcol='gray75', - plwd=2, plty=1, cglwd=1, cglty=1, seg=4, axistype=1, - caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Predmet", paste(studijska.praksa, "Povpreje")), - col=c('firebrick3', 'dodgerblue3'), - lty=1, lwd=2, bty='n') - dev.off() - ## /radar graf/ ## - - - data.praksa.temp.<- subset(data.po.miss, predmet.sifra==praksa) - # frekvence - dist.praksa <- - t(sapply(data.praksa.temp.[, vars.predmet$cont$praksa], function(x) - table(factor(x, levels = someMiss.po)))) - # samo kjer je dovolj enot - dist.praksa[rowSums(dist.praksa) < minEnot,] <- NA - dist.praksa <- - cbind(dist.praksa, rowSums(dist.praksa, na.rm = TRUE)) - dist.praksa[is.na(dist.praksa)] <- "." - - ##podrobna porazdelitev1 ocen## - rownames(dist.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]))) - colnames(dist.praksa) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}", - "\\textbf{Ne elim odgovoriti}","\\textbf{Nimam dovolj informacij}","\\textbf{Skupaj}") - - porazdelitev1.tex <- capture.output( - Hmisc::latex( - dist.praksa, - caption = 'Frekvenna porazdelitev odgovorov za ocene - komponent \\textbf{tudijske prakse}', - rowlabel = '\\textbf{Komponente}', - file = '', - where = 'H', - col.just = rep_len('c', ncol(dist.praksa)), - insert.bottom = opomba - ) - ) - ## //podrobna porazdelitev1 ocen// ## - - izvajalciprakse$predmet[[praksa]]$cont1 <- porazdelitev1.tex - - - - data.text1 <- lapply(data.praksa.tmp[vars.predmet$text$vars[4]], trim) - for (textvar in names(data.text1)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text1[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text1[[textvar]][!data.text1[[textvar]] %in% junk.komentar]) - } - - tex.text1 <- NULL - for (textvar in names(data.text1)) { - komentarji <- data.text1[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - # komentarji <- gsub(pattern='', replacement='e', x=komentarji) - # komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ')) - } - } - - izvajalciprakse$predmet[[praksa]]$text1 <- tex.text1 - - - studij.praksa <- c( - "\\section{tudijska praksa ",imepredmeta,"}", - izvajalciprakse$predmet[[praksa]]$response1, - "\\section{Ocena tudijske prakse}", - tabela.contR.praksa.tex1, - "\\begin{figure}[H]", - "\\caption{Povprene ocene komponent \\textbf{tudijske prakse} (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - praksa, "_cont1.pdf}}"), - "\\end{figure}",izvajalciprakse$predmet[[praksa]]$cont1, - "\\section{Praksa: Odgovori na odprta vpraanja}",izvajalciprakse$predmet[[praksa]]$text1) - - - izvajalciprakse$predmet[[praksa]]$praksa <- studij.praksa - } else {izvajalciprakse$predmet[[praksa]]$praksa <- NULL - } - - } else{ izvajalciprakse$predmet[[praksa]]$praksa <- NULL - } -} -#-------------------------------------------- //PRAKSA// ----------------------------------------------# - - - - - -################################# -#' COMPILING TEX PARTS: @PART IV -################################# -#----------------------------- SESTAVLJANJE in KOMPILACIJA .tex datotek ------------------------------------------# -#------------------------------------------ IZCAJALEC REPORT --------------------------------------------# -# V Mapi latexkosi so definirane: Glava latex dokumenta, noga latex dokumenta -#encoding='UTF-8' (Ȏ ji) -tex.glava <- scan('Evalvacija/latexkosi/a-glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -# Logo fakultete v PDF poroilu -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) -# V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava) -# Izpis imena leta semestra -tex.glava <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava) -# encoding -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("--","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x = tex.glava) -# Latex noga (end document) -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -# Directory -Rdirektorij <- getwd() - -# List for storing data for TUDIJSKA PRAKSA -tex.praksa <- NULL -studpraksa <- NULL - - -#Ali naj poroila generira samo za tiste izvajalce, ki smo jih opredelili v zacetku kode -# IZBRANI IZVAJALCI ---------------------------------------- -if (omejeniIzvajalci) { - # For which lecturer to geenrate PDF report - sifreIzvajalecZaPDF <- as.character(omejeniIzvajalciSifre) -} else { - # PDf reports should be generated for all lecturers that are in sifrant X1 - # have data in ANKETA PRED or ANKETA PO - sifreIzvajalecZaPDF <- as.character(names(izvajalci)) -} -#-------------- ---------------------------------------- - -# PRAKSA---------------------------------------------- -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - - # LOOP ZA TUDIJSKO PRAKSO - # If Lecturer has PRAKSA - if (izvajalec %in% praksaSifrePDF) { - for (praksa in izvajalciprakse[[izvajalec]]$praksa) { - - tex.praksa[[praksa]] <- izvajalciprakse$predmet[[praksa]]$praksa - studpraksa$predmet[[izvajalec]][[praksa]] <- tex.praksa - } - } else { - tex.praksa <- NULL - } -#------------------------------------------------------ - -#IZVAJALEC PREDMET----------------------------------- - tex.report.izvajalec <- NULL - - for (predmet in izvajalci[[izvajalec]]$predmeti) { - # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot - # (in izvajalci ne morejo imeti vee odg. kot predmet) - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { - - # e ni pojasnila o premalo odg. nadaljuje s sestavljanjem - tex.part.predmet <- - c( - part$predmet[[predmet]]$cont, - "\\newpage", - part$predmet[[predmet]]$krediti, - "\\newpage", - part$predmet[[predmet]]$kompetence, - "\\newpage", - "\\subsubsection{\\Large Analiza predmeta po programih in letnikih}", - part$predmet[[predmet]]$BySmerLetnik, - "\\section{Predmet: Odgovori na odprta vpraanja}", - part$predmet[[predmet]]$text - ) - - # Preverimo ali imamo premalo enot - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo, da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- - c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - } else { - # Drugae nadaljujemo s sestalvjanjem - tex.part.predmet.izvajalec <- - c( - part$izvajalec[[izvajalec]][[predmet]]$cont, - "\\newpage", - "\\subsubsection{\\Large Analiza izvajalca po programih in letnikih}", - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik, - "\\section{Izvajalec: Odgovori na odprta vpraanja}", - part$izvajalec[[izvajalec]][[predmet]]$text - ) - } - - # SOIZVAJALCI --------------------------------------------- - ## e nosilci dobijo tudi ocene soizvajalcev ## - if (nosilci_soizvajalcev) { - # For loop purposes - tex.soizvajalci.predmet <- NULL - - # Preverimo kdo je nosilec, predemta h kateremu - # bomo dodali tudi ocene soizvajalca - nosilec <- - subset(sifrant, IDP == predmet & NOSILEC == "1")$IDPEDAGOGA - # Preverimo ali je Nosilec opredeljen (Nosilci so - # definirani v bazi sifrant X1) - if (!is.null(nosilec) && izvajalec %in% nosilec) { - # Preverimo, kdo so soizvajalci - soizvajalci <- - as.character(predmeti[[predmet]]$izvajalci)[as.character(predmeti[[predmet]]$izvajalci) != izvajalec] - # V primeru, da ima en predmet ve nosilcev, prepreimo, da bi - # nosilec predmeta dobil ocene drugega nosilca predmeta - # (Pravna fakulteta je eden izmed primerov) - soizvajalci <- soizvajalci[!(soizvajalci %in% nosilec)] - # Naredimo loop - for (soizvajalec in soizvajalci) { - if (!is.null(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.soizvajalec <- - c(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot, - "\\newpage") - tex.part.soizvajalecBySmerLetnik <- NULL - } else { - # e imamo podatke nadaljujemo s sestavo poglavja - # za soizvajalca - tex.part.predmet.soizvajalec <- - c('\\textbf{KOMPONENTE PEDAGOKEGA DELA}', - part$izvajalec[[soizvajalec]][[predmet]]$cont) - tex.part.soizvajalecBySmerLetnik <- - c( - '\\textbf{ANALIZA IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH}', - part$izvajalec[[soizvajalec]][[predmet]]$BySmerLetnik, - "\\textbf{ODGOVORI NA ODPRTA VPRAANJA}", - "\\newline", - "\\newline", - part$izvajalec[[soizvajalec]][[predmet]]$text - ) - } - # Ime soizvajalca - tex.naslov.soizvajalca <- - paste('\\subsubsection{', izvajalci[[soizvajalec]]$ime, '}', sep = '') - # Ocene predmeta in ocene predemta glede na program in letnik studentov - tex.soizvajalci.predmet <- - c( - tex.soizvajalci.predmet, - tex.naslov.soizvajalca, - tex.part.predmet.soizvajalec, - tex.part.soizvajalecBySmerLetnik, - "\\newpage" - ) - - } - } - } - #-------------------------------------------------------------------- - - # Predmet: Section: Ocene predmeta ---------------------------------------------- - #' V poglavju se nahaja: - #' @Frekvnne porazdeliteve za anketo PRED in PO - #' @Kompetence - #' @Krediti - #' @Analize predmeta po programu in letniku - #' @Odgovori na odprta vpraanja predmeta - #' @Ocene izvajalca - tex.parti <- c( - "\\newpage", - "\\section{Ocene predmeta}", - "\\subsubsection{Podrobne analize odgovorov (anketa PRED in anketa PO izpitu)}", - tex.part.predmet, - "\\newpage", - "\\section{Ocena izvajalca}", - tex.part.predmet.izvajalec, - "\\newpage" - ) - } - #--------------------------------------------------------------------------------- - - # SIMBOL CHECK ----------------------------------------------------------------- - #ZNAK "&" v imenu predmeta (NARAVOSLOVNO TEHNIKA) - predmet.ime <- subset(povprecja.predmeti, predmet.sifra == predmet)$ime.predmeta - predmet.ime <- gsub('&', '\\\\&', predmet.ime, fixed = T) - predmet.ime <- gsub('-', '--', predmet.ime, fixed = T) - #-------------------------------------------------------------------------------- - - - tex.report.izvajalec <- c(tex.report.izvajalec, - "\\newpage", - paste("\\chapter{", gsub('_', '\\_', subset(povprecja.predmeti, predmet.sifra==predmet)$ime.predmeta, fixed=T), "}", sep = ""), - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { - part$predmet[[predmet]]$response - }, - tex.parti, "\\newpage", - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot) & - nosilci_soizvajalcev && - !is.null(tex.soizvajalci.predmet)) - { - c("\\section{Ocene soizvajalcev}", - tex.soizvajalci.predmet) - }) - - - } - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec <- - gsub( - pattern = '!naslov!', - replacement = Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), - x = tex.glava - ) - - # Tabele komponent tudijskih programov v katerih sodeluje izvajalec - if (part$izvajalec[[izvajalec]]$progPRED != "Ni ocen." & - part$izvajalec[[izvajalec]]$progPO != "Ni ocen." & - part$izvajalec[[izvajalec]]$progIPP != "Ni ocen.") { - tex.program <- c( - "\\newpage", - "\\chapter{Sumarne ocene tudijskih programov}", - paste( - "Prikazana so Povpreja za ocene komponent - vseh programov, v katerih je izvajalec sodeloval. - Pri vsakem programu so upotevane le ocene tudentov, - ki so v program formalno vpisani. - Izpisi omogoajo primerjave izvajalca s povpreji - odgovarjajoih programov - (posredno so rezultati vkljueni v izraun kvantilnih - rangov predmeta po programih). " - ), - part$izvajalec[[izvajalec]]$progPRED, - part$izvajalec[[izvajalec]]$progPO, - part$izvajalec[[izvajalec]]$progIPP - ) - } else { - tex.program <- c( - "\\newpage", - "\\chapter{Sumarne ocene tudijskih programov}", - "- Zaradi neodgovorov analiza po tudijskih programih, v katerih je izvajalec sodeloval, ni bila narejena. -" - ) - } - # TEST - # e bi eleli vstaviti ocene od katerega drugega pedagoga. - #if (file.exists(paste0('C:/Miha DELO/da.tex'))) { # ali ocene obstajajo (so v mapi) - # tex.poLetih <- scan(paste0('C:/Miha DELO/da.tex'), character(0), sep='\n', quiet=TRUE) - #} else { - # tex.poLetih <- '- Ni podatkov -' - #} - ## //TEST// ## - - # Struktura izpisa za izvajalca (zdruevanje vektorjev in sestava podatkovnega okvirja) - tex.report.izvajalec <- c( - tex.glava.izvajalec, - "\\chapter{Povzetek}", - "\\setlength{\\tabcolsep}{4pt}", - part$izvajalec[[izvajalec]]$povzetek, - "\\newpage", - part$izvajalec[[izvajalec]]$kvantili, - "\\newpage", - "\\setlength{\\tabcolsep}{6pt}", - tex.report.izvajalec, - if (!is.null(tex.praksa)) { - c("\\chapter{tudijska praksa}", - studpraksa$predmet[[izvajalec]][[praksa]]) - }, - "\\newpage", - - "\\setlength{\\tabcolsep}{3pt}", - "\\renewcommand{\\arraystretch}{0}", - # defines vertical spacing of tables - tex.program, - "\\newpage", - tex.okvir, - tex.noga - ) - - - # Outputs the objects, concatenating the representations. - cat(unlist(tex.report.izvajalec), file = paste0("Evalvacija/results/",fakulteta,"/izvajalec_", gsub(".*_([0-9]+).*","\\1",izvajalec),"_", fakulteta, ".tex"), sep = "\n") - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste0("izvajalec_", gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '.tex'), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} -#---------------------------------------- //IZVAJALEC REPORT// ------------------------------------------# - - - - -#---------------------------------------- POVZETEK: SEPERATE REPORT FOR CLECURER ----------------------------------------------# -## NAREDIMO E LOENA POROILA IZVAJALCEV, KI VSEBUJEJO LE POGLAVJE POVZETEK -# Definiramo Glavo dokumenta -tex.glava.povzetek <- scan('Evalvacija/latexkosi/povzetek.glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -tex.glava.povzetek <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava.povzetek) -# tudijsko leto -tex.glava.povzetek <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava.povzetek) - -# For zanka -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - tex.report.izvajalec.povzetek <- NULL - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec.povzetek <- - gsub( - pattern = '!naslov!', - replacement = Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), - x = tex.glava.povzetek - ) - #------------------------------------------------- - - # Poglavje: Povzetek--------------------------- - tex.report.izvajalec.povzetek <- c( - tex.glava.izvajalec.povzetek, - "\\setlength{\\tabcolsep}{4pt}", - paste0( - "Prikazana so povpreja na lestvici, kjer so tudenti oznaili - strinjanje s trditvami, ki se nanaajo na razline komponente - pedagoke izvedbe (1 - sploh se ne strinjam, - 2 se bolj ne strinjam kot strinjam, 3 niti se ne strinjam niti se strinjam, - 4 se bolj strinjam kot ne strinjam, - 5- popolnoma se strinjam). Vpraalniki so na povezavi \\url{http://ul.1ka.si/q}. - V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, ampak je navedena pika .. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana - {\\color{Orange}\\textbf{oranno}}, - ritino nizka povpreja, 1.02.9, pa so obarvana {\\color{BrickRed}\\textbf{rdee}}. - Posebej visoka povpreja, 4.54.7, so obarvana {\\color{Chateau Green}\\textbf{zeleno}}, - najvija povpreja, 4.85.0, pa {\\color{Blue Stone}\\textbf{modrozeleno}}. - \\newline \\newline - Ocene za povpreja, ki temeljijo na nizkem tevilu enot (od 4 do 9), in/ali jih - spremlja nizka stopnja sodelovanja, so manj kakovostne, zato so oznaene z - enojnim () oziroma z dvojnim oklepajem (()). - Podrobne analize in podrobna metodoloka pojasnila so v celotnem poroilu. - Osnovna metodoloka pojasnila pa se nahajajo, skupaj z vpraalniki, - tudi na \\url{http://ul.1ka.si/metodologija}." - ), - part$izvajalec[[izvajalec]]$povzetek.povzetek - ) - #--------------------------------------------- - - predmet.tex <- NULL - - for (predmet in izvajalci[[izvajalec]]$predmeti) { - - predmet.tex[[predmet]] <- c("\\ \\newline", - paste0("{\\large {\\textbf{", gsub('_', '\\_', subset(povprecja.predmeti, predmet.sifra==predmet)$ime.predmeta, fixed=T), "}}} \\newline \\newline", sep = ""), - part$predmet[[predmet]]$text, "\\ \\newline", - part$izvajalec[[izvajalec]][[predmet]]$text - ) - - } - # Update 8.10.2019 # - # K povzetku izvajalca dodamo e interpretacijo v tabelah - tex.report.izvajalec.povzetek <- - c( - tex.report.izvajalec.povzetek, - paste0("{\\Large{\\textbf{Odgovori na odprta vpraanja}}} \\newline"), - predmet.tex, - tex.noga) - - # Outputs the objects, concatenating the representations. - cat(unlist(tex.report.izvajalec.povzetek), file = paste("Evalvacija/results/",fakulteta,"/izvajalec_", gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '_povzetek','.tex', sep = ''), sep = '\n') - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste('izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta,'_povzetek', '.tex', sep = ''), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} - -#--------------------------- //SESTAVLJANJE in KOMPILACIJA .tex datotek// ----------------------------------------# - - - - -###################################### -# NAREDIMO PDF POROILO E ZA PREDMETE -###################################### -####################################################################################### -# SESTAVLJANJE in KOMPILACIJA .tex datotek -####################################################################################### -tex.glava <- scan('Evalvacija/latexkosi/a-glava-predmet.tex', character(0), sep='\n', quiet=TRUE,encoding='UTF-8') #encoding='UTF-8' (Ȏ ji) -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) #V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) #Izpis imena leta semestra -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') -Rdirektorij <- getwd() - - -# REPORTI PREDMETOV # -for (predmet in names(predmeti)){ - tex.izvajalci.predmet <- NULL - predmet.temp <- subset(povprecja.predmeti, predmet.sifra==predmet) - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { - tex.part.predmet <- c(part$predmet[[predmet]]$cont, "\\newpage", part$predmet[[predmet]]$krediti, "\\newpage",part$predmet[[predmet]]$kompetence1,"\\newpage", - "\\section{Analiza po programih in letnikih}", part$predmet[[predmet]]$BySmerLetnik, "\\newpage","\\section{Odgovori na odprta vpraanja}", part$predmet[[predmet]]$text) - - - for (izvajalec in as.character(predmeti[[predmet]]$izvajalci)){ - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - tex.part.izvajalecBySmerLetnik <- NULL - } else { - tex.part.predmet.izvajalec <- c("\\subsection{Komponente pedagokega dela}", part$izvajalec[[izvajalec]][[predmet]]$cont, "\\newpage") - tex.part.izvajalecBySmerLetnik <- c('\\subsection{Analiza po smereh in letnikih}', part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik) - } - tex.naslov.izvajalca <- paste('\\section{', izvajalci[[izvajalec]]$ime, '}', sep='') - tex.izvajalci.predmet <- c(tex.izvajalci.predmet, tex.naslov.izvajalca, tex.part.predmet.izvajalec, tex.part.izvajalecBySmerLetnik, "\\newpage") - } - tex.parti <- c("\\newpage", - '\\section{Ocene iz ankete PRED in ankete PO izpitu}', tex.part.predmet - - ) - } - - tex.glava.predmet <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(gsub('_', '\\_', predmet.temp$ime.predmeta[1], fixed=TRUE)), x=tex.glava) - if (predmet.temp$STOPNJA[1]==1) { - stopnjaText <- 'Dodiplomski tudij' - } else if (predmet.temp$STOPNJA[1]==2) { - stopnjaText <- 'Podiplomski tudij' - } else {stopnjaText <- ''} - tex.glava.predmet <- gsub(pattern='\\hfillprostorZaStopnjo - Studija', replacement=Hmisc::latexTranslate(stopnjaText), tex.glava.predmet, fixed=TRUE) - - - tex.report.predmet <- c( - tex.glava.predmet, - "\\newpage", - "\\setlength{\\tabcolsep}{4pt}", - part$predmet[[predmet]]$povzetek, - part$predmet[[predmet]]$kvantili, - "\\newpage", - "\\setlength{\\tabcolsep}{6pt}", - '\\chapter{Podrobne analize}', - part$predmet[[predmet]]$response, - tex.parti, - "\\newpage", - tex.noga - ) - - cat(tex.report.predmet, file=paste("Evalvacija/results/",fakulteta,"/predmet_", predmet,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - tools::texi2pdf(file=paste("predmet_", predmet,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) - - -} -# /REPORTI PREDMETOV/ # diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec.R deleted file mode 100644 index 2cee9a879..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec.R +++ /dev/null @@ -1,4559 +0,0 @@ -########## -#' @NOTE # -########## -# Kode for generating report for izvajalec e.g, izvajalec_321_FDV.pdf -# The repsent code consist of IV parts: -#' # @PART I Izvajalec -#' # @PART II predmet -#' # @PART III studijska praksa -#' # @PART IV compiling tex files -#' into PDF -# The three parts generate pdf report for lecturer -#--------------------------------------------------------------------# - - - -#---------------------- 1KA strenik -------------------------# -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo -# za posamezno fakulteto na streniku -# Tega trenutno ne rabimo -#params <- commandArgs(trailingOnly = TRUE) -#ID <- params[1] -#---------------------- //1KA strenik// ---------------------# - -############################################################## -# Run first # -# source("Evalvacija/R/00_dataanalysis.R", encoding = "UTF-8") -############################################################## - - -# ---------------- ADDITIONAL PARAMETERS BEFORE CRAETING REPORT FOR LECTURER -----------------# -# V primeru, da v poroilu za izvajalca nosilec predmeta eli videti tudi ocene soizvajalca -nosilci_soizvajalcev <- TRUE -# ali naj omeji poroila samo na doloene izvajalce -omejeniIzvajalci <- FALSE -# katere glede na vrstico zgoraj -omejeniIzvajalciSifre <- c("3000018_FF_764") -#-------------- //ADDITIONAL PARAMETERS BEFORE CRAETING REPORT FOR LECTURER// ---------------# - - -###################################### -#' DATA NEEDED FOR PDF REPORT: @PART I -###################################### -#--------------------------------------------- IZVAJALEC ------------------------------------------------# -# omejeniIzvajalci v primeru da se generira samo poroila za doloene izvajalce; -# naredi se tudi za vse soizvajalce pri vseh njihovih predemtih + -# (za primere kjer je nosilec v omejeniIzvajalciSifre) -if (omejeniIzvajalci) { - # ifre predmetov, ki pripadajo izvajalcu - omejeniPredmetiSifre <- - data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% omejeniIzvajalciSifre] - # Izvajalci, ki so sodeloval pri predmetu - sifreIzvajalec <- - as.character(unique(data.izvajalci$izvajalec.sifra[data.izvajalci$predmet.sifra %in% omejeniPredmetiSifre])) -} else { - sifreIzvajalec <- - as.character(unique(data.izvajalci$izvajalec.sifra)) -} - -# For Loop purposes----------------------------------- -# Naredili bomo list, ki bo sestavni del PDF dokumenta -# Torej list, ki vsebuej vse podatke o izvajalcu -izvajalci <- NULL -# Povpreja za ocene komponent vseh programov, -# v katerih je izvajalec sodeloval -izvajalci_program <- NULL -# Deli v katere bomo zapisali posamezna latex -# poglavja oz. izraune za izvajalce -part <- NULL -#----------------------------------------------------# - -# START COMPILING DATA FOR IZVAJALEC-------------------------------------------------- -# Zanka, ki generira poroila za vse unikatne ifre izvajalcev, ki so v sifreIzvajalec -for (izvajalec in sifreIzvajalec) { - # indeks izvajalcev z imeni in predmeti po ifrah izvajalcev - # Ime izvajalca - ime.izvajalca <- - sifrant[sifrant$IDPEDAGOGA == izvajalec, 'NAZIV.PEDAGOGA'][1] - # Preverimo, da ime izvajalca obstaja in ni v ifrantu ni napake - if (is.na(ime.izvajalca)) { - warning(paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!'), - immediate. = TRUE) - ime.izvajalca <- - paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!') - } - - #--------- INFORAMTION ABOUT LECTURER AND HIS COURSES AND PROGRAMMES ---------# - # izvajalec in Povpreje predmeta / predmetov - izvajalci[[izvajalec]] <- list( - ime = ime.izvajalca, - predmeti = as.character(unique( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$predmet.sifra - )), - ime.datoteke = paste('izvajalec_', izvajalec, '.pdf', sep = - '') - ) - - # Povpreje izvajalca: tudijski program (Uporabimo pri poroilu izvajalca in sicer poglavje: Sumarne tudijske ocene programov) - izvajalci_program[[izvajalec]] <- list( - ime = ime.izvajalca, - predmeti = as.character(unique( - subset(povprecja.izvajalci.programi, izvajalec.sifra == izvajalec)$predmet.sifra - )), - ime.datoteke = paste('izvajalec_', izvajalec, '.pdf', sep = - '') - ) - #------- //INFORAMTION ABOUT LECTURER AND HIS COURSES AND PROGRAMMES// -------# - - - # Analize za vse predmete, ki jih pouuje izvajalec---------------------------- - # Zanka za vse ifre predmetov izvajalca izvajalci[[izvajalec]]$predmeti - for (predmet in izvajalci[[izvajalec]]$predmeti){ - - #-------------- LECTURER DATA -------------------# - # Povpreje predmetov izvajalca - povp.izv.predm <- - subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec & predmet.sifra == predmet) - # Podatki o izvajalcu (komentarji na njegove predmete, itd.) - izv.koment <- - subset(data.izvajalci, - izvajalec.sifra == izvajalec & predmet.sifra == predmet & veljavna) - #------------ //LECTURER DATA// -----------------# - - # Generiraj poroila za vse komponente, kjer so vsaj 4 odgovori - if (povp.izv.predm$N_anket >= minEnot) { # cele dele dela smo kjer je dovolj enot (ve ali enako 4) - - - #--------------------------------- PDF CHAPTER NAMED "OCENA IZVAJALCA" ---------------------------------# - # This chapter consist fo two tables and one radar graph (see in "izvajalec_321.PDF) - # The order of tables and graph in this chapter is following: - # 1) TABLE 1 - # 2) RADAR CHART - # 3) TABLE 2 - - # FIRST TABLE (TABLE 1) ------------------------ - #==============================================# - # vars.izvajalec$cont$vars <- imena komponent za izvajalca, ki so jih ocenjevali tudenti - tabela.cont <- cbind.data.frame( - # tevilo odgovorov posamezne komponente - N = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_N")]), - # Povpreje komponent izvajalca (Kakovost, itd.) - mean = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_mean")]), - # Standardni odklon komponent - sd = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_sd")]), - # Min vrednosti komponent na likertovi letvici od 1-5 - min = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_min")]), - # Min vrednosti komponent na likertovi letvici od 1-5 - max = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_max")]) - ) - # For radar chart - radar.m <- tabela.cont - # e je NA potem doda piko "." <- Prikaz v latex tabeli - tabela.cont[is.na(tabela.cont)] <- "." - - # e je tevilo enot manje kot 4 dodaj opombo, ki se bo izpisala pod latex tabelo - if (any(tabela.cont == ".")) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega - tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' - } else {opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}"} - - # Povpreja ocen komponent izvajalcev celotne fakultete - F.mean <- data.frame(F.avg.izv[paste0(vars.izvajalec$cont$vars,"_mean")]) - colnames(F.mean) <- 'Fmean' - tabela.cont <- cbind(tabela.cont, F.mean) - - # Zdruimo vrstice: tabela.cont z vrsticami: SKUPNE OCENE IZVAJALCA in vrstice s Povpreji Fakultete (FDVcont) - tabela.cont <- - rbind(tabela.cont, - c('', - povp.izv.predm$izvajalec.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont$Fmean, na.rm = TRUE) - )) - - # Premaknemo SD, MIN IN MAX V TABELO porazdelitev.tex - op.sta.izva <- tabela.cont[c(3, 4, 5)] - # Barvanje vrednosti glede na mejne vrednosti. - tabela.contR <- formatval(tabela.cont) # formatval is custom defined function - - # Imena vrstic tabele - rownames(tabela.contR) <- c(as.character(vars.izvajalec$cont$ime.dolgo[vars.izvajalec$cont$vars]), '\\hline\n\\textbf{Skupaj}') - - # PORAZDELITEV ODGOVOROV IZVAJALEC # - #################################### - ## Tabela frekvennih porazdelitev ocen komponent za izvajalce pri predmetu ## - izva.pred.freq <- subset(data.izv.miss, izvajalec.sifra == izvajalec & predmet.sifra == predmet) - - # Frequency distribution - dist <- t(sapply(izva.pred.freq[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izv.someMiss)))) - - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.1 <- round((rowSums(dist[,1:2], na.rm = TRUE)) / (rowSums(dist, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.2 <- round((rowSums(dist[,4:5], na.rm = TRUE)) / (rowSums(dist, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.1 <- ifelse(tabela.contR$mean == ".", ".", dist.pct.1) - dist.pct.2 <- ifelse(tabela.contR$mean == ".", ".", dist.pct.2) - - # Barvanje vrednosti - dist.pct.1 <- ifelse(dist.pct.1 != "." & dist.pct.1 >= 20, paste('{\\color{Orange}', dist.pct.1, '}'),dist.pct.1) - dist.pct.2 <- ifelse(dist.pct.2 != "." & dist.pct.2 <= 50, paste('{\\color{Orange}', dist.pct.2, '}'),dist.pct.2) - ## /Porazdelitev delei / ## - - # Zdruimo stolpce - tabela.contR <- qpcR:::cbind.na(tabela.contR,dist.pct.1,dist.pct.2) - tabela.contR <- tabela.contR[, c(1, 2, 7, 8, 6)] - - - # PORAZDELITEV ODGOVOROV FAKULTETA # - #################################### - # Enako naredimo e za FAKULTETO - izva.pred.freq.f <- subset(data.izvajalci, (veljavna)) - izv.dist.f <- t(sapply(izva.pred.freq.f[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izv.someMiss)))) - - dist.pct.FDV.1 <- round((rowSums(izv.dist.f[,1:2], na.rm = TRUE))/ (rowSums(izv.dist.f, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.FDV.2 <- round((rowSums(izv.dist.f[,4:5], na.rm = TRUE)) / (rowSums(izv.dist.f, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - dist.pct.FDV.1 <- ifelse(dist.pct.FDV.1 >= 20, paste('{\\color{Orange}', dist.pct.FDV.1, '}'),dist.pct.FDV.1) - dist.pct.FDV.2 <- ifelse(dist.pct.FDV.2 <= 50, paste('{\\color{Orange}', dist.pct.FDV.2, '}'),dist.pct.FDV.2) - # /Porazdelitev delei/ # - - # Zdruimo - tabela.contR <- - qpcR:::cbind.na(tabela.contR, dist.pct.FDV.1, dist.pct.FDV.2) - - colnames(tabela.contR) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - - # Morebitne "." v zadnjem stolpcu nadomestimo z NA, da se ne izpie v Latex tabeli - tabela.contR[nrow(tabela.contR), c(1, 3, 4)] <- NA - - # Latex Table Compile tex file - tabela.contR.tex <- - capture.output( - Hmisc::latex( - toLatex(tabela.contR), - caption = "Povpreja in delei kategorij odgovorov za komponente pedagokega dela - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)", - rowlabel = '', - # Prva vrstica v tabeli (zgoraj levo ne bo poimenovana) - file = '', - where = 'H', - cgroup = c("Izvajalec", fakulteta), - # Imena stolpcev bodo razdeljena na dva dela ter poimenovana (Izvajalec, ime fakultete) in - n.cgroup = c(4, 3), - # grupirana. Prvi stolpec obsega 5 vrstic drugi stolpec obsega 1 vrstico - col.just = rep_len('c', ncol(tabela.contR)), - rowlabel.just = 'p{7cm}', - # irina vrstic - insert.bottom = opomba - ) - ) - #-------------- //FIRST TABLE (TABLE 1)// ------------------# - - - - # RADAR CHART #------------------------------ - #===========================================# - # Glej poroilo za izvajalca, in sicer Slika: Opisne statistike pedagokega dela za izvajalca pri predmetu (anketa PRED izpitom) - if (sum(!is.na(radar.m$mean)) < 4) { - radar.m$mean <- radar.m$mean[!is.na(radar.m$mean)] <- NA - } # e so bile 3 zaporedne vrednosti je nastala udna rta zato reemo, da naj bodo najmanj 4 - radar.cont <- - data.frame(rbind(5, 1, t(cbind( - F.mean, as.numeric(radar.m$mean) - ))), - row.names = 1:4, - check.names = FALSE) - #Imena stolpcev radar grafa:"Kakovost","Pripravljenost", "Razumljivost","Zanimivost","Kritinost","Korektnost" - colnames(radar.cont) <- - sub(" ", "\n", as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars])) - # CairoPDF initializes a new graphics device that uses the cairo graphics library for rendering - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/", izvajalec, '_', predmet, '_cont.pdf', sep=''), - family='sans', pointsize=9, width=6, height=4) - #Setting graph margins. xpd=TRUE -enable things to be drawn outside the plot region - par(mar = (c(0, 4, 1, 6) + 0.1), xpd = TRUE) - # Plot RADAR CHART fmsb::radarchart - fmsb::radarchart( - radar.cont, - pcol = c('dodgerblue3', 'firebrick3'), - cglcol = 'gray75', - plwd = 2, - plty = 1, - cglwd = 1, - cglty = 1, - seg = 4, - axistype = 1, - caxislabels = c(1:5), - axislabcol = 'gray25', - centerzero = TRUE - ) - legend( - 'topright', - inset = c(-0.15, 0), - legend = c("Izvajalec", paste(fakulteta, "Povpreje")), - col = c('firebrick3', 'dodgerblue3'), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - #-------------------- // RADAR CHART // --------------------# - - - # SECOND TABLE (TABLE 2) -------------------------- - #=================================================# - # Tabela Frekvenne porazdelitve ocen komponent - # pedagokega dela izvajalca (anketa PRED izpitom) - dist.freq <- dist - - # samo kjer je dovolj enot - dist.freq[rowSums(dist.freq) < minEnot, ] <- NA - dist.freq <- cbind(dist.freq, rowSums(dist.freq, na.rm = TRUE)) - - # Imena stolpcev - dist.freq <- - cbind(dist.freq, formatval(op.sta.izva[-nrow(op.sta.izva),])) - - # Colnames for Latex tables - colnames(dist.freq) <- - c( - "\\textbf{1}", - "\\textbf{2}", - "\\textbf{3}", - "\\textbf{4}", - "\\textbf{5}", - "\\textbf{Ne elim odg.}", - "\\textbf{Nimam informacij}", - "\\textbf{Skupaj}", - "\\textbf{Sd}", - "\\textbf{Min}", - "\\textbf{Max}" - ) - - # Also add rownames - rownames(dist.freq) <- as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars]) - - # Generiranje LATEX TABELE - porazdelitev.tex <- capture.output( - Hmisc::latex( - dist.freq, - caption = "Frekvenna porazdelitev ocen komponent pedagokega dela izvajalca - (anketa PRED izpitom)", - rowlabel = "\\textbf{Komponente}", - file = "", - where = "H", - col.just = rep_len("c", ncol(dist.freq)), - insert.bottom = "" - ) - ) - #-------------- //SECOND TABLE (TABLE 2)// ------------------# - - - # CREATE CHAPTER -------------------------------------- - part$izvajalec[[izvajalec]][[predmet]]$cont <- c( - tabela.contR.tex, - # Radar graf, ki smo ga prej shranili s pomojo CAIROPDF, sedaj naloimo - "\\begin{figure}[H]", - "\\caption{Opisne statistike pedagokega dela za \\textbf{izvajalca} - pri predmetu (anketa PRED izpitom)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-izvajalec-slike/", - izvajalec, - '_', - predmet, - '_cont.pdf}}' - ), - "\\end{figure}", - porazdelitev.tex - ) - #------------------------------- //PDF CHAPTER NAMED "OCENA IZVAJALCA"// -------------------------------# - - - - #---------------------- STUDENTS COMENTS FOR LECTURER ON OPEN ENDED QUESTIONS -------------------------# - ## TEKSTOVNE (KOMENTARJI tUDENTOV) ## - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpraanja" - data.text <- lapply(izv.koment[vars.izvajalec$text$vars], trim) - for (textvar in names(data.text)) { - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- - gsub(pattern = '\\\\', - replacement = '!backslash!', - x = data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo otevileni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - part$izvajalec[[izvajalec]][[predmet]]$text <- tex.text - #-------------------- //STUDENTS COMENTS FOR LECTURER ON OPEN ENDED QUESTIONS// -----------------------# - - - # ------------------- PDF CHAPTER NAMED "ANALIZA IZVAJALCA PO PROGRAMIH IN LETNIKIH" -------------------# - ## analiza izvajalca po smereh in letnikih tudentov ## - # Glej kodo tabelaBy.r kjer definiramo funkcijo tabelaBy - - # Get data from which program did the greades for the lecturer come from - izvBySmer.df = subset( - povprecja.izvajalci.programi.brez.cenzure, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & N_anket > 0 - )[c( - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - paste0(vars.izvajalec$cont$vars, "_N"), - "program.studentov.ime" - )] - - # Prepare data and create latex table (see custom function "pro.let.c") - izvajalecBySmer <- pro.let.c(izvBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje izvajalca pri predmetu}", # Second argument rownames for lecturers total average - F.avg.izv, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.izvajalci.st," - izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od IPP of lecturer - "Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} - glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)", # Fifth argument is Latex Table caption - "IPP", # Sixth argument is for the type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, #Seventh argument, If is TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( #Eight argument presents Colnames for Latex table which are rotated 90 degrees in Latex tables: latex.rotate in custom function for rotating purposes - "t. odgovorov", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ))) - - - # Povpreja glede na letnik tudentov - izvByLetnik <- - subset( - povprecja.izvajalci.letniki.brez.cenzure, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & N_anket > 0 - )[c( - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - paste0(vars.izvajalec$cont$vars, "_N"), - "letnik.studentov" - )] - # Prepare data and create latex table (see custom function "pro.let.c") - izvajalecByLetnik <- pro.let.c(izvByLetnik, - "\\hline \\textbf{Povpreje izvajalca pri predmetu}", - F.avg.izv, - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.izvajalci.st," - izvedb pri predmetih)}"), - "Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} - po letniku vpisanih tudentov (anketa PRED izpitom)", - "IPP", - letnik = TRUE, - colnam = latex.rotate(c( # Colnames for Latex table - "t. odgovorov", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ))) - - - # Kvantilni rangi - # Generiranje tabel, glej poroilo za izvajalca, tabelo: - # "Kvantilni rangi za Povprene ocene komponentizvajalca pri predmetu glede na tudijske programe tudentov** (anketa PRED izpitom)" - progs <- rownames(izvajalecBySmer$tabela[izvajalecBySmer$tabela$N_anket >= minEnot,]) - izvajalecBySmerProgrami <- - subset( - kvantili.izvajalci.programi, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & program.studentov.ime %in% progs - ) - - if (nrow(izvajalecBySmerProgrami) > 0) { - # For Latex table purposes we also need the number of lecturers on each student programm - proggIZ.tmp <- - povprecja.izvajalci.programi[povprecja.izvajalci.programi$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - proggIZ.tmp <- - aggregate(proggIZ.tmp$predmet.sifra, by = proggIZ.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - # Merge number of lecturers with quantile ranks - izvajalecBySmerProgrami <- - merge( - izvajalecBySmerProgrami, - proggIZ.tmp[c("x","program.studentov")], - by = c("program.studentov"), - all.x = TRUE - ) - - # Sort data based on number of IPP (izvajalci pri predmetih) - izvajalecBySmerProgrami <- - izvajalecBySmerProgrami[order(izvajalecBySmerProgrami$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(izvajalecBySmerProgrami) <- - make.unique(as.character(izvajalecBySmerProgrami$program.studentov.ime)) - # Tidy daata for Latex tables - izvajalecBySmerProgrami <- - izvajalecBySmerProgrami[c( - "x", - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - # Imena Stolpcev - colnames(izvajalecBySmerProgrami) <- latex.rotate(c("t. IPP***","t. odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}")) - # Compile Latex Table - izvajalecBySmerProgrami <- capture.output(Hmisc::latex(izvajalecBySmerProgrami, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetu} - glede na vse predmete v doloen tudijski - program vpisanih tudentov** (anketa PRED izpitom)"), - rowlabel="", - file="", - where="H", - rowlabel.just="p{10.2cm}", - insert.bottom=kvan.pojas3, - longtable = TRUE, - multicol=FALSE, - col.just=c("c","|c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c") - )) - } else { - izvajalecBySmerProgrami <- NULL - } - - - # - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik <- c(izvajalecBySmer$tex, izvajalecBySmerProgrami, izvajalecByLetnik$tex) - # /analiza izvajalca po smereh in letnikih tudentov/ # - - } else { # e ni dovolj enot - part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot <- - "- Zaradi prenizkega tevila odgovorov analiza izvajalca ni bila narejena. -" - } - #------------------- //PDF CHAPTER NAMED "ANALIZA IZVAJALCA PO PROGRAMIH IN LETNIKIH"// -------------------# - } - - - - #---------------------------- PDF CHAPTER NAMED: Povzetek: Ocene predmetov in izvajalca ----------------------------# - - # paste0(vars.izvajalec$cont$vars,"_mean") <- Kakovost, Pripravljenost, razumljivost, zanimivost, kritinost, korektnost - pov.izv <- - povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anketTotal", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - # Preverimo e pri izvajalcu obstajajo lurkerji - povzetek.izvajalca.lurkerji <- povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra==izvajalec, - c("N_lurkerjev_ivz")] - - # e povpreja Predmetov - # Komponente za anketo PRED izpitom (glej tabelo 1,1) - pov.pred <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")] - - # Preverimo, e so v v odgovore ankete PRED zajeti tudi lurkerji - povzetek.predmetov.pred.lurkerji <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_pred")] - - - - # Komponente za anketo PO izpitu (glej tabelo 1,2) - pov.po <- povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.krediti_mean")] - - - povzetek.predmetov.po.lurkerji <- povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_po")] - - - # PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA # - # Povprene ocene izvajalca pri predmetih - povprecja.izvajalci.skupaj.temp <- subset(povprecja.izvajalci.skupaj, izvajalec.sifra==izvajalec) - - meansI <- - povprecja.izvajalci.skupaj.temp[c( - "ST_STUD", - "N_anketTotal", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpred <- - subset(povprecja.predmetov.izvajalca.skupaj, - izvajalec.sifra == izvajalec)[c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpo <- - subset(povprecja.predmetov.izvajalca.skupaj.po, - izvajalec.sifra == izvajalec)[c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - ## //PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA// ## - - ##### averages of programmes from which lecturer got grades# from which programme most grades come from ##### - colnames(povprecja.izvajalci.skupaj.temp) <- gsub('.x','',names(povprecja.izvajalci.skupaj.temp)) - maxProgram <- sub("program_studenta_", "", - names(sort( - povprecja.izvajalci.skupaj.temp[paste0("program_studenta_", - programi$student.program.sifra)], decreasing = - TRUE - )[1])) - # Get the programme mean - maxIPP <- subset(povprecja.izvajalci.programi, program.studentov %in% maxProgram) - # Number of Lecturers with enough answers (4 or more) on the programme - maxIPP.n <- length(which(maxIPP$N_anket >=4)) - # Program Rowname - maxIPP.nm <- as.character(unique(maxIPP$program.studentov.ime)) - maxIPP <- maxIPP[, grepl("mean|Skupaj", colnames(maxIPP), ignore.case = TRUE)] - maxIPP <- colMeans(maxIPP, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxIPP <- as.data.frame.list(maxIPP) - # Add Rownames - rownames(maxIPP) <- maxIPP.nm - # Color and tidy values for Latex table - #maxIPP <- formatval(maxIPP) - - if (all(maxIPP != ".")) { - # Programme rownames from which most grades come from - maxProgramIme <- - paste0( - "\\hline \\textbf{Povpreje ", - programi$student.program.ime[programi$student.program.sifra == maxProgram], - " (", - maxIPP.n, - " izvajalcev pri predmetih)*}" - ) - # Also Add programme average - meansIprog <- - c("--", "--", "--", "--", "--", "--", "--", unname(maxIPP)) - } else { - maxProgramIme <- NULL - meansIprog <- NULL - } - - - - # PREDMET PRED IZPITOM - # averages of programmes from which lectur got grades# from which programme most grades come from - maxProgramPRED <- - sub("program_studenta_", "", names(sort(povp.izv.predm[paste0("program_studenta_", programi$student.program.sifra)], decreasing = - TRUE)[1])) - maxProg <- subset(povprecja.predmeti.programi, program.studentov %in% maxProgramPRED) - # Number of Lecturers with enough answers (4 or more) on the programme - maxProg.n <- length(which(maxProg$N_anket >=4)) - # Program Rowname - maxProg.nm <- as.character(unique(maxProg$program.studentov.ime)) - maxProg <- maxProg[, grepl("mean|Skupaj", colnames(maxProg), ignore.case = TRUE)] - maxProg <- colMeans(maxProg, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxProg <- as.data.frame.list(maxProg) - # Add Rownames - rownames(maxProg) <- maxProg.nm - # Color and tidy values for Latex table - #maxProg <- formatval(maxProg) - - if (all(maxProg != ".")) { - maxProgramImePRED <- - paste0( - "\\hline \\textbf{Povpreje ", - programi$student.program.ime[programi$student.program.sifra == maxProgramPRED], - " (", - maxProg.n, - " predmetov)*}" - ) - ime.programa <- paste0(programi$student.program.ime[programi$student.program.sifra == maxProgramPRED]) - meansIprogPRED <- - c("--", "--", "--", "--", "--", unname(maxProg)) - } else { - maxProgramImePRED <- NULL - meansIprogPRED <- NULL - } - - - # PREDMET PO IZPITU - maxProgramPO <- - sub("program_studenta_", "", names(sort(povp.izv.predm[colnames(povp.izv.predm) %in% paste0("program_studenta_", programi.po$student.program.sifra)], decreasing = - TRUE)[1])) - maxProgpo <- subset(povprecja.predmeti.programi.PO, program.studentov %in% maxProgramPRED) - # Number of Lecturers with enough answers (4 or more) on the programme - maxProgpo.n <- length(which(maxProgpo$N_anket >=4)) - # Program Rowname - maxProgpo.nm <- as.character(unique(maxProgpo$program.studentov.ime)) - maxProgpo <- maxProgpo[, grepl("mean|Skupaj", colnames(maxProgpo), ignore.case = TRUE)] - maxProgpo <- colMeans(maxProgpo, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxProgpo <- as.data.frame.list(maxProgpo) - # Add Rownames - rownames(maxProgpo) <- maxProgpo.nm - # Color and tidy values for Latex table - #maxProgpo <- formatval(maxProgpo) - - if (all(maxProgpo != ".")) { - maxProgramImePO <- - paste0( - "\\hline \\textbf{Povpreje ", - programi.po$student.program.ime[programi.po$student.program.sifra == maxProgramPO], - " (", - maxProgpo.n, - " predmetov)**}" - ) - meansIprogPO <- - c("--", "--", "--", "--", "--", unname(maxProgpo[c( - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )])) - } else { - maxProgramImePO <- NULL - meansIprogPO <- NULL - } - ## //averages of programmes from which lecturer got grades# from which programme most grades come from// ## - - - - # Dodajanje opomb, ki se prikaejo pod posamezno tabelo v poglavju POVZETEK - if (sum(is.na(pov.izv)) > 0) { - opombaI <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. \\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec pri predmetu - ni poueval (npr. ve asistentov izvaja vaje pri predmetu - za razline skupine tudentov).}}" - - opombaI.povzetek <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. \\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec pri predmetu - ni poueval (npr. ve asistentov izvaja vaje pri predmetu - za razline skupine tudentov).}}" - - } else { - opombaI <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. - Ocene morebitnih ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.\\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec ni poueval - (npr. ve asistentov izvaja vaje pri predmetu za razline skupine tudentov).}}" - - - opombaI.povzetek <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov.\\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec ni poueval - (npr. ve asistentov izvaja vaje pri predmetu za razline skupine tudentov).}}" - - } - if (sum(is.na(pov.pred)) > 0) { - opombaPpred <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali predmete - izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. }}" - - - opombaPpred.povzetek <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov.}}" - - } else { - opombaPpred <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - - opombaPpred.povzetek <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov.}}" - } - if (sum(is.na(pov.po)) > 0) { - opombaPpo <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih - komponent (glej metodoloka pojasnila): Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval - podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita odstopanja - (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, so - v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - - opombaPpo.povzetek <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih - komponent (glej metodoloka pojasnila): Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval - podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita odstopanja - (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov.}}" - } else { - opombaPpo <- - "{\\footnotesize \\textit{* Vrednost pod 3.0 pomeni, da je predmet glede - na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno - tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita - odstopanja (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene ostalih programov, - v katere so vpisani tudenti, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - - - opombaPpo.povzetek <- - "{\\footnotesize \\textit{* Vrednost pod 3.0 pomeni, da je predmet glede - na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno - tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita - odstopanja (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov.}}" - } - ## //OPOMBE// ## - - # Zdruimo izraunane vrednosti (v vrstice) za izvajalca in za predmete - povzetek.izvajalca <- rbind(pov.izv, # Povreja izvajalca pri predmetu - meansI, # Povpreje izvajalca pri obeh predmetih - meansIprog, # Povpreje programa iz katerega prihaja najve ocen - c(Fizv[1, 1:ncol(Fizv)], F.avg.ipp), # Povpreje vshe izvajalcev pri predemtih - c("--","--","--","--","--","--","--", F.avg.izv)) # Povpreje vseh unikantnih izvajalcev. - - # Povprene ocene komponent (anketa PRED) - povzetek.predmetov.pred <- rbind(pov.pred, - meansPpred, - meansIprogPRED, - c(Fpred[1, 1:ncol(Fpred)], F.avg.pred)) - - # Povprene ocene komponent (anketa PO izpitu) - # Preverimo ali so v anketi PO odgovori oziroma al so v bazi podatki za predmet - if (!nrow(pov.po) > 0) { - pov.po <- meansPpo - - } - povzetek.predmetov.po <- rbind(pov.po, - meansPpo, - meansIprogPO, - c(Fpo[1, 1:ncol(Fpo)], - F.avg.po[c( - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )])) - - - ########################################## - # OBARVANJA VREDNOSTI V TABELAH (formatNA) - ########################################## - # Izvajalec - povzetek.izvajalca <- formatval(povzetek.izvajalca) - # Vhere Podatek je manj pomemben ali teko izracunljiv. replace "." with "--" - povzetek.izvajalca[nrow(povzetek.izvajalca) - c(0, 2), 1:7] <- "--" - - # Predmeti v Anketi PRED - povzetek.predmetov.pred <- formatval(povzetek.predmetov.pred) - povzetek.predmetov.pred[nrow(povzetek.predmetov.pred) - c(1), 1:5] <- "--" - - # Predmeti v anketi PO - povzetek.predmetov.po <- formatval(povzetek.predmetov.po, KT = TRUE) - povzetek.predmetov.po[nrow(povzetek.predmetov.po) - c(1), 1:5] <- "--" - - # Anketa PO - - ### //OBARVANJE UVODNIH TABEL// ### - - ## Imena vrstc TABEL ## - # Imena vrstic tabele 1.3 oz. IZVAJALCA - - # TABLE ROWNAMES # - # Imena vrstic za Tabelo 1.3 (Izvajalec pri predmetu) - rown.pov.izv <- - povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra == izvajalec, "ime.predmeta"] - # Imena vrstic za Tabelo 1.1 <- ANKETA PRED IZPITOM - rown.pov.pred <- - povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # Imena vrstic za Tabelo 1.2 <- ANKETA PO IZPITU - rown.pov.po <- - povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # Update 10.10.2019 # - # Ker se lahko zgodi, da predmeta v anketi PO sploh ni bilo - # elimo v tem primeru pridobiti ime predmeta iz ANKETE PRED izpitom - # v nasprotnem lahko pride to napake pri generiranju poroil - if(!length(rown.pov.po) > 0) { - rown.pov.po <- rown.pov.pred - } - - # //TABLE ROWNAMES// # - - rownames.pov.izv <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.izv)), - paste0('\\hline \\textbf{Povpreje izvajalca}'), - maxProgramIme, - paste0("\\hline \\textbf{Povpreje ", fakulteta, - " (", kvantili.izvajalci.st," \nizvajalcev pri predmetih)}"), - paste0( "\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.izvajalci.skupaj.st ," \nizvajalcev)}" - ) - ) - - # Imena vrstic tabele 1.1 oz PREDMETA - rownames.pov.pred <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.pred)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}', - maxProgramImePRED, - paste0("\\hline \\textbf{Povpreje ", - fakulteta," (", - kvantili.predmeti.st.pred, " predmetov)}" - ) - ) - - - # Imena vrstic tabele 121 oz PREDMETA - rownames.pov.po <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.po)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}', - maxProgramImePO, - paste0( "\\hline \\textbf{Povpreje ", fakulteta, - " (", kvantili.predmeti.st.po, " predmetov)}" - ) - ) - ## //Imena vrstc// ## - - ## Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ ## - # IPP - colnames(povzetek.izvajalca) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "t. odg. izvajalca**", - "\\% odgovorov izvajalca", - "\\% zavrnitev predmeta", - "\\% nesodelujoih", - "\\% ni poueval***", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ) - ) - # ANKETA PRED - colnames(povzetek.predmetov.pred) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "\\% odgovorov", - "\\% zavrnitev", - "\\% nesodelujoih", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ) - ) - # ANKETA PO - colnames(povzetek.predmetov.po) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "\\% odgovorov", - "\\% zavrnitev", - "\\% nesodelujoih", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po]), - "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko) - ) - ) - ## //Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ // ## - - - - ## e so v bati LURKERJI: Preverimo pri katerem predmetu smo jih upotevali po ZAVRNJENE ENOTE - # IZVAJALCI PRI PREDMETIH ANKETA PRED - st.lurkerjev.IZV <- - ifelse(povzetek.izvajalca.lurkerji >= 1, "\\#", "") - - povzetek.izvajalca[, 5][1:length(st.lurkerjev.IZV)] <- - paste(povzetek.izvajalca[, 5][1:length(st.lurkerjev.IZV)], st.lurkerjev.IZV, sep = "") - - if('\\#' %in% st.lurkerjev.IZV){ - opombaLurkerji.IZV <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.IZV <- NULL - } - - # ANKETA PRED PREDMETI - st.lurkerjev.PRED <- - ifelse(povzetek.predmetov.pred.lurkerji >= 1, "\\#", "") - - povzetek.predmetov.pred[, 4][1:length(st.lurkerjev.PRED)] <- - paste(povzetek.predmetov.pred[, 4][1:length(st.lurkerjev.PRED)], st.lurkerjev.PRED, sep = "") - - if('\\#' %in% st.lurkerjev.PRED){ - opombaLurkerji.PRED <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PRED <- NULL - } - - - # ANKETA PO PREDMETI - st.lurkerjev.PO <- ifelse(povzetek.predmetov.po.lurkerji >= 1, "\\#", "") - if(all(!is.na(st.lurkerjev.PO))) { - povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)] <- paste(povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)], st.lurkerjev.PO, sep = "") - } - - if('\\#' %in% st.lurkerjev.PO){ - opombaLurkerji.PO <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PO <- NULL - } - - - ##################################### - ## Histogrami v poglavju: POVZETEK ## - ##################################### - # We will put two histograms side by side on one page - # Histograms will present two differents components of elcturer or course (see more in report) - # Histogram for lecturer (TABLE 1.3 in the PDF report for the lecturer) - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) { #Histograme izrie v primeru, da ni NA vrednosti - - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM1.pdf"), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - - hist(povprecja.izvajalci$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.st," izvajalcev pri predmetih")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=12) # control over exactly the breakpoints between bins - points(x=subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - y=0, pch="X", cex=2.0) #Kriec v histogramu - # Drugi histogram - hist(povprecja.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.skupaj.st," izvajalcev")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5)) - points(x=subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - y=0, pch="X", cex=2.0) - dev.off() - } - - # Histogram for ANEKTA PRED, see table 1.1 in th epdf report for lecturer - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM2.pdf"), family='sans', - pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - hist(povprecja.predmeti$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.pred," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points( - x = subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - - hist(povprecja.predmeti$predmet.ocena.zadovoljstvo_mean, - xlab=c(paste0("Zadovoljstvo za\n", kvantili.zadovoljstvo," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points( - x = subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - - # Histogram for ANEKTA PO, see table 1.1 in th epdf report for lecturer - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM3.pdf"), family='sans') - hist(povprecja.predmeti.po$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - - # Kreditne Toke - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM5.pdf"), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) - hist(povprecja.predmeti.po$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - hist(povprecja.predmeti.po$predmet.ocena.krediti_mean, - xlab=c(paste0("Ustreznost KT za\n", kvantili.ustreznotsKT," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - ## //Histogrami v poglavju: POVZETEK// ## - - - ## Pojasnilo pod posameznim histogramom ## - # TABELA 1.1: ANKETA PRED - pojas.histog <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.pov.pred[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1], - digits = 1 - ), - " (\\textbf{Zadovoljstvo}) v desnem grafu. }}")) - # TABELA 1.2: ANKETA PO - pojas.histog.po <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.pov.po[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - digits = 1 - ), " (\\textbf{Ustreznost KT}) v desnem grafu.}}")) - - - # TABELA: 1.3 IZVAJALEC PRI PREDMETU - pojas.histog.izv <- c(paste0("{\\footnotesize \\textit{* Poloaj izvajalca pri predmetu \\guillemotright\\textbf{", - paste0(rownames.pov.izv[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu. \\newline ** Poloaj izvajalca (povpreje po vseh njegovih predmetih) - med vsemi izvajalci oznauje kriec X pri vrednosti ", - round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits=1), " v desnem grafu.}}")) - - ## //Pojasnilo dodatno pod histograme// ## - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.2 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - povzetek.predmetov.po <- povzetek.predmetov.po %>% - dplyr::select(-"\\rotatebox{90}{Kompetence\\,}", - -"\\rotatebox{90}{Ustreznost KT*\\,}", - everything()) - ## //vrstni red stolpcev// ## - - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in - # poimenovali vrstice ter stolpce podatkovnega okvirja zanemo z generiranjem LATEX tabel - # Generiranje tabel v poglavju POVZETEK: Tabele Povpreij ankete PRED izpitom, PO izpitu in izvajalcev pri predmetih - tex.povzetek <- c("\\section{Ocene predmetov in izvajalca}", - paste("V tabelah so prikazana povpreja na lestvicah, - kjer so tudenti oznaili strinjanje s trditvami, - ki se nanaajo na komponente pedagoke izvedbe - (1 - sploh se ne strinjam, 2 se bolj ne strinjam kot strinjam, - 3 niti se ne strinjam niti se strinjam, 4 se bolj strinjam kot ne strinjam, - 5- popolnoma se strinjam). Vpraalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - kritino nizka povpreja (1.0-2.9) pa so obarvana {\\color{BrickRed}rdee}. - Visoka povpreja (4.5-4.7), kjer je veina tudentov podala oceno - popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - najvija (4.8-5.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, - ampak je navedena pika .. Ocene za povpreja, ki temeljijo na nizkem - tevilu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so oznaene z enojnim () oziroma z dvojnim oklepajem (()). - Podrobnosti so v Metodolokih pojasnilih in tudi na \\url{http://ul.1ka.si/metodologija}."), - capture.output( - Hmisc::latex( - povzetek.predmetov.pred, - caption = "Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{7.3cm}", - longtable = TRUE, - multicol = FALSE, - insert.bottom = c(opombaPpred, opombaLurkerji.PRED), - col.just = c("c", "c|", "c", "c", "c|", "c", "c", "c", "c", "c", "c", "c|", "c"), - rowname = rownames.pov.pred - ) - ), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.1) - Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.pred),"\\textbf{predmetov} in - frekvenna porazdelitev povprenih ocen za \\textbf{Zadovoljstvo} - za", paste0(kvantili.zadovoljstvo),"\\textbf{predmetov}}", - paste0( - "\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", - izvajalec, - "_HISTOGRAM2.pdf}}" - ), - "\\end{figure}",pojas.histog)}, "\\newpage", - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo,opombaLurkerji.PO), - col.just = c("c", "c|", "c", "c", "c|", "c", "c", "c", "|c|", "c", "c"), - rowname=rownames.pov.po)), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.2) - Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.po),"\\textbf{predmetov} in - frekvenna porazdelitev povprenih ocen \\textbf{Ustreznost KT} za", - kvantili.ustreznotsKT,"\\textbf{predmetov}}", - paste0("\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", izvajalec, "_HISTOGRAM5.pdf}}"), - "\\end{figure}", pojas.histog.po)},"\\newpage", - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI,opombaLurkerji.IZV), - col.just = c("c", "c", "c|", "c", "c", "c", "c|", "c", "c", "c", "c", "c", "c|", "c"), - - rowname=rownames.pov.izv)), - # Vstavimo Histogram - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.3) - Frekvenna porazdelitev povprenih ocen \\textbf{Skupaj} za ", - kvantili.izvajalci.st, - "\\textbf{izvajalcev pri predmetih*} in frekvenna porazdelitev - povprenih ocen izvajalcev \\textbf{Skupaj}\n za", - kvantili.izvajalci.skupaj.st," \\textbf{izvajalcev}**}", - paste0("\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", izvajalec, "_HISTOGRAM1.pdf}}"), - "\\end{figure}", pojas.histog.izv)},"\\newpage") - - - # Vse vrednosti za izvajalca zapiemo v spremenljivko, ki jo na koncu uporabimo pri generiranju celotnega poroila - part$izvajalec[[izvajalec]]$povzetek <- tex.povzetek - # V novem poroilu "POVZETEK" elimo imeti samo tabele, brez kvantilnih rangov in histogramov zato spremenljivko prilagodimo - tex.povzetek.povzetek <- c( - capture.output(Hmisc::latex(povzetek.predmetov.pred, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.3cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpred.povzetek,opombaLurkerji.PRED), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowname=rownames.pov.pred)), - "\\clearpage", - - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo.povzetek,opombaLurkerji.PO), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowname=rownames.pov.po)), - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI.povzetek,opombaLurkerji.IZV), - col.just=c(rep_len("c",2),"c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowname=rownames.pov.izv))) - - part$izvajalec[[izvajalec]]$povzetek.povzetek <- tex.povzetek.povzetek - ## //Ocene predmetov in izvajalca <- skupne tabele// ## - - ## //Generiranje LATEX tabel//## - - ############################### - # PODPOGLAVJE: Kvantilni rangi# - ############################### - ## kvantili ## - if (any(kvantili.izvajalci$izvajalec.sifra == izvajalec)) { - kvantili.izvajalca <- - kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - kvantili.izvajalca.skupaj <- - kvantili.izvajalci.skupaj[kvantili.izvajalci.skupaj$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - kvantili.predmetov.pred <- - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - - kvantili.predmetov.po <- - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - - # Pojasnilo vrednosti k posamezni tabeli kvantilnih rangov - pojas <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca[1, 10], "\\%"), - " od ", - kvantili.izvajalci.st, - " - izvajalcev pri predmetih imelo nije povpreje ocen od - vrednosti izvajalca pri predmetu ", - round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - - pojas1 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta v tabeli 1.1. - Kvantilni rang ", - kvantili.predmetov.pred[1, 1], - " za predmet \\guillemotright ", - rownames.pov.izv[1], - "\\guillemotleft \\ pomeni, - da je imelo ", - paste0(kvantili.predmetov.pred[1, 1], "\\%"), - " predmetov nije tevilo vpisanih tudentov od vrednosti ", - paste0(povzetek.predmetov.pred[1, 1]), - " v tabeli 1.1.\\newline ** Kvantilni rang ", - kvantili.predmetov.pred[1, 11], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.predmetov.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo - nije povpreje ocen od vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - - - pojas2 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta - v tabeli 1.2.\\newline ** Kvantilni rang ", - kvantili.predmetov.po[1, 8], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.predmetov.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov - imelo nije povpreje od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - kvantili.predmetov.po[1, 9], - " (\\textbf{Ustreznost KT}) pa pomeni, da je (glede na tevilo kreditnih tok) ", - paste0(kvantili.predmetov.po[1, 9], "\\%"), - " vseh predmetov zahtevalo nije tevilo ur.}}" - ) - ) - - pojas3 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca.skupaj[1, 10], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.izvajalca.skupaj[1, 10], "\\%"), - " od ", - kvantili.izvajalci.skupaj.st, - " izvajalcev pri predmetih imelo nije povpreje od vrednosti izvajalca pri predmetih ", - round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - ## //pojasnilo// ## - - ## Opomba poda tabelami kvantilnih rangov ## - if (any(kvantili.izvajalca == ".")) { - opombaI <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca[1, 10], "\\%"), - " od ", - kvantili.izvajalci.st, - " izvajalcev pri predmetu - imelo nije povpreje od vrednosti ", - round( - subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - } else { - opombaI <- pojas - } - if (any(kvantili.izvajalca.skupaj == ".")) { - opombaIs <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca.skupaj[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca.skupaj[1, 10], "\\%"), - " od ", - kvantili.izvajalci.skupaj.st, - " izvajalcev pri predmetih imelo nije povpreje - od vrednosti ", - round( - subset(povprecja.izvajalci.skupaj, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = - 1 - ), - - " (\\textbf{Skupaj}) v tabeli 1.3. Glej tudi desno sliko 1.3.}}"))} else { - opombaIs <- pojas3 - } - - if (any(kvantili.predmetov.pred == ".")) { - opombaPpred <- - c( - paste( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.1, - Kvantilni rang ", - kvantili.predmetov.pred[1, 1], - " za predmet - \\guillemotright ", - rownames.pov.izv[1], - "\\guillemotleft \\ pomeni, da je imelo ", - paste0(kvantili.predmetov.pred[1, 1], "\\%"), - " izvajalcev pri predmetih v Povpreju nije tevilo vpisanih - tudentov od vrednosti ", - paste0(povzetek.predmetov.pred[1, 1]), - " v tabeli 1.1. - \\newline ** Kvantilni rang ", - kvantili.predmetov.pred[1, 11], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo nije povpreje - od vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - } else { - opombaPpred <- pojas1 - } - if (nrow(kvantili.predmetov.po) > 0) { - if (any(kvantili.predmetov.po == ".")) { - opombaPpo <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.2. - \\newline ** Kvantilni rang ", - kvantili.predmetov.po[1, 8], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov imelo nije povpreje od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang " - , - kvantili.predmetov.po[1, 9], - " (\\textbf{Ustreznost KT} pa pomeni, da je (glede na tevilo kreditnih tok) ", - paste0(kvantili.predmetov.po[1, 9], "\\%"), - " vseh predmetov nije - tevilo ur.}}" - ) - ) - } - else { - opombaPpo <- pojas2 - } - } - - ## //opomba kvantili// ## - - # Imena vrstic v tabelah kvantilnih rangov - rownames.kvantili.izvajalca <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra == - izvajalec, "ime.predmeta"] - ))) - - rownames.kvantili.predmetov.pred <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - ))) - - rownames.kvantili.predmetov.po <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - ))) - # V kolikor predmeta sploh n bilo v bazi ANKETA PO, ime poiemo v anketi PRED - if(!length(rownames.kvantili.predmetov.po) > 0) { - rownames.kvantili.predmetov.po <- rownames.kvantili.predmetov.pred - } - - - # V primeru, da bi eleli pri predmetu v tabeli 1.1 dodati oznako X, da je takoj jasno, na kateri predmet se X v histogramu nanaa) - rownames.kvantili.izvajalca[1] = paste(rownames.kvantili.izvajalca[1], "**", sep = " ") - rownames.kvantili.predmetov.pred[1] = paste(rownames.kvantili.predmetov.pred[1], "**", sep = " ") - rownames.kvantili.predmetov.po[1] = paste(rownames.kvantili.predmetov.po[1], "**", sep = " ") - - # Imena stolpcev za tabele - colnames(kvantili.izvajalca) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.izvajalca.skupaj) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.predmetov.pred) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.predmetov.po) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj**}", - as.character(paste0(vars.predmet$krediti$ime.kratko, "*")) - ) - ) - - # explain what specific quantile means - primer.kvantil <- - kvantili.izvajalca[, ncol(kvantili.izvajalca)][kvantili.izvajalca[, ncol(kvantili.izvajalca)] != "."][1] - if (is.na(primer.kvantil)) { - primer.kvantil <- "." - } - - # Interpretacija vrednosti kvantilnih rangov v tabelah: glej poroilo za izvajalca, podpoglavje Kvantilni rangi. - opredelitev.kvantili <- paste("Kvantilni rangi oznaujejo poloaj predmeta - oziroma izvajalca med vsemi predmeti oziroma - izvajalci celotne fakultete.\nZgornja etrtina - (75-100) je obarvana {\\color{Chateau Green}zeleno}, - zgornja desetina (90-100) {\\color{Blue Stone}temnozeleno}. - Spodnja etrtina (0-25) je obarvana {\\color{Orange}oranno}, - spodnja desetina (0-10) {\\color{BrickRed}rdee}. - Podrobnosti so v metodolokih navodilih na koncu poroila in - na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki.") - - pojasnilo.kvantili1 <- paste("Primer interpretacije vrednosti v tabeli 1.5:\nKvantilni rang" - , kvantili.izvajalca.skupaj[10], "(\\textbf{Skupaj}) pomeni, - \nda ima", paste0(kvantili.izvajalca.skupaj[10], "\\%"), - "od skupno",kvantili.izvajalci.skupaj.st," izvajalcev nije - povpreje ocenjenih komponent (\\textbf{Skupaj}) za izvajalca pri predmetih - od vrednosti izvajalca", round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - digits = 1 - ), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili2 <- paste("Primer interpretacije vrednosti v tabeli 1.4:\nKvantilni rang", - primer.kvantil, "(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.pov.izv[1],"\\guillemotleft\\ pomeni, da je", - paste0(primer.kvantil, "\\%"), " od skupno", kvantili.izvajalci.st, - "izvajalcev pri predmetih imelo nije povpreje ocenjenih - komponent od vrednosti",round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili4 <- paste("Primer interpretacije vrednosti v tabeli 1.7:\nKvantilni rang", - kvantili.predmetov.po[1,8],"(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.kvantili.predmetov.po[1], "\\guillemotleft\\ pomeni, \nda je", - paste0(kvantili.predmetov.po[1,8], "\\%"), "od skupno", kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocenjenih komponent od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), "(\\textbf{Skupaj}) v tabeli 1.3. Glej tudi sliko 1.3.") - ## //Interpretacija// ## - - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.5 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) + - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - kvantili.predmetov.po <- kvantili.predmetov.po[c(1,2,3,5,6,7,8,4,9)] - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in ppimenovali vrstice ter stolpce podatkovnega okvirja - # zanemo z generiranjem LATEX tabel za podpoglavje: kvantilni rangi - part$izvajalec[[izvajalec]]$kvantili <- c("\\section{Kvantilni rangi}", opredelitev.kvantili, - - capture.output(Hmisc::latex(kvantili.predmetov.pred, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.pred), - " predmeti (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpred, - rowlabel.just='p{9cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$pred)),'|c'), - rowname=rownames.kvantili.predmetov.pred)), - - - capture.output(Hmisc::latex(kvantili.predmetov.po, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.po), - " predmeti (anketa PO izpitu)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpo, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$po[-1])),'|c','|c','c'), - rowname=rownames.kvantili.predmetov.po)), - - - capture.output(Hmisc::latex(kvantili.izvajalca, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetih} ", - paste0("med ",kvantili.izvajalci.st, - " izvajalci pri predmetih "), - " (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaI, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname=rownames.kvantili.izvajalca)), - - - capture.output(Hmisc::latex(kvantili.izvajalca.skupaj, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca} ", - paste0("med ", kvantili.izvajalci.skupaj.st, - " izvajalci")," (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaIs, - rowlabel.just='p{10cm}', - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname="\\textbf{Povpreje izvajalca**}")),"\\newpage") - - - - } else {part$izvajalec[[izvajalec]]$kvantili <- NULL} - ## /kvantili/ ## - - ## //Generiranje LATEX tabel// ## - - - - ################################################################################# - ###Sumarne ocene tudijskih programov (Poglavje pred metodolokim pojasnilom)#### - ################################################################################# - #Izpis Tabel: Povpreja za ocene komponent vseh programov, v katerih je izvajalec sodeloval - - - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - izv.prog <- - subset(povprecja.izvajalci.programi, - izvajalec.sifra == izvajalec & predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(izv.prog) > 0) { - - # Get the programmes ID of lecturer - lect.pr <- izv.prog$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.izv <- subset(povprecja.izvajalci.programi, - program.studentov %in% lect.pr & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.izv <- aggregate( - prog.izv[paste0(vars.izvajalec$cont$vars, "_mean")], - by = list(prog.izv$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - # En Izvajalec ima lahko ve predmetov - n.prog.ipp <- aggregate(prog.izv$izvajalec.sifra, - by = prog.izv[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(x)) - - # Create df with means and number of IFF in programme - m.prog.izv <- - merge( - n.prog.ipp, - m.prog.izv, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.izv) <- make.unique(as.character(m.prog.izv$program.studentov.ime)) - # Select columns for latex tables - m.prog.izv <- m.prog.izv %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes - m.prog.izv <- cbind(m.prog.izv, Skupaj = rowMeans(m.prog.izv[, 2:ncol(m.prog.izv)], na.rm = TRUE)) - # Col mean - m.prog.izv <- rbind(m.prog.izv, c("--", colMeans(m.prog.izv[2:ncol(m.prog.izv)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See fuctom function formatval - m.prog.izv <- formatval(m.prog.izv) - - # Add rownames - rownames(m.prog.izv)[nrow(m.prog.izv)] <- "\\hline \\textbf{Povpreje programov}" - # Add colnames - colnames(m.prog.izv) <- latex.rotate(c("t. IPP", - as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars]), - "\\textbf{Skupaj}")) - # Generating LATEX table - izv.prog.tex <- capture.output(Hmisc::latex(m.prog.izv, - caption = "Ocene komponent - \\textbf{izvajalcev pri predmetih} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel = "", - file = "", - where = "H", - multicol = FALSE, - rowlabel.just = "A{9.5cm}", - insert.bottom = paste( - "{\\footnotesize \\textit{- Podatek je - manj pomemben ali teko izraunljiv. - \\newline ** t. IPP - tevilo vseh - izvajalcev pri predmetih na doloenem programu.}}" - ), - col.just = c("c|", - rep_len("c", length(vars.izvajalec$cont$vars)), "|c"))) - } else { - - izv.prog.tex <- "Ni ocen" - } - - part$izvajalec[[izvajalec]]$progIPP <- izv.prog.tex - ######### - - - - ## OCENE PROGRAMOV PO PREDMETIH ## - ##ANKETA PRED IZPITOM - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - pr.prog.pred <- - subset(povprecja.predmeti.programi, - predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(pr.prog.pred) > 0) { - - # Get the programmes - pr.pred <- pr.prog.pred$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.pred <- subset(povprecja.predmeti.programi, - program.studentov %in% pr.pred & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.pred <- aggregate( - prog.pred[paste0(vars.predmet$cont$pred, "_mean")], - by = list(prog.pred$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - n.prog.pred <- aggregate(prog.pred$predmet.sifra, - by = prog.pred[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(unique(x))) - - # Create df with means and number of IFF in programme - m.prog.pred <- - merge( - n.prog.pred, - m.prog.pred, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.pred) <- make.unique(as.character(m.prog.pred$program.studentov.ime)) - # Select columns for latex tables - m.prog.pred <- m.prog.pred %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes - m.prog.pred <- cbind(m.prog.pred, Skupaj = rowMeans(m.prog.pred[, 2:ncol(m.prog.pred)], na.rm = TRUE)) - # Col mean - m.prog.pred <- rbind(m.prog.pred, c("--", colMeans(m.prog.pred[2:ncol(m.prog.pred)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See fuctom function formatval - m.prog.pred <- formatval(m.prog.pred) - - # Add rownames - rownames(m.prog.pred)[nrow(m.prog.pred)] <- "\\hline \\textbf{Povpreje programov}" - # Add colnames - colnames(m.prog.pred) <- latex.rotate(c("t. predmetov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}")) - # Generating LATEX table - prog.pred.tex <- capture.output(Hmisc::latex(m.prog.pred, - caption = "Ocene komponent \\textbf{predmetov} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel = "", - file = "", - multicol = FALSE, - where = "H", - rowlabel.just = "A{9.5cm}", - insert.bottom = paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just = c("c|", rep_len("c", length(vars.predmet$cont$pred)), "|c"))) - } else { - prog.pred.tex <- "Ni ocen." - } - part$izvajalec[[izvajalec]]$progPRED <- prog.pred.tex - - ##ANKETA PO IZPITU## - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - pr.prog.po <- - subset(povprecja.predmeti.programi.PO, - predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(pr.prog.po) > 0) { - - # Get the programmes - pr.po <- pr.prog.po$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.po <- subset(povprecja.predmeti.programi.PO, - program.studentov %in% pr.po & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.po <- aggregate( - prog.po[c(paste0(vars.predmet$cont$po, "_mean"), "predmet.ocena.krediti_mean")], - by = list(prog.po$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - n.prog.po <- aggregate(prog.po$predmet.sifra, - by = prog.po[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(unique(x))) - - # Create df with means and number of IFF in programme - m.prog.po <- - merge( - n.prog.po, - m.prog.po, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.po) <- make.unique(as.character(m.prog.po$program.studentov.ime)) - # Select columns for latex tables - m.prog.po <- m.prog.po %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes (colmeans from 3 components) - m.prog.po <- cbind(m.prog.po, Skupaj = rowMeans(m.prog.po[, 3:5], na.rm = TRUE)) - # Reorder columns due to the fact the components from ANKETA PO consist of: vsebine, naloge, kriteriji - m.prog.po <- m.prog.po %>% - dplyr::select(-predmet.ocena.kompetence_mean, - -predmet.ocena.krediti_mean, - everything()) - - # Col mean - m.prog.po <- rbind(m.prog.po, c("--", colMeans(m.prog.po[2:ncol(m.prog.po)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See custom function formatval - # Remember in anketa PO we also have KREDITNE TOKE - m.prog.po <- formatval(m.prog.po, KT = TRUE) - - # Add rownames - rownames(m.prog.po)[nrow(m.prog.po)] <- "\\hline \\textbf{Povpreje programov}" - - # Add colnames - colnames(m.prog.po) <- latex.rotate(c("t. predmetov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT*" - )) - - - # Generating LATEX table - prog.po.tex <- capture.output(Hmisc::latex(m.prog.po, - caption="Ocene komponent \\textbf{predmetov} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel="", - file="", - where="H", - multicol = FALSE, - rowlabel.just="A{10cm}", - insert.bottom=paste("{\\footnotesize \\textit{ - -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}Oranno} - so oznaena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in - ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita - odstopanja (pod {\\color{BrickRed}2.4}) - in (nad {\\color{BrickRed}3.6}}})."), - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"))) - } else { - prog.po.tex <- "Ni ocen." - } - - part$izvajalec[[izvajalec]]$progPO <- prog.po.tex - ######### -} -#------------------------------------------- //IZVAJALEC// ----------------------------------------------# - - -####################################### -#' DATA NEEDED FOR PDF REPORT: @PART II -####################################### -#--------------------------------------------- PREDMET ------------------------------------------------# -predmeti <- NULL -if (omejeniIzvajalci) { - sifrePredmet <- - as.character(unique(data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% sifreIzvajalec])) -} else {sifrePredmet <- as.character(unique(data.izvajalci$predmet.sifra))} - -for (predmet in sifrePredmet){ - - # course average # - # ANKETA PRED - pr.pred.tmp <- subset(povprecja.predmeti, predmet.sifra == predmet) - # ANKETA PO - pr.po.tmp <- subset(povprecja.predmeti.po, predmet.sifra == predmet) - - # Anketa PRED - data.pred.tmp <-subset(data.predmeti, predmet.sifra == predmet & veljavna) - # Anketa PO - data.po.tmp <- subset(data.predmeti.po, predmet.sifra == predmet & veljavna) - - - #kdo so izvajalci predmeta - izvajalci.predmeta <- - unique(subset(data.izvajalci, predmet.sifra == predmet)$izvajalec.sifra) - - if (omejeniIzvajalci) { - izvajalci.predmeta <- - izvajalci.predmeta[izvajalci.predmeta %in% sifreIzvajalec] - } - - ## stopnja sodelovanja ## - stopnjaPredmeta <- pr.pred.tmp$STOPNJA - if (stopnjaPredmeta==1) { - # Faculty string - Fstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - Fstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', pr.pred.tmp$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - Fstring <- '' - } - - imepredmeta <- sub("^BD |^BP ", "", pr.pred.tmp$ime.predmeta) # ime brez BD/BP predpone - imepredmeta <- gsub('_', '\\_', imepredmeta, fixed=T) # pravilni izpis podrtaja v pdf izpisu "_" - imepredmeta <- gsub('&', '\\&', imepredmeta, fixed=T) # pravilni izpis in v pdf izpisu "&" - - - ##Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PRED IZPITOM - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_response_pred_izpitom.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar = (c(4, 4, 1, 13) + 0.1), - mgp = c(3, 2, 0), - xpd = TRUE) - ## Make the matrix for barplot - mat.pred <- cbind( - c( - pr.pred.tmp$sodelujocih.pct, - pr.pred.tmp$zavrnjenih.pct, - pr.pred.tmp$neodzivnih.pct - ), - c(Fpred[as.character(stopnjaPredmeta), "sodelujocih.pct"], - Fpred[as.character(stopnjaPredmeta), "zavrnjenih.pct"], - Fpred[as.character(stopnjaPredmeta), "neodzivnih.pct"]) - ) - - ## Get the y-values for text - ys.pred <- - apply(mat.pred, 2, function(x) - c(x[1] / 2, head(cumsum(x), -1) + tail(x, -1) / 2)) - - ## Make barplot, store mat.pred data - xs.pred <- barplot( - mat.pred, - names.arg = c('Predmet\n', Fstring[2]), - col = c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim = c(0, 100), - space = c(0, 1) - ) - - ## Add text - text(rep(xs.pred, each = nrow(ys.pred)), c(ys.pred), labels = paste0(round(c(mat.pred), 0), "%")) - legend( - "topright", - inset = c(-0.55, 0), - legend = c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col = c("mistyrose1", "dodgerblue3", "firebrick3"), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ############### - - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PO IZPITU - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_response_po_izpitu.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar = (c(4, 4, 1, 13) + 0.1), - mgp = c(3, 2, 0), - xpd = TRUE) - ## Make the matrix for barplot - mat.po <- cbind( - c( - pr.po.tmp$sodelujocih.pct, - pr.po.tmp$zavrnjenih.pct, - pr.po.tmp$neodzivnih.pct - ), - c(Fpo[as.character(stopnjaPredmeta), "sodelujocih.pct"], - Fpo[as.character(stopnjaPredmeta), "zavrnjenih.pct"], - Fpo[as.character(stopnjaPredmeta), "neodzivnih.pct"]) - ) - - ## Get the y-values for text - ys.po <- - apply(mat.po, 2, function(x) - c(x[1] / 2, head(cumsum(x), -1) + tail(x, -1) / 2)) - - ## Make barplot, store mat.po data - xs.po <- barplot( - mat.po, - names.arg = c('Predmet\n', Fstring[2]), - col = c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim = c(0, 100), - space = c(0, 1) - ) - - ## Add text - text(rep(xs.po, each = nrow(ys.po)), c(ys.po), labels = paste0(round(c(mat.po), 0), "%")) - legend( - "topright", - inset = c(-0.55, 0), - legend = c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col = c("mistyrose1", "dodgerblue3", "firebrick3"), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ##### - - - - # Olepavanje slovnice pri izpisu Delea odgovorov: glej tekst, ki se pojavi v drugem poglavju pri izpisu za izvajalca - if (pr.pred.tmp$N_neodzivnih == 1) { # here - odziv <- "ni pristopil" - } else if (pr.pred.tmp$N_neodzivnih == 2){ - odziv <- "nista pristopila" - } else if (pr.pred.tmp$N_neodzivnih == 3 | pr.pred.tmp$N_neodzivnih == 4){ - odziv <- "niso pristopili" - } else { - odziv <- "ni pristopilo" - } - - - # parti predmeta - # cele parte dela smo kjer je dovolj enot - if (pr.pred.tmp$N_anket >= minEnot | isTRUE(pr.po.tmp$N_anket >= minEnot)) { - - tex.sodelovanje <- - c( - paste0( - "Na evalvacijski vpraalnik za predmet \\guillemotright ", - imepredmeta, - "\\guillemotleft \\ PRED izpitom - je (vsaj deloma) odgovarjalo ", - pr.pred.tmp$N_anket, - " od skupno ", - pr.pred.tmp$ST_STUD, - " vpisanih tudentov. Pri posameznih vpraanjih je lahko - tevilo nesodelujoih nekoliko veje (neodgovor spremenljivke). Dodatnih ", - pr.pred.tmp$N_zavrnjenih, - " tudentov je zavrnilo izpolnjevanje ankete, ", - pr.pred.tmp$N_neodzivnih, - " pa k izpolnjevanju ", - odziv, - ". ", - "Odstotek sodelujoih znaa - \\textbf{", - round(pr.pred.tmp$sodelujocih.pct), - "\\%}, ", - "kar lahko primerjamo s povprejem - \\textbf{", - round(Fpred[as.character(stopnjaPredmeta), "sodelujocih.pct"]), - "\\%} vseh ", - Fstring[1], - " predmetov na ", - fakulteta, - ".", - sep = "" - ), - "\\newline", - "\\begin{figure}[H]", - # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PRED izpitom)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_response_pred_izpitom.pdf}}" - ), - "\\end{figure}", - paste0( - "Na anketo PO izpitu je odgovarjalo ", - paste0(pr.po.tmp$N_anket), - " tudentov, kar je \\textbf{", - round(pr.po.tmp$sodelujocih.pct), - "\\%} vseh vpisanih tudentov. ", - "povpreje deleev za vse dodiplomske predmete na ", - fakulteta, - " je znaalo \\textbf{", - round(Fpo[as.character(stopnjaPredmeta), - "sodelujocih.pct"]), - "\\%}." - ), - "\\begin{figure}[H]", - # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PO izpitu)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_response_po_izpitu.pdf}}" - ), - "\\end{figure}" - ) - - part$predmet[[predmet]]$response <- tex.sodelovanje - ## /stopnja sodelovanja/ ## - - - ## tEVILSKE ## - # ANKETI PRED IN PO SKUPAJ - tabela.cont <- cbind.data.frame( - # tevilo odgovorov - N = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_N")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_N")])), - # Povpreje komponent predmeta - mean = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_mean")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_mean")])), - # Standardni odklon komponent - sd = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_sd")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_sd")])), - # Standardni odklon komponent - min = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_min")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_min")])), - # max vrednost komponent - max = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_max")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_max")])) - ) - - # For radar chart - radar.c <- tabela.cont - # IF there are NA values for LATEX TABLE purposes we want to have "." instead - tabela.cont[is.na(tabela.cont)] <- "." - - # Footnote under latex table in case there is not enough data (less than 4) - if (any(tabela.cont$N == ".")) { - opomba <- - '{\\footnotesize {. Podatek ni prikazan zaradi - premajhnega tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' -} else { - opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}" - } - - # Faculty mean for all courses - F.course <- data.frame(c(F.avg.pred[paste0(vars.predmet$cont$pred,"_mean")], - F.avg.po[paste0(vars.predmet$cont$po[-1],"_mean")])) - colnames(F.course) <- 'Fmean' - tabela.cont <- cbind(tabela.cont, F.course) - - - - ## radar graf ## - if (sum(!is.na(radar.c$mean)) < 4) { - radar.c$mean <- - radar.c$mean[!is.na(radar.c$mean)] <- - NA - } # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- - data.frame(rbind(5, 1, t(cbind( - F.course, as.numeric(radar.c$mean) - ))), - row.names = 1:4, - check.names = F) - colnames(radar.cont) <- - sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[c(vars.predmet$cont$pred, vars.predmet$cont$po[-1])])) - # Dodamo zvezdice, da loimo komponente v anekti PO do komponent v anekti PRED - # Bi se dalo veliko enostavneje (samo zandjim trem vrsticam damo zvezdice a zanekrat pustimo :) ) - colnames(radar.cont)[colnames(radar.cont) %in% as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])] <- - paste0(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), "*") - - - # Export Radar chart to PDF with CAIRO - CairoPDF( - paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_cont.pdf"), - family = 'sans', - pointsize = 9, - width = 6, - height = 4 - ) - - par(mar = (c(0, 4, 1, 6) + 0.1), xpd = TRUE) - fmsb::radarchart( - radar.cont, - pcol = c('dodgerblue3', 'firebrick3'), - cglcol = 'gray75', - plwd = 2, - plty = 1, - cglwd = 1, - cglty = 1, - seg = 4, - axistype = 1, - caxislabels = c(1:5), - axislabcol = 'gray25', - centerzero = TRUE - ) - legend( - 'topright', - inset = c(-0.15, 0), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - col = c('firebrick3', 'dodgerblue3'), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ## /radar graf/ ## - - - # LOENI TABELI FREKVENIH PORAZDELITEV IN DELEEV ZA ANKETO PRED IN ANKETO PO - # Anketa PRED - tabela.pred <- - rbind( - # Komponente, ki nastopajo v anketi PRED - tabela.cont[1:7,], - c( - '', - pr.pred.tmp$predmet.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont[1:7, ]$Fmean, na.rm = TRUE) - ) - ) - # Tidy numbers (color, parenthesis etc.) - tabela.pred <- formatval(tabela.pred) - tabela.pred$N[length(tabela.pred$N == ".")] <- NA - - - # frekvence - dist.pred <- t(sapply(data.pred.tmp[, vars.predmet$cont$pred], - function(x) - table(factor(x, levels = someMiss.pred)))) - - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.1 <- round((rowSums(dist.pred[,1:2], na.rm = TRUE)) / (rowSums(dist.pred, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.2 <- round((rowSums(dist.pred[,4:5], na.rm = TRUE)) / (rowSums(dist.pred, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.1 <- ifelse(tabela.pred$mean == ".", ".", dist.pct.1) - dist.pct.2 <- ifelse(tabela.pred$mean == ".", ".", dist.pct.2) - - # Barvanje vrednosti - dist.pct.1 <- ifelse(dist.pct.1 != "." & dist.pct.1 >= 20, paste('{\\color{Orange}', dist.pct.1, '}'),dist.pct.1) - dist.pct.2 <- ifelse(dist.pct.2 != "." & dist.pct.2 <= 50, paste('{\\color{Orange}', dist.pct.2, '}'),dist.pct.2) - - tabela.pred.pct <- qpcR:::cbind.na(tabela.pred, dist.pct.1, dist.pct.2) - - - # tevilo odgovorov fakultete na spremenljivke ankete PRED IZPITOM - dist.pred.fakulteta <- subset(data.predmeti, veljavna) - - dist.pred.f <- - t(sapply(dist.pred.fakulteta[, vars.predmet$cont$pred], - function(x) - table(factor(x, levels = someMiss.pred)))) - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - dist.pct.F.1 <- round((rowSums(dist.pred.f[,1:2], na.rm = TRUE))/ (rowSums(dist.pred.f, na.rm = TRUE)) * 100, 0) - dist.pct.F.2 <- round((rowSums(dist.pred.f[,4:5], na.rm = TRUE)) / (rowSums(dist.pred.f, na.rm = TRUE)) * 100, 0) - - dist.pct.F.1 <- ifelse(dist.pct.F.1 >= 20, paste('{\\color{Orange}', dist.pct.F.1, '}'),dist.pct.F.1) - dist.pct.F.2 <- ifelse(dist.pct.F.2 <= 50, paste('{\\color{Orange}', dist.pct.F.2, '}'),dist.pct.F.2) - - - # Combine - tabela.pred.pct <- qpcR:::cbind.na(tabela.pred.pct, dist.pct.F.1, dist.pct.F.2) - # /Porazdelitev delei/# - - # Select columns for Latex table pruposes - tabela.pred.pct <- - subset( - tabela.pred.pct, - select = c( - N, # Number of answers for each component in ANKETA PRED - mean, # Lecturers course mean for each component in ANKETA PRED - dist.pct.1, # Percentage of course answers for each component (frequnecy 1 and 2) - dist.pct.2, # Percentage of course answers for each component (frequnecy 4 and 5) - Fmean, # Faculty course mean for each component in ANKETA PRED - dist.pct.F.1, # Percentage of faculty answers with frequnecy 1 and 2 - dist.pct.F.2 # Percentage of faculty answers with frequnecy 1 and 2 - ) - ) - - tabela.pred.pct[nrow(tabela.pred.pct), c(1, 3, 4)] <- NA - - # Add rownames for latex table purposes - rownames(tabela.pred.pct) <- - c(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]), - '\\hline\n\\textbf{Skupaj}') - # Add aslo colnames - colnames(tabela.pred.pct) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.pred.tex <- capture.output(Hmisc::latex(toLatex(tabela.pred.pct), - caption = "Povpreja in delei kategorij odgovorov - za komponente \\textbf{predmeta} - (anketa PRED izpitom)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(4, 3), - col.just = rep_len('c', ncol(tabela.pred.pct)), - rowlabel.just = 'p{7cm}', - insert.bottom = opomba)) - - - # WE DO SIMILAR ALSO FOR ANKETA PO - tabela.po <- - rbind( - # Komponente, ki nastopajo v anketi PRED - tabela.cont[8:10,], - c( - '', - pr.po.tmp$predmet.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont[8:10, ]$Fmean, na.rm = TRUE) - ) - ) - # Tidy numbers (color, parenthesis etc.) - tabela.po <- formatval(tabela.po) - - - # frekvence - dist.po <- t(sapply(data.po.tmp[, vars.predmet$cont$po[-1]], - function(x) - table(factor(x, levels = someMiss.po)))) - - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.po.1 <- round((rowSums(dist.po[,1:2], na.rm = TRUE)) / (rowSums(dist.po, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.po.2 <- round((rowSums(dist.po[,4:5], na.rm = TRUE)) / (rowSums(dist.po, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.po.1 <- ifelse(tabela.po$mean == ".", ".", dist.pct.po.1) - dist.pct.po.2 <- ifelse(tabela.po$mean == ".", ".", dist.pct.po.2) - - - # Barvanje vrednosti - dist.pct.po.1 <- ifelse(dist.pct.po.1 != "." & dist.pct.po.1 >= 20, paste('{\\color{Orange}', dist.pct.po.1, '}'), dist.pct.po.1) - dist.pct.po.2 <- ifelse(dist.pct.po.2 != "." & dist.pct.po.2 <= 50, paste('{\\color{Orange}', dist.pct.po.2, '}'), dist.pct.po.2) - ## /Porazdelitev delei / ## - - # Cbind for latex table purposes - tabela.po.pct <- qpcR:::cbind.na(tabela.po, dist.pct.po.1, dist.pct.po.2) - - - # tevilo odgovorov fakultete na spremenljivke ankete PRED IZPITOM - dist.po.fakulteta <- subset(data.predmeti.po, veljavna) - - dist.po.f <- - t(sapply(dist.po.fakulteta[, vars.predmet$cont$po[-1]], - function(x) - table(factor(x, levels = someMiss.po)))) - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - dist.pct.F.po.1 <- round((rowSums(dist.po.f[,1:2], na.rm = TRUE))/ (rowSums(dist.po.f, na.rm = TRUE)) * 100, 0) - dist.pct.F.po.2 <- round((rowSums(dist.po.f[,4:5], na.rm = TRUE)) / (rowSums(dist.po.f, na.rm = TRUE)) * 100, 0) - - dist.pct.F.po.1 <- ifelse(dist.pct.F.po.1 >= 20, paste('{\\color{Orange}', dist.pct.F.po.1, '}'), dist.pct.F.po.1) - dist.pct.F.po.2 <- ifelse(dist.pct.F.po.2 <= 50, paste('{\\color{Orange}', dist.pct.F.po.2, '}'), dist.pct.F.po.2) - # Combine - tabela.po.pct <- qpcR:::cbind.na(tabela.po.pct, dist.pct.F.po.1, dist.pct.F.po.2) - # /Porazdelitev delei/# - - # Select columns for Latex table pruposes - tabela.po.pct <- - subset( - tabela.po.pct, - select = c( - N, # Number of answers for each component in ANKETA PRED - mean, # Lecturers course mean for each component in ANKETA PRED - dist.pct.po.1, # Percentage of course answers for each component (frequnecy 1 and 2) - dist.pct.po.2, # Percentage of course answers for each component (frequnecy 4 and 5) - Fmean, # Faculty course mean for each component in ANKETA PRED - dist.pct.F.po.1, # Percentage of faculty answers with frequnecy 1 and 2 - dist.pct.F.po.2 # Percentage of faculty answers with frequnecy 1 and 2 - ) - ) - - # Pri N (tevilu anket) le te v vrstici "Skupaj" - # nadomestimo z NA da se to en prikae v Latex tabeli - tabela.po.pct[nrow(tabela.po.pct), c(1, 3, 4)] <- NA - - # Add rownames for latex table purposes - rownames(tabela.po.pct) <- - c(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$po[-1]]), - '\\hline\n\\textbf{Skupaj}') - # Add aslo colnames - colnames(tabela.po.pct) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.po.tex <- capture.output(Hmisc::latex(toLatex(tabela.po.pct), - caption = "Povpreja in delei kategorij odgovorov - za komponente \\textbf{predmeta} - (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(4, 3), - col.just = rep_len('c', ncol(tabela.po.pct)), - rowlabel.just = 'p{7cm}', - insert.bottom = opomba)) - - - - ################################# - # -- TABELA: Frekvenna porazdelitev odgovorov za komponente predmeta (anketi PRED in PO izpitu) --- # - - ## podrobna porazdelitev ocen za ANKETO PRED IN PO ## - # Get data - dist.course <- rbind(dist.pred, dist.po) - # We also want to have the number of all answers for each component - # And also add Sd, min and max - dist.course <- cbind(dist.course, tabela.cont[c("N", "sd", "min", "max")]) - # Shorten colnames for latex table purposes - colnames(dist.course)[colnames(dist.course) == "Ne elim odgovoriti"] <- "Ne elim odg." - colnames(dist.course)[colnames(dist.course) == "Nimam dovolj informacij"] <- "Nimam informacij" - - if (any(is.na(dist.course))) { - opomba.dist <- - paste( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - - \\newline * Komponente ankete PO izpitu so oznaene z zvezdico.}}" - ) - } else { - opomba.dist <- - paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}" - ) - } - # IF the number of answers is less than 4 we do not show values - dist.course[dist.course$N < 4,] <- "." - # Tidy data - dist.course[8:9] <- formatval(dist.course[8:9]) - # Rownames of components ANKETA PRED in ANKETA PO - rownames(dist.course) <- - c( - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), # Komponente anekte PRED - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]) # Komponente ankete PO - ) - - # a line seperating questions before/after exam - rownames(dist.course)[ rownames(dist.course) == "Vsebine"] <- "\\hline\nVsebine" - - #ankete po izpitu oznaimo/loimo z zvedzico - rownames(dist.course)[8:10] <- paste0(rownames(dist.course)[8:10], "*") - - # Colnames for Latex tables - colnames(dist.course) <- - c( - "\\textbf{1}", - "\\textbf{2}", - "\\textbf{3}", - "\\textbf{4}", - "\\textbf{5}", - "\\textbf{Ne elim odg.}", - "\\textbf{Nimam informacij}", - "\\textbf{Skupaj}", - "\\textbf{Sd}", - "\\textbf{Min}", - "\\textbf{Max}" - ) - - # Compile latex table - distribution.tex <- capture.output(Hmisc::latex(dist.course, - caption = 'Frekvenna porazdelitev odgovorov za - komponente \\textbf{predmeta} - (anketi PRED in PO* izpitu)', - rowlabel = '\\textbf{Komponente}', - file = '', - where = 'H', - col.just = rep_len("c", ncol(dist.course)), - insert.bottom = opomba.dist)) - ## /podrobna porazdelitev ocen/ ## - # Add "fotnote" below radar chart pocture - pojasnilo.radar <- - paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}") - - # Create content - part$predmet[[predmet]]$cont <- c( - tabela.pred.tex, - tabela.po.tex, - "\\begin{figure}[H]", - "\\caption{Povprene ocene komponent \\textbf{predmeta} (anketi PRED in PO* izpitu)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_cont.pdf}}" - ), - "\\end{figure}", - pojasnilo.radar, - distribution.tex - ) - - ## /tEVILSKE/ ## - - - - ## PORABLJENO tEVILO UT (USTREZNOST KT) ## - krediti <- cbind.data.frame( - n = as.numeric(pr.po.tmp[paste0("krediti_razporejanje_n_", 1:5)]), - "\\hfill%" = as.numeric(pr.po.tmp[paste0("krediti_razporejanje_pct_", 1:5)]), - "\\hfill%" = as.numeric(F.avg.KT.likert) - ) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - # barplot # - CairoPDF( paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_krediti.pdf"), - family='sans', pointsize=9, width=6, height=4.5) - par(mar = (c(4, 5, 4, 5) + 0.1), - mgp = c(3, min(2, max(1, 0)), 0), - xpd = TRUE) - barplot( - t(krediti[, 2:3]), - beside = TRUE, - col = c('firebrick3', 'dodgerblue3'), - names.arg = as.character(unlist(vars.predmet$krediti$labele.graf)), - ylim = c(0, 100), - cex.names = 0.9, - las = 1, - axis.lty = 1 - ) - abline(h = 0, xpd = FALSE, col = 'black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', - line = 1.25, - cex = 0.9, - adj = 0) - legend( - 'topright', - inset = c(-0.15,-0.05), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - fill = c('firebrick3', 'dodgerblue3'), - bty = 'n' - ) # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - - if (nrow(pr.po.tmp) > 0){ - if (pr.po.tmp$predmet.ocena.krediti_N < minEnot) { - opomba <- - '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita odstopanja - (pod {\\color{BrickRed}2.3} in nad {\\color{BrickRed}3.6}). - so oznaena odstopanja (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}).}}' - } else { - opomba <- - '{\\footnotesize \\textit{ ** {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja - (pod {\\color{BrickRed}2.3} in nad {\\color{BrickRed}3.6}). - so oznaena odstopanja (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}).}}' - } - } - - krediti <- rbind(krediti, c(pr.po.tmp$predmet.ocena.krediti_N, colSums(krediti[,2:3]))) - # Also manually round second and third column for latex table purposes - krediti[,2:3] <- round(krediti[,2:3]) - # Preverimo ali je tevilo odgovorov manje od 4. V tem primeru vrednosti en prikaemo - krediti[,2] <- ifelse(krediti$n < 4, ".", krediti[,2]) - # Add parenthesis for first column if neccessary (Number of answers) - krediti <- formatval(krediti) - - #K Deleem v tabeli dodatmo Povpreje predmeta in Povpreje celotne fakultete - # Povpreja obarvamo gled ena poglavje Metodoloko pojasnilo - # Course mean - krediti.m <- kt.vect.col(pr.po.tmp$predmet.ocena.krediti_mean) - # Faculty mean - krediti.m.f <- kt.vect.col(F.avg.KT) - # Course sd - cr.sd <- - ifelse(is.na(round(pr.po.tmp$predmet.ocena.krediti_sd, 1)), - ".", - round(pr.po.tmp$predmet.ocena.krediti_sd, 1)) - # Faculty sd - F.sd <- round(as.numeric(F.avg.sd.KT) ,1) - - # Tidy data for latex table - krediti.m <- - c('', - paste0('\\textit{', krediti.m, "}"), - paste0('\\textit{', krediti.m.f, "}")) - #ter standardni odklon predmeta in standardni odklon celotne fakultete - krediti.sd <- - c('', - paste0( - '\\textit{', - cr.sd, - "}" - ), - paste0('\\textit{',F.sd, '}')) - - # Add averages and standrad deviation - krediti <- rbind(krediti, krediti.m, krediti.sd) - # Rownames - rownames(krediti) <- - c( - as.character(unlist(vars.predmet$krediti$labele)), - '\\hline\n\\textbf{Skupaj}', - '\\hline\\hline\n\\textit{Povpreje}', - '\n\\textit{Standardni odklon}' - ) - # Compile latex table - krediti.tex <- capture.output(Hmisc::latex(krediti, - caption = "Frekvenna porazdelitev za oceno - ustreznosti tevila porabljenih ur (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(2, 1), - col.just = strsplit("crr", "")[[1]], - insert.bottom = "")) - # Create content - part$predmet[[predmet]]$krediti <- c("\\subsubsection{\\Large tevilo porabljenih ur (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright Ocenite, ali ste za - predmet porabili od (min - max) ur, kot je za ta - predmet predvideno v tudijskem programu (25-30 ur tudentove - obremenitve = 1 ECTS; ki vkljuuje predavanja, vaje, seminar itd. - in vse oblike samostojnega dela)\\guillemotleft", - krediti.tex, #as.character(vars.predmet$krediti$ime.dolgo), - "\\begin{figure}[H]", - paste0("\\caption{Frekvenna porazdelitev za oceno - usterznosti tevila porabljenih ur (anketa PO izpitu)}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_krediti.pdf}}"), - "\\end{figure}") - - ## //PORABLJENI tEVILO UT (USTREZNOST KT)// ## - - - ## KOMPETENCE ## - kompetence <- - cbind.data.frame( - n = as.numeric(pr.po.tmp[paste0("kompetence1_razporejanje_n_", 1:5)]), - "\\hfill%" = as.numeric(pr.po.tmp[paste0("kompetence1_razporejanje_pct_", 1:5)]), - "\\hfill%" = as.numeric(F.avg.kom.likert) - ) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - - - # barplot # - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_kompetence1.pdf"), - family='sans', pointsize=9, width=6, height=4.5) - par(mar = (c(4, 5, 4, 5) + 0.1), - mgp = c(3, min(2, max(1, 0)), 0), - xpd = TRUE) - barplot( - t(kompetence[, 2:3]), - beside = TRUE, - col = c('firebrick3', 'dodgerblue3'), - names.arg = as.character(unlist(vars.predmet$kompetence$labele.graf)), - ylim = c(0, 100), - cex.names = 0.9, - las = 1, - axis.lty = 1 - ) - abline(h = 0, xpd = FALSE, col = 'black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', - line = 1.25, - cex = 0.9, - adj = 0) - legend( - 'topright', - inset = c(-0.15,-0.05), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - fill = c('firebrick3', 'dodgerblue3'), - bty = 'n' - ) # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - if (nrow(pr.po.tmp) > 0){ - if (pr.po.tmp$predmet.ocena.kompetence_N < minEnot) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}Oranno} so oznaena odstopanja {\\color{Orange}(2.4-2.6)} - in {\\color{Orange}(3.4-3.6)}, {\\color{BrickRed}rdee} pa odstopanja - (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6})."}}' - } else { - opomba <- '{\\footnotesize \\textit{** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}Oranno} so oznaena odstopanja {\\color{Orange}(2.4-2.6)} - in {\\color{Orange}(3.4-3.6)}, {\\color{BrickRed}rdee} pa odstopanja - (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6})."}}' - } - } - - kompetence <- rbind(kompetence, c(pr.po.tmp$predmet.ocena.kompetence_N, colSums(kompetence[,2:3]))) - # Also manually round second and third column for latex table purposes - kompetence[,2:3] <- round(kompetence[,2:3]) - # Preverimo ali je tevilo odgovorov manje od 4. V tem primeru vrednosti en prikaemo - kompetence[,2] <- ifelse(kompetence$n < 4, ".", kompetence[,2]) - # Add parenthesis for first column if neccessary (Number of answers) - kompetence <- formatval(kompetence) - - # Povpreja obarvamo gled ena poglavje Metodoloko pojasnilo - # Course mean - komp.m <- formatval(data.frame(mean = pr.po.tmp$predmet.ocena.kompetence_mean))[[1]] - # Faculty mean - komp.m.f <- formatval(data.frame(mean = F.avg.kom))[[1]] - # Course sd - kom.sd <- - ifelse(is.na(round(pr.po.tmp$predmet.ocena.kompetence_sd, 1)), - ".", - round(pr.po.tmp$predmet.ocena.kompetence_sd, 1)) - # Faculty sd - Fcom.sd <- round(as.numeric(F.avg.sd.kom) ,1) - # Tidy data for latex table - komp.m <- - c('', - paste0('\\textit{', komp.m, "}"), - paste0('\\textit{', komp.m.f, "}")) - - #Dodatna linija za STANDARDNI ODKLON predmeta in STANDARDNI ODKLON fakultete - komp.sd <- - c('', - paste0( - '\\textit{', - kom.sd , - "}" - ), - paste0('\\textit{',Fcom.sd, '}')) - - # Combine data - kompetence <- rbind(kompetence, komp.m, komp.sd) - - # Rownames for latex tables purposes - rownames(kompetence) <- - c( - as.character(unlist(vars.predmet$kompetence$labele)), - '\\hline\n\\textbf{Skupaj}', - '\\hline\\hline\n\\textit{Povpreje}', - '\n\\textit{Standardni odklon}' - ) - # Compile latex table - kompetence.tex <- capture.output(Hmisc::latex(kompetence, - caption = "Frekvenna porazdelitev za - oceno pridobljenih kompetenc - (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(2, 1), - col.just = strsplit("crr", "")[[1]], - insert.bottom = "")) - - # Content - part$predmet[[predmet]]$kompetence <- c("\\subsubsection{\\Large Kompetence (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright V kolikni meri ste pri predmetu - pridobili priakovane \\textbf{kompetence}\\guillemotleft ", - kompetence.tex, - "\\begin{figure}[H]", - paste0("\\caption{Frekvenna porazdelitev za oceno pridobljenih kompetenc (anketa PO izpitu)}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_kompetence1.pdf}}"), - "\\end{figure}") - ## //KOMPETENCE// ## - - - ## Izpis: ODGOVORI NA ODPRTA VPRAANJA ANKETA PRED IN PO - # Komentar dobro, Komentar slabo == ANKETA PRED IZPITOM - # Komentar pridobljene kompetence == ANKETA PO IZPITU - - # Tidy data - # ANKETA PRED - data.text.pred <- - lapply(data.pred.tmp[c( - "predmet.komentar.dobro", - "predmet.komentar.slabo")], trim) - - # Pri filozofski se je pri odprtih komentarjih zgodilo - # da je znak "x" poruil latex in je javlajlo napako - # zaot to ustrezno nadomestimo. - data.text.pred[] <- - lapply(data.text.pred, function (x) - gsub("", "*", x, fixed = TRUE)) - - #ANKETA PO - data.text.po <- - lapply(data.po.tmp["predmet.komentar.kompetence.pojasnilo"], trim) - - # Append all comments - data.text <- append(data.text.pred, data.text.po) - - for (textvar in names(data.text)) { - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- - gsub(pattern = '\\\\', - replacement = '!backslash!', - x = data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - # Coements will be shown as items (itemization) - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { - # e je kaken komentar - komentarji <- - reports::LL( - text = Hmisc::latexTranslate(komentarji), - copy2clip = FALSE, - enumerate = FALSE - ) - komentarji <- - gsub(pattern = '!backslash!', - replacement = '\\\\textbackslash ', - x = komentarji) - tex.text <- - append(tex.text, append( - paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep = ''), - komentarji - )) - } else { - tex.text <- - append( - tex.text, - append( - paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep = ''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ' - ) - ) - } - } - - part$predmet[[predmet]]$text <- tex.text - - ## //TEKSTOVNE// ## - - # e indeks predmetov - predmeti[[predmet]] <- - list(izvajalci = izvajalci.predmeta, - ime.datoteke = paste('predmet_', predmet, '.pdf', sep = '')) #!preveri!, ime=ime.predmeta - - - #------- POGLAVJE: ANALIZA PREDMETA PO PROGRAMIH IN LETNIKIH ---------# - # Anketa PRED - # Get data from which program did the greades for the course come from - predBySmer.df <- subset(povprecja.predmeti.programi.brez.cenzure, - predmet.sifra == predmet & N_anket > 0)[c( - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - paste0(vars.predmet$cont$pred, "_N"), - "program.studentov.ime" - )] - - # Prepare data and create latex table (see custom function "pro.let.c") - predBySmerpred <- pro.let.c(predBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.pred, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.pred," - predmetov)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} \\guillemotright" , imepredmeta, - "\\guillemotleft \\ glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)" - ) - ), # Fifth argument is Latex Table caption - "PRED", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ))) - - - # Anketa PO - poBySmer.df <- - subset( - povprecja.predmeti.programi.PO.brez.cenzure.PO, - predmet.sifra == predmet & N_anket > 0 - )[c("N_anket", - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_mean"), - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_N"), - "program.studentov.ime")] - - - # prepare data and create latex table: Povprene ocene komponent predmeta gled ena tudijski program vpisanih tudentov (Anketa PO izpitu) - predBySmerpo <- pro.let.c(poBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.po, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.po," - predmetov)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} glede na tudijski program** vpisanih tudentov (anketa PO izpitu)" - ) - ), # Fifth argument is Latex Table caption - "PO", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$po])[-1], - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT***" - ))) - - - # Anketa PRED (letnik tudentov) - predByLetnik.df <- - subset(povprecja.predmeti.letniki.brez.cenzure, - predmet.sifra == predmet & N_anket > 0)[c( - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - paste0(vars.predmet$cont$pred, "_N"), - "letnik.studentov" - )] - - - # Latex table: Povprene ocene komponent predmeta po letniku tudentov (anketa PRED izpitom) - predByLetnikpred <- pro.let.c(predByLetnik.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.pred, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.pred," - izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PRED izpitom)" - ) - ), # Fifth argument is Latex Table caption - "PRED", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = TRUE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ))) - - - # Anketa PO (letnik tudentov) - poByLetnik.df <- subset( - povprecja.predmeti.letniki.PO.brez.cenzure.PO, - predmet.sifra == predmet & N_anket > 0 - )[c("N_anket", - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_mean"), - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_N"), - "letnik.studentov")] - - # Povprene ocene komponent predmeta po letniku tudentov (anketa PO izpitu) - predByLetnikpo <- pro.let.c(poByLetnik.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.po, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PO izpitu)" - ) - ), # Fifth argument is Latex Table caption - "PO", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = TRUE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$po])[-1], - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT***" - ))) - - - - # quantiles: Kvantilni rangi za povprene ocene komponent predmeta glede na vse predmete tudijskega programa, - # v katerega so vpisani tudenti (anketa PRED izpitom) - - # ANKEA PRED IZPITOM - progs <- rownames(predBySmerpred$tabela[predBySmerpred$tabela$N_anket >= minEnot,]) - - predmetBySmerProgrami <- - subset( - kvantili.predmeti.programi, - predmet.sifra == unique(as.character(predmet)) & - program.studentov.ime %in% progs - ) - - if (nrow(predmetBySmerProgrami) > 0) { - progpred.tmp <- - povprecja.predmeti.programi[povprecja.predmeti.programi$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - progpred.tmp <- - aggregate(progpred.tmp$predmet.sifra, by = progpred.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - - predmetBySmerProgrami <- - merge( - predmetBySmerProgrami, - progpred.tmp[c("x","program.studentov")], - by = "program.studentov", - all.x= TRUE - ) - - # Sort data by number of courses in each progrem (column "x") in decreasign order - predmetBySmerProgrami <- - predmetBySmerProgrami[order(predmetBySmerProgrami$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(predmetBySmerProgrami) <- - make.unique(as.character(predmetBySmerProgrami$program.studentov.ime)) - - # Tidy daata for Latex tables - predmetBySmerProgrami <- - predmetBySmerProgrami[c( - "x", - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - # Imena Stolpcev - colnames(predmetBySmerProgrami) <- latex.rotate(c("t. predmetov*","t. odgovorov**", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}")) - - # Compile Latex table - predmetBySmerProgrami.tex <- capture.output(Hmisc::latex(predmetBySmerProgrami, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa, v katerega - so vpisani tudenti (anketa PRED izpitom)" - ), - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{10cm}", - insert.bottom = kvan.pojas1, - multicol = FALSE, - col.just = c("c|", "c|", rep_len("c", length( vars.predmet$cont$pred)), "|c"), - rowname = Hmisc::latexTranslate(rownames(predmetBySmerProgrami)))) - - } else { - predmetBySmerProgrami.tex <- NULL - } - - - # ANKEA PO IZPITU - progs.po <- rownames(predBySmerpo$tabela[predBySmerpo$tabela$N_anket >= minEnot,]) - - predmetBySmerProgramipo <- - subset( - kvantili.predmeti.programi.PO, - predmet.sifra == unique(as.character(predmet)) & - program.studentov.ime %in% progs.po - ) - - if (nrow(predmetBySmerProgramipo) > 0) { - progpo.tmp <- - povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - progpo.tmp <- - aggregate(progpo.tmp$predmet.sifra, by = progpo.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - - predmetBySmerProgramipo <- - merge( - predmetBySmerProgramipo, - progpo.tmp[c("x","program.studentov")], - by = "program.studentov", - all.x= TRUE - ) - - # Sort data by number of courses in each progrem (column "x") in decreasign order - predmetBySmerProgramipo <- - predmetBySmerProgramipo[order(predmetBySmerProgramipo$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(predmetBySmerProgramipo) <- - make.unique(as.character(predmetBySmerProgramipo$program.studentov.ime)) - - # Tidy daata for Latex tables - predmetBySmerProgramipo <- - predmetBySmerProgramipo[c( - "x", - "N_anket", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - # Imena Stolpcev - colnames(predmetBySmerProgramipo) <- latex.rotate(c("t. predmetov***","t. odgovorov*", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT**" - )) - - - # Pojasnilo oz. opomba pod Latex tabelo - kvan.int <- c(paste0("{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je - kvantilni rang za odgovarjajoe vrednosti, vendar ni obarvan, saj gre za administrativni podatek. - \\newline ** Kvantilni rang ", predmetBySmerProgramipo[1,8]," pomeni, da je ", - paste0(predmetBySmerProgramipo[1,8], "\\%")," vseh ocenjenih predmetov zahtevalo - nije tevilo ur glede na tevilo kreditnih tok.\\newline *** Gre za vse predmete z vsaj 4 odgovori - (tudi predmete drugih programov, e so bili izbirni), ki so jih vpisali ttudenti doloenega programa.}}")) - - # Compile Latex table - predmetBySmerProgramipo.tex <- capture.output(Hmisc::latex(predmetBySmerProgramipo, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa, v katerega - so vpisani tudenti (anketa PO izpitu)" - ), - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{10cm}", - insert.bottom = kvan.int, - multicol = FALSE, - col.just = c("c|", "c|", rep_len("c", length( vars.predmet$cont$po[-1])), "|c|", "c", "c"), - rowname = Hmisc::latexTranslate(rownames(predmetBySmerProgramipo)))) - - } else { - predmetBySmerProgramipo.tex <- NULL - } - - - - - part$predmet[[predmet]]$BySmerLetnik <- - c( - "\\setlength{\\tabcolsep}{3pt}", - predBySmerpred$tex, - predmetBySmerProgrami.tex, - predBySmerpo$tex, - predmetBySmerProgramipo.tex, - predByLetnikpred$tex, - predByLetnikpo$tex, - "\\setlength{\\tabcolsep}{6pt}" - ) - - - } else { # e ni dovolj enot - part$predmet[[predmet]]$pojasniloPremaloEnot <- '- Zaradi prenizkega tevila odgovorov analiza predmeta ni bila narejena. -' - } - ## //analiza predmeta po smereh in letnikih tudentov// ## - - - - - # skupne tabele za predmete (POVZETKI) ## - FDVmeans_Izvajalec9_BDorBP <- c(Fizv["skupaj", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - F.avg.izv) - - FDVmeansPredmet_BDorBPpred <- c(Fpred["skupaj",c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - F.avg.pred[c(paste0(vars.predmet$cont$pred,"_mean"), "predmet.ocena.SKUPAJ")]) - - FDVmeansPredmet_BDorBPpo <- c(Fpo["skupaj",c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct")], - F.avg.po[c(paste0(vars.predmet$cont$po,"_mean"), "predmet.ocena.SKUPAJ")], - F.avg.po["predmet.ocena.krediti_mean"]) - - - ## - # povzetek izvajalcev predmeta - povzIzv <- - povprecja.izvajalci[povprecja.izvajalci$predmet.sifra == predmet, c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - imenaIzv <- povprecja.izvajalci[povprecja.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - meansI <- subset(povprecja.predmet.izvajalci.skupaj, predmet.sifra==predmet)[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - if (sum(is.na(povzIzv)) > 0) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaI <- NULL} - povzIzv <- rbind(povzIzv, meansI, FDVmeans_Izvajalec9_BDorBP) - - povzIzv <- formatval(povzIzv) - rownames(povzIzv) <- c(Hmisc::latexTranslate(imenaIzv), "\\hline \\textbf{Povpreje izvajalcev predmeta}", paste("\\hline \\textbf{Povpreje izvajalcev", fakulteta, "(po vseh izvedbah)}")) - colnames(povzIzv) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - tex.povzIzv <- capture.output(Hmisc::latex(povzIzv, caption="Povprene ocene komponent pedagokega dela izvajalcev (anketa PRED izpitom)", rowlabel="", file="", where="H", multicol=FALSE, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{8.9cm}", insert.bottom=opombaI)) - - - povzPredmPRED <- rbind(pr.pred.tmp[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")], unlist(FDVmeansPredmet_BDorBPpred)) - povzPredmPO <- rbind(pr.po.tmp[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.krediti_mean")], unlist(FDVmeansPredmet_BDorBPpo)) - - if (any(is.na(povzPredmPRED))) {opombaPpred <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpred <- NULL} - if (any(is.na(povzPredmPO)) | nrow(povzPredmPO) < 2) {opombaPpo <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpo <- NULL} - - - povzPredmPRED <- formatval(povzPredmPRED) - # Preverimo ali je predmet v bazi ANKETE PO - if (nrow(povzPredmPO) > 1) { - povzPredmPO <- formatval(povzPredmPO, KT = TRUE) - } else { - povzPredmPO <- - rbind(cbind(round(povzPredmPO[1:5], 0), round(povzPredmPO[6:ncol(povzPredmPO)], 1)), - cbind(round(povzPredmPO[1:5], 0), round(povzPredmPO[6:ncol(povzPredmPO)], 1))) - colnames(povzPredmPO) <- - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - ) - povzPredmPO <- formatval(povzPredmPO, KT = TRUE) - - povzPredmPO[1,] <- "--" - opombaPpo <- "{\\footnotesize \\textit{-- Predmet nima odgovorov.}}" - } - - rownames(povzPredmPRED) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', pr.pred.tmp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.pred," predmetov)}"))) - rownames(povzPredmPO) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', pr.pred.tmp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," predmetov)}"))) - colnames(povzPredmPRED) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - colnames(povzPredmPO) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - - - povzPredmPO <- povzPredmPO[c(1,2,3,4,5,7,8,9,10,6,11)] - tex.povzPredmPRED <- c(capture.output(Hmisc::latex(povzPredmPRED, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PRED izpitom)', rowlabel='', file='', where='H', multicol=FALSE, - col.just=c(rep_len('c',1),'c|','c','c','c|',rep_len('c', length(vars.predmet$cont$pred)),'|c'), rowlabel.just='p{7.7cm}', insert.bottom=opombaPpred))) - - tex.povzPredmPO <- c(capture.output(Hmisc::latex(povzPredmPO, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PO izpitu)', rowlabel='', file='', where='H', multicol=FALSE, - col.just=c(rep_len("c",1),"c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), rowlabel.just='p{8.9cm}', insert.bottom=opombaPpo))) - - - part$predmet[[predmet]]$povzetek <- c("\\chapter{Povzetek predmetov}", - paste("V tabelah so prikazana povpreja na lestvicah, - kjer so tudenti oznaili strinjanje s trditvami, - ki se nanaajo na komponente pedagoke izvedbe - (1 - sploh se ne strinjam, 2 se bolj ne strinjam kot strinjam, - 3 niti se ne strinjam niti se strinjam, 4 se bolj strinjam kot ne strinjam, - 5- popolnoma se strinjam). Vpraalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - kritino nizka povpreja (1.0-2.9) pa so obarvana {\\color{BrickRed}rdee}. - Visoka povpreja (4.5-4.7), kjer je veina tudentov podala oceno - popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - najvija (4.8-5.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, - ampak je navedena pika .. Ocene za povpreja, ki temeljijo na nizkem - tevilu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so oznaene z enojnim () oziroma z dvojnim oklepajem (()). - Podrobne analize in podrobna metodoloka pojasnila so v celotnem poroilu. - Osnovna metodoloka pojasnila se nahajajo tudi na \\url{http://ul.1ka.si/metodologija}."), - tex.povzPredmPRED, tex.povzPredmPO) - ## //skupne tabele za predmete (povzetki)// ## - - - ## kvantili ## - kvantili.izvajalcev.predmeta <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - imenaIzv <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - - - if (any(kvantili.izvajalcev.predmeta == ".")) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.1, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.}"} else {opombaI <- pojas} - rownames(kvantili.izvajalcev.predmeta) <- Hmisc::latexTranslate(imenaIzv) - colnames(kvantili.izvajalcev.predmeta) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - - tex.kvantili.izvajalcev.predmeta <- capture.output(Hmisc::latex(kvantili.izvajalcev.predmeta, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{izvajalcev pri predmetih} - anketa PRED izpitom (med skupno", kvantili.izvajalci.st, "izvedbami)"), rowlabel="", file="", where="H", multicol=FALSE, - col.just=c("c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{10cm}", insert.bottom=opombaI)) - - - - - kvantili.predmeta.pred <- kvantili.predmeti[kvantili.predmeti$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")] - - - int.predmetPRED <- - c( - paste0( - "{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.1, \n vendar niso dodatno obarvani, saj gre za administrativne podatke. Kvantilni rang ", - kvantili.predmeta.pred[1, 1], - " za predmet \\guillemotright ", - subset(pr.pred.tmp, predmet.sifra == predmet)$PREDMET, - "\\guillemotleft \\ pomeni, da je imelo ", - paste0(kvantili.predmeta.pred[1, 1], "\\%"), - " predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", - paste0(povzPredmPRED[1, 1]), - " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", - kvantili.predmeta.pred[1, 11], - " (\\textbf{Skupaj}), pomeni \nda je ", - paste0(kvantili.predmeta.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - round( - subset(pr.pred.tmp, predmet.sifra == predmet)$predmet.ocena.SKUPAJ, - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - - - if (any(kvantili.predmeta.pred == ".")) {opombaPpred <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.2, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.\\newline **Kvantilni rang ", kvantili.predmeta.pred[1,1]," za predmet \\guillemotright ", gsub("_", "\\_", rownames(kvantili.predmeta.pred)[1], fixed = TRUE),"\\guillemotleft \\ pomeni, da je imelo ", paste0(kvantili.predmeta.pred[1,1], "\\%")," predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", paste0(kvantili.predmeta.pred[1,1]), " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", kvantili.predmeta.pred[1,11], " (\\textbf{Skupaj}), pomeni \nda je ", paste0(kvantili.predmeta.pred[1,11], "\\%"), " od ",kvantili.predmeti.st.pred," predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", round(subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1],digits=1), " (\\textbf{Skupaj}) v tabeli 1.1.}"))} else {opombaPpred <- int.predmetPRED} - rownames(kvantili.predmeta.pred) <- Hmisc::latexTranslate(paste0(gsub("izredna izvedba", "I", pr.pred.tmp$ime.predmeta))) - colnames(kvantili.predmeta.pred) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - tex.kvantili.predmeta.pred <- c(capture.output(Hmisc::latex(kvantili.predmeta.pred, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", kvantili.predmeti.st.pred, "predmeti (anketa PRED izpitom)"), rowlabel="", file="", where="H", multicol=FALSE, - col.just=c("c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="p{9cm}", insert.bottom=opombaPpred))) - - - - kvantili.predmeta.po <- - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra == predmet, c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - - if(nrow(kvantili.predmeta.po) > 0) { - int.predmetPO <- - c( - paste0( - "{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.2, \n vendar niso dodatno obarvani, - saj gre za administrativne podatke.\\newline ** Kvantilni rang ", - kvantili.predmeta.po[1, 8], - " (\\textbf{Skupaj}), pomeni \nda je ", - paste0(kvantili.predmeta.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - round( - subset(pr.po.tmp, predmet.sifra == predmet)$predmet.ocena.SKUPAJ, - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - kvantili.predmeta.po[1, 9], - " (\\textbf{Ustreznost KT}) pomeni, da je ", - paste0(kvantili.predmeta.po[1, 9], "\\%"), - " vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}}" - ) - ) - if (any(kvantili.predmeta.po == ".")) { - opombaPpo <- c( - paste0( - "{\\footnotesize \\textit{. Podatek - ni prikazan zaradi premajhnega tevila enot.} - \\newline * Tudi vrednosti za - \\guillemotright t.vpisanih\\guillemotleft \\, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.3, \n - vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, - saj gre za administrativne podatke.\\newline ** Kvantilni rang ", - kvantili.predmeta.po[1, 8], - " (\\textbf{Skupaj}), pomeni \nda je ", - paste0(kvantili.predmeta.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - kvantili.predmeta.po[1, 9], - " (\\textbf{Ustreznost KT}) pomeni, da je ", - paste0(kvantili.predmeta.po[1, 9], "\\%"), - " vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}" - ) - ) - } - else {opombaPpo <- int.predmetPO} - - rownames(kvantili.predmeta.po ) <- rownames(kvantili.predmeta.pred) - colnames(kvantili.predmeta.po) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko) - ) - ) - - - - kvantili.predmeta.po<-kvantili.predmeta.po[c(1,2,3,5,6,7,8,4,9)] - tex.kvantili.predmeta.po <- - c(capture.output( - Hmisc::latex( - kvantili.predmeta.po, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", - kvantili.predmeti.st.po, - "predmeti (anketa PO izpitu)" - ), - rowlabel = "", - file = "", - where = "H", - multicol = FALSE, - col.just = - c('c', 'c', 'c|', rep_len('c', length( - vars.predmet$cont$po[-1] - )), '|c', '|c', 'c'), - rowlabel.just = "p{10cm}", - insert.bottom = opombaPpo - ) - )) - - } else { - tex.kvantili.predmeta.po <- "Predmet v ANKETI PO ni imel odgovorov zato kvantilni rangi za predmet niso izraunani" - - } - opredelitev.kvantili.predmet<-paste("Kvantilni rangi oznaujejo poloaj predmeta oziroma izvajalca med vsemi - predmeti oziroma izvajalci celotne fakultete.\nZgornja etrtina (75-100) - je obarvana {\\color{Chateau Green}zeleno (pohvalno)}, zgornja - desetina (90-100) {\\color{Blue Stone}temnozeleno (odlino)}.\nSpodnja - etrtina (0-25) je obarvana {\\color{Orange}\\textbf{oranno (opozorilno)}}, - spodnja desetina (0-10) {\\color{BrickRed}rdee (kritino)}. - Podrobnosti so na \\url{http://ul.1ka.si/metodologija}.") - - - part$predmet[[predmet]]$kvantili <- - c( - "\\newpage", - "\\section{Kvantilni rangi}", - opredelitev.kvantili.predmet, - tex.kvantili.predmeta.pred, - tex.kvantili.predmeta.po - ) - ## //kvantili// ## - } -#------------------------------------------- //PREDMET// ----------------------------------------------# - - -######################################## -#' DATA NEEDED FOR PDF REPORT: @PART III -######################################## -#---------------------------------------------- PRAKSA ------------------------------------------------# -# Zanka, ki generira porocila za vse unikatne sifre izvajalcev, ki so v sifreIzvajalec -izvajalciprakse <- NULL -praksaSifre <- subset(sifrant, PRAKSA == 1) -if (omejeniIzvajalci) { - # Ali naj poroila generira samo za tiste izvajlce, ki smo jih opredelili v navodila_dodatno-UTF-8.r - sifreIzvajalecZaPDF <- - as.character(omejeniIzvajalciSifre) # Kateri so to -} else { - sifreIzvajalecZaPDF <- as.character(names(izvajalci)) -} - -praksaSifrePDF <- unique(subset(praksaSifre, IDPEDAGOGA %in% sifreIzvajalecZaPDF)$IDPEDAGOGA) - -for (izvajalecpraks in praksaSifrePDF) { - # indeks izvajalcev z imeni in predmeti po ifrah izvajalcev - - # izvajalec in Povpreje predmeta / predmetov - izvajalciprakse[[izvajalecpraks]] <- - list(sifra.izv = unique(subset(praksaSifre, IDPEDAGOGA == izvajalecpraks)$IDPEDAGOGA), - praksa = as.character(unique( - subset(praksaSifre, IDPEDAGOGA == izvajalecpraks)$IDP - ))) -} - - -if (omejeniIzvajalci) { - sifrepraks <- - as.character(unique(praksaSifre$IDP[praksaSifre$IDPEDAGOGA %in% praksaSifrePDF])) -} else { - sifrepraks <- as.character(unique(praksaSifre$IDP)) -} - - -for (praksa in sifrepraks){ - - povprecja.predmet.praksa <- - subset(povprecja.predmeti.po, predmet.sifra == praksa) - - - # Anketa PO - data.praksa.tmp <- subset(data.predmeti.po, predmet.sifra == praksa & veljavna) - - if(nrow(povprecja.predmet.praksa) > 0) { - data.predmet.temp <- - subset(data.predmeti, - predmet.sifra == praksa & veljavna) - - #kdo so izvajalci predmeta - izvajalci.predmeta <- - unique(subset(praksaSifre, IDP == praksa)$IDPEDAGOGA) - - if (omejeniIzvajalci) { - izvajalci.predmeta <- - izvajalci.predmeta[izvajalci.predmeta %in% praksaSifrePDF] - } - - ## stopnja sodelovanja ## - sodelujocih <- povprecja.predmet.praksa$N_anket - stopnjaPredmeta <- povprecja.predmet.praksa$STOPNJA - if (stopnjaPredmeta==1) { - FDVstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - FDVstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', povprecja.predmet.praksa$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - FDVstring <- '' - } - imepredmeta <- sub("^BD |^BP ", "", povprecja.predmet.praksa$ime.predmeta) # ime brez BD/BP predpone - imepredmeta <- gsub('_', '\\_', imepredmeta, fixed=T) # pravilni izpis podrtaja v pdf izpisu "_" - imepredmeta <- gsub('&', '\\&', imepredmeta, fixed=T) # pravilni izpis in v pdg izpisu "&" - - if(povprecja.predmet.praksa$PRAKSA==1) { #e je predmet imel tudijsko prakso naredi proroilo, sicer ne. - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) -ANKETA PO IZPITU - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",praksa,"_response_po_izpitu_praksa.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.po <- cbind(c(povprecja.predmet.praksa$sodelujocih.pct, - povprecja.predmet.praksa$zavrnjenih.pct, - povprecja.predmet.praksa$neodzivnih.pct), - c(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"], - Fpo[as.character(stopnjaPredmeta),"zavrnjenih.pct"], - Fpo[as.character(stopnjaPredmeta),"neodzivnih.pct"])) - - ## Get the y-values for text - ys.po <- apply(mat.po, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store x data - xs.po <- barplot(mat.po, names.arg=c('Predmet', studijska.praksa), - col=c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim=c(0,100), space=c(0,1)) - - ## Add text - text(rep(xs.po, each=nrow(ys.po)), c(ys.po), labels=paste0(round(c(mat.po), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - ##### - - tex.sodelovanje1 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za - predmet \\guillemotright ", imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", - paste0(povprecja.predmet.praksa$N_anket), " od skupno ", povprecja.predmet.praksa$ST_STUD, - " tudentov, kar je \\textbf{", round(povprecja.predmet.praksa$sodelujocih.pct), "\\%} - vseh vpisanih tudentov. ", "povpreje praks ", fakulteta, " je sicer znaalo - \\textbf{", round(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"]), "\\%}."), - "\\begin{figure}[H]", - "\\caption{Struktura (\\%) tudentov glede na odgovarjanje (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - praksa, "_response_po_izpitu_praksa.pdf}}"), - "\\end{figure}") - izvajalciprakse$predmet[[praksa]]$response1 <- tex.sodelovanje1 - ## /stopnja sodelovanja/ ## - - - tabela.praksa <- cbind.data.frame( - N = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_N")]), - mean = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_mean")]), - sd = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_sd")]), - min = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_min")]), - max = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_max")]) - ) - - povprecja.praksa <- tabela.praksa$mean - - tabela.praksa[is.na(tabela.praksa)] <- "." - - if (min(as.numeric(tabela.praksa$N)) < minEnot) { - opomba <- - '{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot.}}' - } else { - opomba <- "{\\footnotesize {}}" - } - FDVcont.praksa <- - data.frame(F.avg.po[paste0(vars.predmet$cont$praksa, "_mean")]) - colnames(FDVcont.praksa) <- 'Pmean' - tabela.praksa <- cbind(tabela.praksa, FDVcont.praksa) - - - tabela.praksa <- - rbind( - tabela.praksa, - c( - '', - povprecja.predmet.praksa$predmet.ocena.SKUPAJ.praksa, - '', - '', - '', - mean(tabela.praksa$Pmean, na.rm = - TRUE) - ) - ) - - # - tabela.praksa <- formatval(tabela.praksa) - - rownames(tabela.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$praksa])), - '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - colnames(tabela.praksa) <- c('n', 'povpreje', 'sd', 'min', 'max', 'povpreje') - tabela.contR.praksa.tex1 <- capture.output(Hmisc::latex(toLatex(tabela.praksa), - caption="Povprene ocene komponent \\textbf{tudijske prakse} - (anketa PO izpitu)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", studijska.praksa), - n.cgroup=c(5,1), - col.just=rep_len('c', ncol(tabela.praksa)), - rowlabel.just='p{9.5cm}', - insert.bottom=opomba)) - - - ## radar graf ## - if (sum(!is.na(povprecja.praksa)) < 4) {povprecja.praksa <- povprecja.praksa[!is.na(povprecja.praksa)] <-NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(FDVcont.praksa, as.numeric(povprecja.praksa)))), row.names=1:4, check.names=F) - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])) - radar.f<-radar.cont - star.radar2<-as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]) - - colnames(radar.f) <- sub(" ", "\n", star.radar2) - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",praksa,"_cont1.pdf"), - family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) - fmsb::radarchart(radar.f, pcol=c('dodgerblue3','firebrick3'), cglcol='gray75', - plwd=2, plty=1, cglwd=1, cglty=1, seg=4, axistype=1, - caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Predmet", paste(studijska.praksa, "Povpreje")), - col=c('firebrick3', 'dodgerblue3'), - lty=1, lwd=2, bty='n') - dev.off() - ## /radar graf/ ## - - - data.praksa.temp.<- subset(data.po.miss, predmet.sifra==praksa) - # frekvence - dist.praksa <- - t(sapply(data.praksa.temp.[, vars.predmet$cont$praksa], function(x) - table(factor(x, levels = someMiss.po)))) - # samo kjer je dovolj enot - dist.praksa[rowSums(dist.praksa) < minEnot,] <- NA - dist.praksa <- - cbind(dist.praksa, rowSums(dist.praksa, na.rm = TRUE)) - dist.praksa[is.na(dist.praksa)] <- "." - - ##podrobna porazdelitev1 ocen## - rownames(dist.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]))) - colnames(dist.praksa) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}", - "\\textbf{Ne elim odgovoriti}","\\textbf{Nimam dovolj informacij}","\\textbf{Skupaj}") - - porazdelitev1.tex <- capture.output( - Hmisc::latex( - dist.praksa, - caption = 'Frekvenna porazdelitev odgovorov za ocene - komponent \\textbf{tudijske prakse}', - rowlabel = '\\textbf{Komponente}', - file = '', - where = 'H', - col.just = rep_len('c', ncol(dist.praksa)), - insert.bottom = opomba - ) - ) - ## //podrobna porazdelitev1 ocen// ## - - izvajalciprakse$predmet[[praksa]]$cont1 <- porazdelitev1.tex - - - - data.text1 <- lapply(data.praksa.tmp[vars.predmet$text$vars[4]], trim) - for (textvar in names(data.text1)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text1[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text1[[textvar]][!data.text1[[textvar]] %in% junk.komentar]) - } - - tex.text1 <- NULL - for (textvar in names(data.text1)) { - komentarji <- data.text1[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - # komentarji <- gsub(pattern='', replacement='e', x=komentarji) - # komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ')) - } - } - - izvajalciprakse$predmet[[praksa]]$text1 <- tex.text1 - - - studij.praksa <- c( - "\\section{tudijska praksa ",imepredmeta,"}", - izvajalciprakse$predmet[[praksa]]$response1, - "\\section{Ocena tudijske prakse}", - tabela.contR.praksa.tex1, - "\\begin{figure}[H]", - "\\caption{Povprene ocene komponent \\textbf{tudijske prakse} (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - praksa, "_cont1.pdf}}"), - "\\end{figure}",izvajalciprakse$predmet[[praksa]]$cont1, - "\\section{Praksa: Odgovori na odprta vpraanja}",izvajalciprakse$predmet[[praksa]]$text1) - - - izvajalciprakse$predmet[[praksa]]$praksa <- studij.praksa - } else {izvajalciprakse$predmet[[praksa]]$praksa <- NULL - } - - } else{ izvajalciprakse$predmet[[praksa]]$praksa <- NULL - } -} -#-------------------------------------------- //PRAKSA// ----------------------------------------------# - - - - - -################################# -#' COMPILING TEX PARTS: @PART IV -################################# -#----------------------------- SESTAVLJANJE in KOMPILACIJA .tex datotek ------------------------------------------# -#------------------------------------------ IZCAJALEC REPORT --------------------------------------------# -# V Mapi latexkosi so definirane: Glava latex dokumenta, noga latex dokumenta -#encoding='UTF-8' (Ȏ ji) -tex.glava <- scan('Evalvacija/latexkosi/a-glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -# Logo fakultete v PDF poroilu -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) -# V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava) -# Izpis imena leta semestra -tex.glava <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava) -# encoding -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("--","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x = tex.glava) -# Latex noga (end document) -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -# Directory -Rdirektorij <- getwd() - -# List for storing data for TUDIJSKA PRAKSA -tex.praksa <- NULL -studpraksa <- NULL - - -#Ali naj poroila generira samo za tiste izvajalce, ki smo jih opredelili v zacetku kode -# IZBRANI IZVAJALCI ---------------------------------------- -if (omejeniIzvajalci) { - # For which lecturer to geenrate PDF report - sifreIzvajalecZaPDF <- as.character(omejeniIzvajalciSifre) -} else { - # PDf reports should be generated for all lecturers that are in sifrant X1 - # have data in ANKETA PRED or ANKETA PO - sifreIzvajalecZaPDF <- as.character(names(izvajalci)) -} -#-------------- ---------------------------------------- - -# PRAKSA---------------------------------------------- -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - - # LOOP ZA TUDIJSKO PRAKSO - # If Lecturer has PRAKSA - if (izvajalec %in% praksaSifrePDF) { - for (praksa in izvajalciprakse[[izvajalec]]$praksa) { - - tex.praksa[[praksa]] <- izvajalciprakse$predmet[[praksa]]$praksa - studpraksa$predmet[[izvajalec]][[praksa]] <- tex.praksa - } - } else { - tex.praksa <- NULL - } -#------------------------------------------------------ - -#IZVAJALEC PREDMET----------------------------------- - tex.report.izvajalec <- NULL - - for (predmet in izvajalci[[izvajalec]]$predmeti) { - # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot - # (in izvajalci ne morejo imeti vee odg. kot predmet) - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { - - # e ni pojasnila o premalo odg. nadaljuje s sestavljanjem - tex.part.predmet <- - c( - part$predmet[[predmet]]$cont, - "\\newpage", - part$predmet[[predmet]]$krediti, - "\\newpage", - part$predmet[[predmet]]$kompetence, - "\\newpage", - "\\subsubsection{\\Large Analiza predmeta po programih in letnikih}", - part$predmet[[predmet]]$BySmerLetnik, - "\\section{Predmet: Odgovori na odprta vpraanja}", - part$predmet[[predmet]]$text - ) - - # Preverimo ali imamo premalo enot - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo, da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- - c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - } else { - # Drugae nadaljujemo s sestalvjanjem - tex.part.predmet.izvajalec <- - c( - part$izvajalec[[izvajalec]][[predmet]]$cont, - "\\newpage", - "\\subsubsection{\\Large Analiza izvajalca po programih in letnikih}", - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik, - "\\section{Izvajalec: Odgovori na odprta vpraanja}", - part$izvajalec[[izvajalec]][[predmet]]$text - ) - } - - # SOIZVAJALCI --------------------------------------------- - ## e nosilci dobijo tudi ocene soizvajalcev ## - if (nosilci_soizvajalcev) { - # For loop purposes - tex.soizvajalci.predmet <- NULL - - # Preverimo kdo je nosilec, predemta h kateremu - # bomo dodali tudi ocene soizvajalca - nosilec <- - subset(sifrant, IDP == predmet & NOSILEC == "1")$IDPEDAGOGA - # Preverimo ali je Nosilec opredeljen (Nosilci so - # definirani v bazi sifrant X1) - if (!is.null(nosilec) && izvajalec %in% nosilec) { - # Preverimo, kdo so soizvajalci - soizvajalci <- - as.character(predmeti[[predmet]]$izvajalci)[as.character(predmeti[[predmet]]$izvajalci) != izvajalec] - # V primeru, da ima en predmet ve nosilcev, prepreimo, da bi - # nosilec predmeta dobil ocene drugega nosilca predmeta - # (Pravna fakulteta je eden izmed primerov) - soizvajalci <- soizvajalci[!(soizvajalci %in% nosilec)] - # Naredimo loop - for (soizvajalec in soizvajalci) { - if (!is.null(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.soizvajalec <- - c(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot, - "\\newpage") - tex.part.soizvajalecBySmerLetnik <- NULL - } else { - # e imamo podatke nadaljujemo s sestavo poglavja - # za soizvajalca - tex.part.predmet.soizvajalec <- - c('\\textbf{KOMPONENTE PEDAGOKEGA DELA}', - part$izvajalec[[soizvajalec]][[predmet]]$cont) - tex.part.soizvajalecBySmerLetnik <- - c( - '\\textbf{ANALIZA IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH}', - part$izvajalec[[soizvajalec]][[predmet]]$BySmerLetnik, - "\\textbf{ODGOVORI NA ODPRTA VPRAANJA}", - "\\newline", - "\\newline", - part$izvajalec[[soizvajalec]][[predmet]]$text - ) - } - # Ime soizvajalca - tex.naslov.soizvajalca <- - paste('\\subsubsection{', izvajalci[[soizvajalec]]$ime, '}', sep = '') - # Ocene predmeta in ocene predemta glede na program in letnik studentov - tex.soizvajalci.predmet <- - c( - tex.soizvajalci.predmet, - tex.naslov.soizvajalca, - tex.part.predmet.soizvajalec, - tex.part.soizvajalecBySmerLetnik, - "\\newpage" - ) - - } - } - } - #-------------------------------------------------------------------- - - # Predmet: Section: Ocene predmeta ---------------------------------------------- - #' V poglavju se nahaja: - #' @Frekvnne porazdeliteve za anketo PRED in PO - #' @Kompetence - #' @Krediti - #' @Analize predmeta po programu in letniku - #' @Odgovori na odprta vpraanja predmeta - #' @Ocene izvajalca - tex.parti <- c( - "\\newpage", - "\\section{Ocene predmeta}", - "\\subsubsection{Podrobne analize odgovorov (anketa PRED in anketa PO izpitu)}", - tex.part.predmet, - "\\newpage", - "\\section{Ocena izvajalca}", - tex.part.predmet.izvajalec, - "\\newpage" - ) - } - #--------------------------------------------------------------------------------- - - # SIMBOL CHECK ----------------------------------------------------------------- - #ZNAK "&" v imenu predmeta (NARAVOSLOVNO TEHNIKA) - predmet.ime <- subset(povprecja.predmeti, predmet.sifra == predmet)$ime.predmeta - predmet.ime <- gsub('&', '\\\\&', predmet.ime, fixed = T) - predmet.ime <- gsub('-', '--', predmet.ime, fixed = T) - #-------------------------------------------------------------------------------- - - - tex.report.izvajalec <- c(tex.report.izvajalec, - "\\newpage", - paste("\\chapter{", gsub('_', '\\_', subset(povprecja.predmeti, predmet.sifra==predmet)$ime.predmeta, fixed=T), "}", sep = ""), - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { - part$predmet[[predmet]]$response - }, - tex.parti, "\\newpage", - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot) & - nosilci_soizvajalcev && - !is.null(tex.soizvajalci.predmet)) - { - c("\\section{Ocene soizvajalcev}", - tex.soizvajalci.predmet) - }) - - - } - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec <- - gsub( - pattern = '!naslov!', - replacement = Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), - x = tex.glava - ) - - # Tabele komponent tudijskih programov v katerih sodeluje izvajalec - if (all(part$izvajalec[[izvajalec]]$progPRED != "Ni ocen.") & - all(part$izvajalec[[izvajalec]]$progPO != "Ni ocen.") & - all(part$izvajalec[[izvajalec]]$progIPP != "Ni ocen.")) { - tex.program <- c( - "\\newpage", - "\\chapter{Sumarne ocene tudijskih programov}", - paste( - "Prikazana so Povpreja za ocene komponent - vseh programov, v katerih je izvajalec sodeloval. - Pri vsakem programu so upotevane le ocene tudentov, - ki so v program formalno vpisani. - Izpisi omogoajo primerjave izvajalca s povpreji - odgovarjajoih programov - (posredno so rezultati vkljueni v izraun kvantilnih - rangov predmeta po programih). " - ), - part$izvajalec[[izvajalec]]$progPRED, - part$izvajalec[[izvajalec]]$progPO, - part$izvajalec[[izvajalec]]$progIPP - ) - } else { - tex.program <- c( - "\\newpage", - "\\chapter{Sumarne ocene tudijskih programov}", - "- Zaradi neodgovorov analiza po tudijskih programih, v katerih je izvajalec sodeloval, ni bila narejena. -" - ) - } - # TEST - # e bi eleli vstaviti ocene od katerega drugega pedagoga. - #if (file.exists(paste0('C:/Miha DELO/da.tex'))) { # ali ocene obstajajo (so v mapi) - # tex.poLetih <- scan(paste0('C:/Miha DELO/da.tex'), character(0), sep='\n', quiet=TRUE) - #} else { - # tex.poLetih <- '- Ni podatkov -' - #} - ## //TEST// ## - - # Struktura izpisa za izvajalca (zdruevanje vektorjev in sestava podatkovnega okvirja) - tex.report.izvajalec <- c( - tex.glava.izvajalec, - "\\chapter{Povzetek}", - "\\setlength{\\tabcolsep}{4pt}", - part$izvajalec[[izvajalec]]$povzetek, - "\\newpage", - part$izvajalec[[izvajalec]]$kvantili, - "\\newpage", - "\\setlength{\\tabcolsep}{6pt}", - tex.report.izvajalec, - if (!is.null(tex.praksa)) { - c("\\chapter{tudijska praksa}", - studpraksa$predmet[[izvajalec]][[praksa]]) - }, - "\\newpage", - - "\\setlength{\\tabcolsep}{3pt}", - "\\renewcommand{\\arraystretch}{0}", - # defines vertical spacing of tables - tex.program, - "\\newpage", - tex.okvir.izv, - tex.noga - ) - - - # Outputs the objects, concatenating the representations. - cat(unlist(tex.report.izvajalec), file = paste0("Evalvacija/results/",fakulteta,"/izvajalec_", gsub(".*_([0-9]+).*","\\1",izvajalec),"_", fakulteta, ".tex"), sep = "\n") - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste0("izvajalec_", gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '.tex'), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} -#---------------------------------------- //IZVAJALEC REPORT// ------------------------------------------# - - - - -#---------------------------------------- POVZETEK: SEPERATE REPORT FOR CLECURER ----------------------------------------------# -## NAREDIMO E LOENA POROILA IZVAJALCEV, KI VSEBUJEJO LE POGLAVJE POVZETEK -# Definiramo Glavo dokumenta -tex.glava.povzetek <- scan('Evalvacija/latexkosi/povzetek.glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -tex.glava.povzetek <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava.povzetek) -# tudijsko leto -tex.glava.povzetek <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava.povzetek) - -# For zanka -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - tex.report.izvajalec.povzetek <- NULL - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec.povzetek <- - gsub( - pattern = '!naslov!', - replacement = Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), - x = tex.glava.povzetek - ) - #------------------------------------------------- - - # Poglavje: Povzetek--------------------------- - tex.report.izvajalec.povzetek <- c( - tex.glava.izvajalec.povzetek, - "\\setlength{\\tabcolsep}{4pt}", - paste("V tabelah so prikazana povpreja na lestvicah, - kjer so tudenti oznaili strinjanje s trditvami, - ki se nanaajo na komponente pedagoke izvedbe - (1 - sploh se ne strinjam, 2 se bolj ne strinjam kot strinjam, - 3 niti se ne strinjam niti se strinjam, 4 se bolj strinjam kot ne strinjam, - 5- popolnoma se strinjam). Vpraalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - kritino nizka povpreja (1.02.9) pa so obarvana {\\color{BrickRed}rdee}. - Visoka povpreja (4.54.7), kjer je veina tudentov podala oceno - popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - najvija (4.85.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, - ampak je navedena pika .. Ocene za povpreja, ki temeljijo na nizkem - tevilu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so oznaene z enojnim () oziroma z dvojnim oklepajem (()). - Podrobne analize in podrobna metodoloka pojasnila so v celotnem poroilu. - Osnovna metodoloka pojasnila se nahajajo tudi na \\url{http://ul.1ka.si/metodologija}."), - part$izvajalec[[izvajalec]]$povzetek.povzetek - ) - #--------------------------------------------- - - predmet.tex <- NULL - - for (predmet in izvajalci[[izvajalec]]$predmeti) { - # Update 25.10.2019 # - #===================# - # Po novem bomo pri odprtih vpraanjih dodali - # PREDMET ali IZVAJALEC odvisno ali se odgovori - # navezujejo na predemt ali izvajalca (vse z namenom preglednosti) - # Vpraanja, ki se nanaajo na predmet: - # Odprta vpraanja PRedmet - vpr.pred.pros <- c("\\textbf{Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z izvedbo predmeta. (anketa PRED izpitom)}") - # vpr.pred.pros bomo zamenjali z vpr.pred.pros.rep - vpr.pred.pros.rep <- c("\\textbf{PREDMET: Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z izvedbo predmeta.}") - - vpr.pred.cons <- c("\\textbf{Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z izvedbo predmeta. (anketa PRED izpitom)}") - # vpr.pred.cons bomo zamenjali z vpr.pred.cons.rep - vpr.pred.cons.rep <- c("\\textbf{PREDMET: Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z izvedbo predmeta.}") - - - vpr.po.kom <- c("\\textbf{V kolikni meri ste pri predmetu pridobili priakovane kompetence? e elite, lahko odgovor pojasnite. (anketa PO izpitu)}") - vpr.po.kom.rep <- c("\\textbf{PREDMET: V kolikni meri ste pri predmetu pridobili priakovane kompetence? e elite, lahko odgovor pojasnite.}") - - - # odprta vpraanja Izvajalec - vpr.izv.pros <- c("\\textbf{Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z delom izvajalca/ke pri izvedbi predmeta.}") - vpr.izv.pros.rep <- c("\\textbf{IZVAJALEC: Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z delom izvajalca/ke pri izvedbi predmeta.}") - - - vpr.izv.cons <- c("\\textbf{Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z delom izvajalca/ke pri izvedbi predmeta.}") - vpr.izv.cons.rep <- c("\\textbf{IZVAJALEC: Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z delom izvajalca/ke pri izvedbi predmeta.}") - - - # e obstajajo odgovori - if ( length(part$predmet[[predmet]]$text)> 0) { - part$predmet[[predmet]]$text <- gsub(vpr.pred.pros, vpr.pred.pros.rep, part$predmet[[predmet]]$text, fixed = TRUE) - part$predmet[[predmet]]$text <- gsub(vpr.pred.cons, vpr.pred.cons.rep, part$predmet[[predmet]]$text, fixed = TRUE) - part$predmet[[predmet]]$text <- gsub(part$predmet[[predmet]]$text[grepl("V kolikni meri ste pri predmetu pridobili priakovane kompetence", - part$predmet[[predmet]]$text)], - vpr.po.kom.rep, - part$predmet[[predmet]]$text, - fixed = T) - part$izvajalec[[izvajalec]][[predmet]]$text <- gsub(vpr.izv.pros, vpr.izv.pros.rep, part$izvajalec[[izvajalec]][[predmet]]$text, fixed = TRUE) - part$izvajalec[[izvajalec]][[predmet]]$text <- gsub(vpr.izv.cons, vpr.izv.cons.rep, part$izvajalec[[izvajalec]][[predmet]]$text, fixed = TRUE) - - - - predmet.tex[[predmet]] <- c("\\ \\newline", - paste0("{\\Large \\color{red} {\\textbf{", gsub('_', '\\_', subset(povprecja.predmeti, predmet.sifra==predmet)$ime.predmeta, fixed=T), "}}} \\newline \\newline", sep = ""), - part$predmet[[predmet]]$text, "\\ \\newline", - part$izvajalec[[izvajalec]][[predmet]]$text - ) - - } - } - # Update 8.10.2019 # - # K povzetku izvajalca dodamo e interpretacijo v tabelah - tex.report.izvajalec.povzetek <- - c( - tex.report.izvajalec.povzetek, - "\\newpage", - paste0("{\\Large{\\textbf{Odgovori na odprta vpraanja}}} \\newline"), - predmet.tex, - tex.noga) - - # Outputs the objects, concatenating the representations. - cat(unlist(tex.report.izvajalec.povzetek), file = paste("Evalvacija/results/",fakulteta,"/izvajalec_", gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '_povzetek','.tex', sep = ''), sep = '\n') - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste('izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta,'_povzetek', '.tex', sep = ''), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} - -#--------------------------- //SESTAVLJANJE in KOMPILACIJA .tex datotek// ----------------------------------------# - - - - -###################################### -# NAREDIMO PDF POROILO E ZA PREDMETE -###################################### -####################################################################################### -# SESTAVLJANJE in KOMPILACIJA .tex datotek -####################################################################################### -tex.glava <- scan('Evalvacija/latexkosi/a-glava-predmet.tex', character(0), sep='\n', quiet=TRUE,encoding='UTF-8') #encoding='UTF-8' (Ȏ ji) -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) #V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) #Izpis imena leta semestra -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') -Rdirektorij <- getwd() - - -# REPORTI PREDMETOV # -for (predmet in names(predmeti)){ - tex.izvajalci.predmet <- NULL - predmet.temp <- subset(povprecja.predmeti, predmet.sifra==predmet) - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { - tex.part.predmet <- c(part$predmet[[predmet]]$cont, "\\newpage", part$predmet[[predmet]]$krediti, "\\newpage",part$predmet[[predmet]]$kompetence1,"\\newpage", - "\\section{Analiza po programih in letnikih}", part$predmet[[predmet]]$BySmerLetnik, "\\newpage","\\section{Odgovori na odprta vpraanja}", part$predmet[[predmet]]$text) - - - for (izvajalec in as.character(predmeti[[predmet]]$izvajalci)){ - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - tex.part.izvajalecBySmerLetnik <- NULL - } else { - tex.part.predmet.izvajalec <- c("\\subsection{Komponente pedagokega dela}", part$izvajalec[[izvajalec]][[predmet]]$cont, "\\newpage") - tex.part.izvajalecBySmerLetnik <- c('\\subsection{Analiza po smereh in letnikih}', part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik) - } - tex.naslov.izvajalca <- paste('\\section{', izvajalci[[izvajalec]]$ime, '}', sep='') - tex.izvajalci.predmet <- c(tex.izvajalci.predmet, tex.naslov.izvajalca, tex.part.predmet.izvajalec, tex.part.izvajalecBySmerLetnik, "\\newpage") - } - tex.parti <- c("\\newpage", - '\\section{Ocene iz ankete PRED in ankete PO izpitu}', tex.part.predmet - - ) - } - - tex.glava.predmet <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(gsub('_', '\\_', predmet.temp$ime.predmeta[1], fixed=TRUE)), x=tex.glava) - if (predmet.temp$STOPNJA[1]==1) { - stopnjaText <- 'Dodiplomski tudij' - } else if (predmet.temp$STOPNJA[1]==2) { - stopnjaText <- 'Podiplomski tudij' - } else {stopnjaText <- ''} - tex.glava.predmet <- gsub(pattern='\\hfillprostorZaStopnjo - Studija', replacement=Hmisc::latexTranslate(stopnjaText), tex.glava.predmet, fixed=TRUE) - - - tex.report.predmet <- c( - tex.glava.predmet, - "\\newpage", - "\\setlength{\\tabcolsep}{4pt}", - part$predmet[[predmet]]$povzetek, - part$predmet[[predmet]]$kvantili, - "\\newpage", - "\\setlength{\\tabcolsep}{6pt}", - '\\chapter{Podrobne analize}', - part$predmet[[predmet]]$response, - tex.parti, - "\\newpage", - tex.noga - ) - - cat(tex.report.predmet, file=paste("Evalvacija/results/",fakulteta,"/predmet_", predmet,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - tools::texi2pdf(file=paste("predmet_", predmet,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) - - -} -# /REPORTI PREDMETOV/ # diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec_AG.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec_AG.R deleted file mode 100644 index 201db8daf..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/07_PDF_izvajalec_AG.R +++ /dev/null @@ -1,4599 +0,0 @@ -########## -#' @NOTE # -########## -# Kode for generating report for izvajalec e.g, izvajalec_321_FDV.pdf -# The repsent code consist of IV parts: -#' # @PART I Izvajalec -#' # @PART II predmet -#' # @PART III studijska praksa -#' # @PART IV compiling tex files -#' into PDF -# The three parts generate pdf report for lecturer -#--------------------------------------------------------------------# - - - -#---------------------- 1KA strenik -------------------------# -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo -# za posamezno fakulteto na streniku -# Tega trenutno ne rabimo -#params <- commandArgs(trailingOnly = TRUE) -#ID <- params[1] -#---------------------- //1KA strenik// ---------------------# - -############################################################## -# Run first # -# source("Evalvacija/R/00_dataanalysis.R", encoding = "UTF-8") -############################################################## - - -# ---------------- ADDITIONAL PARAMETERS BEFORE CRAETING REPORT FOR LECTURER -----------------# -# V primeru, da v poroilu za izvajalca nosilec predmeta eli videti tudi ocene soizvajalca -nosilci_soizvajalcev <- TRUE -# ali naj omeji poroila samo na doloene izvajalce -omejeniIzvajalci <- FALSE -# katere glede na vrstico zgoraj -omejeniIzvajalciSifre <- c("3000071_BF_125") -#-------------- //ADDITIONAL PARAMETERS BEFORE CRAETING REPORT FOR LECTURER// ---------------# - - -###################################### -#' DATA NEEDED FOR PDF REPORT: @PART I -###################################### -#--------------------------------------------- IZVAJALEC ------------------------------------------------# -# omejeniIzvajalci v primeru da se generira samo poroila za doloene izvajalce; -# naredi se tudi za vse soizvajalce pri vseh njihovih predemtih + -# (za primere kjer je nosilec v omejeniIzvajalciSifre) -if (omejeniIzvajalci) { - # ifre predmetov, ki pripadajo izvajalcu - omejeniPredmetiSifre <- - data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% omejeniIzvajalciSifre] - # Izvajalci, ki so sodeloval pri predmetu - sifreIzvajalec <- - as.character(unique(data.izvajalci$izvajalec.sifra[data.izvajalci$predmet.sifra %in% omejeniPredmetiSifre])) -} else { - sifreIzvajalec <- - as.character(unique(data.izvajalci$izvajalec.sifra)) -} - -# For Loop purposes----------------------------------- -# Naredili bomo list, ki bo sestavni del PDF dokumenta -# Torej list, ki vsebuej vse podatke o izvajalcu -izvajalci <- NULL -# Povpreja za ocene komponent vseh programov, -# v katerih je izvajalec sodeloval -izvajalci_program <- NULL -# Deli v katere bomo zapisali posamezna latex -# poglavja oz. izraune za izvajalce -part <- NULL -#----------------------------------------------------# - -# START COMPILING DATA FOR IZVAJALEC-------------------------------------------------- -# Zanka, ki generira poroila za vse unikatne ifre izvajalcev, ki so v sifreIzvajalec -for (izvajalec in sifreIzvajalec) { - # indeks izvajalcev z imeni in predmeti po ifrah izvajalcev - # Ime izvajalca - ime.izvajalca <- - sifrant[sifrant$IDPEDAGOGA == izvajalec, 'NAZIV.PEDAGOGA'][1] - # Preverimo, da ime izvajalca obstaja in ni v ifrantu ni napake - if (is.na(ime.izvajalca)) { - warning(paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!'), - immediate. = TRUE) - ime.izvajalca <- - paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!') - } - - #--------- INFORAMTION ABOUT LECTURER AND HIS COURSES AND PROGRAMMES ---------# - # izvajalec in Povpreje predmeta / predmetov - izvajalci[[izvajalec]] <- list( - ime = ime.izvajalca, - predmeti = as.character(unique( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$predmet.sifra - )), - ime.datoteke = paste('izvajalec_', izvajalec, '.pdf', sep = - '') - ) - - # Povpreje izvajalca: tudijski program (Uporabimo pri poroilu izvajalca in sicer poglavje: Sumarne tudijske ocene programov) - izvajalci_program[[izvajalec]] <- list( - ime = ime.izvajalca, - predmeti = as.character(unique( - subset(povprecja.izvajalci.programi, izvajalec.sifra == izvajalec)$predmet.sifra - )), - ime.datoteke = paste('izvajalec_', izvajalec, '.pdf', sep = - '') - ) - #------- //INFORAMTION ABOUT LECTURER AND HIS COURSES AND PROGRAMMES// -------# - - - # Analize za vse predmete, ki jih pouuje izvajalec---------------------------- - # Zanka za vse ifre predmetov izvajalca izvajalci[[izvajalec]]$predmeti - for (predmet in izvajalci[[izvajalec]]$predmeti){ - - #-------------- LECTURER DATA -------------------# - # Povpreje predmetov izvajalca - povp.izv.predm <- - subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec & predmet.sifra == predmet) - - povp.izv.predm <- povp.izv.predm[!duplicated(povp.izv.predm$predmet.sifra),] - # Podatki o izvajalcu (komentarji na njegove predmete, itd.) - izv.koment <- - subset(data.izvajalci, - izvajalec.sifra == izvajalec & predmet.sifra == predmet & veljavna) - #------------ //LECTURER DATA// -----------------# - - # Generiraj poroila za vse komponente, kjer so vsaj 4 odgovori - if (povp.izv.predm$N_anket >= minEnot) { # cele dele dela smo kjer je dovolj enot (ve ali enako 4) - - - #--------------------------------- PDF CHAPTER NAMED "OCENA IZVAJALCA" ---------------------------------# - # This chapter consist fo two tables and one radar graph (see in "izvajalec_321.PDF) - # The order of tables and graph in this chapter is following: - # 1) TABLE 1 - # 2) RADAR CHART - # 3) TABLE 2 - - # FIRST TABLE (TABLE 1) ------------------------ - #==============================================# - # vars.izvajalec$cont$vars <- imena komponent za izvajalca, ki so jih ocenjevali tudenti - tabela.cont <- cbind.data.frame( - # tevilo odgovorov posamezne komponente - N = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_N")]), - # Povpreje komponent izvajalca (Kakovost, itd.) - mean = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_mean")]), - # Standardni odklon komponent - sd = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_sd")]), - # Min vrednosti komponent na likertovi letvici od 1-5 - min = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_min")]), - # Min vrednosti komponent na likertovi letvici od 1-5 - max = as.numeric(povp.izv.predm[paste0(vars.izvajalec$cont$vars, "_max")]) - ) - # For radar chart - radar.m <- tabela.cont - # e je NA potem doda piko "." <- Prikaz v latex tabeli - tabela.cont[is.na(tabela.cont)] <- "." - - # e je tevilo enot manje kot 4 dodaj opombo, ki se bo izpisala pod latex tabelo - if (any(tabela.cont == ".")) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega - tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' - } else {opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}"} - - # Povpreja ocen komponent izvajalcev celotne fakultete - F.mean <- data.frame(F.avg.izv[paste0(vars.izvajalec$cont$vars,"_mean")]) - colnames(F.mean) <- 'Fmean' - tabela.cont <- cbind(tabela.cont, F.mean) - - # Zdruimo vrstice: tabela.cont z vrsticami: SKUPNE OCENE IZVAJALCA in vrstice s Povpreji Fakultete (FDVcont) - tabela.cont <- - rbind(tabela.cont, - c('', - povp.izv.predm$izvajalec.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont$Fmean, na.rm = TRUE) - )) - - # Premaknemo SD, MIN IN MAX V TABELO porazdelitev.tex - op.sta.izva <- tabela.cont[c(3, 4, 5)] - # Barvanje vrednosti glede na mejne vrednosti. - tabela.contR <- formatval(tabela.cont) # formatval is custom defined function - - # Imena vrstic tabele - rownames(tabela.contR) <- c(as.character(vars.izvajalec$cont$ime.dolgo[vars.izvajalec$cont$vars]), '\\hline\n\\textbf{Skupaj}') - - # PORAZDELITEV ODGOVOROV IZVAJALEC # - #################################### - ## Tabela frekvennih porazdelitev ocen komponent za izvajalce pri predmetu ## - izva.pred.freq <- subset(data.izv.miss, izvajalec.sifra == izvajalec & predmet.sifra == predmet) - - # Frequency distribution - dist <- t(sapply(izva.pred.freq[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izv.someMiss)))) - - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.1 <- round((rowSums(dist[,1:2], na.rm = TRUE)) / (rowSums(dist, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.2 <- round((rowSums(dist[,4:5], na.rm = TRUE)) / (rowSums(dist, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.1 <- ifelse(tabela.contR$mean == ".", ".", dist.pct.1) - dist.pct.2 <- ifelse(tabela.contR$mean == ".", ".", dist.pct.2) - - # Barvanje vrednosti - dist.pct.1 <- ifelse(dist.pct.1 != "." & dist.pct.1 >= 20, paste('{\\color{Orange}', dist.pct.1, '}'),dist.pct.1) - dist.pct.2 <- ifelse(dist.pct.2 != "." & dist.pct.2 <= 50, paste('{\\color{Orange}', dist.pct.2, '}'),dist.pct.2) - ## /Porazdelitev delei / ## - - # Zdruimo stolpce - tabela.contR <- qpcR:::cbind.na(tabela.contR,dist.pct.1,dist.pct.2) - tabela.contR <- tabela.contR[, c(1, 2, 7, 8, 6)] - - - # PORAZDELITEV ODGOVOROV FAKULTETA # - #################################### - # Enako naredimo e za FAKULTETO - izva.pred.freq.f <- subset(data.izvajalci, (veljavna)) - izv.dist.f <- t(sapply(izva.pred.freq.f[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izv.someMiss)))) - - dist.pct.FDV.1 <- round((rowSums(izv.dist.f[,1:2], na.rm = TRUE))/ (rowSums(izv.dist.f, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.FDV.2 <- round((rowSums(izv.dist.f[,4:5], na.rm = TRUE)) / (rowSums(izv.dist.f, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - dist.pct.FDV.1 <- ifelse(dist.pct.FDV.1 >= 20, paste('{\\color{Orange}', dist.pct.FDV.1, '}'),dist.pct.FDV.1) - dist.pct.FDV.2 <- ifelse(dist.pct.FDV.2 <= 50, paste('{\\color{Orange}', dist.pct.FDV.2, '}'),dist.pct.FDV.2) - # /Porazdelitev delei/ # - - # Zdruimo - tabela.contR <- - qpcR:::cbind.na(tabela.contR, dist.pct.FDV.1, dist.pct.FDV.2) - - colnames(tabela.contR) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - - # Morebitne "." v zadnjem stolpcu nadomestimo z NA, da se ne izpie v Latex tabeli - tabela.contR[nrow(tabela.contR), c(1, 3, 4)] <- NA - - # Latex Table Compile tex file - tabela.contR.tex <- - capture.output( - Hmisc::latex( - toLatex(tabela.contR), - caption = "Povpreja in delei kategorij odgovorov za komponente pedagokega dela - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)", - rowlabel = '', - # Prva vrstica v tabeli (zgoraj levo ne bo poimenovana) - file = '', - where = 'H', - cgroup = c("Izvajalec", fakulteta), - # Imena stolpcev bodo razdeljena na dva dela ter poimenovana (Izvajalec, ime fakultete) in - n.cgroup = c(4, 3), - # grupirana. Prvi stolpec obsega 5 vrstic drugi stolpec obsega 1 vrstico - col.just = rep_len('c', ncol(tabela.contR)), - rowlabel.just = 'p{7cm}', - # irina vrstic - insert.bottom = opomba - ) - ) - #-------------- //FIRST TABLE (TABLE 1)// ------------------# - - - - # RADAR CHART #------------------------------ - #===========================================# - # Glej poroilo za izvajalca, in sicer Slika: Opisne statistike pedagokega dela za izvajalca pri predmetu (anketa PRED izpitom) - if (sum(!is.na(radar.m$mean)) < 4) { - radar.m$mean <- radar.m$mean[!is.na(radar.m$mean)] <- NA - } # e so bile 3 zaporedne vrednosti je nastala udna rta zato reemo, da naj bodo najmanj 4 - radar.cont <- - data.frame(rbind(5, 1, t(cbind( - F.mean, as.numeric(radar.m$mean) - ))), - row.names = 1:4, - check.names = FALSE) - #Imena stolpcev radar grafa:"Kakovost","Pripravljenost", "Razumljivost","Zanimivost","Kritinost","Korektnost" - colnames(radar.cont) <- - sub(" ", "\n", as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars])) - # CairoPDF initializes a new graphics device that uses the cairo graphics library for rendering - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/", izvajalec, '_', predmet, '_cont.pdf', sep=''), - family='sans', pointsize=9, width=6, height=4) - #Setting graph margins. xpd=TRUE -enable things to be drawn outside the plot region - par(mar = (c(0, 4, 1, 6) + 0.1), xpd = TRUE) - # Plot RADAR CHART fmsb::radarchart - fmsb::radarchart( - radar.cont, - pcol = c('dodgerblue3', 'firebrick3'), - cglcol = 'gray75', - plwd = 2, - plty = 1, - cglwd = 1, - cglty = 1, - seg = 4, - axistype = 1, - caxislabels = c(1:5), - axislabcol = 'gray25', - centerzero = TRUE - ) - legend( - 'topright', - inset = c(-0.15, 0), - legend = c("Izvajalec", paste(fakulteta, "Povpreje")), - col = c('firebrick3', 'dodgerblue3'), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - #-------------------- // RADAR CHART // --------------------# - - - # SECOND TABLE (TABLE 2) -------------------------- - #=================================================# - # Tabela Frekvenne porazdelitve ocen komponent - # pedagokega dela izvajalca (anketa PRED izpitom) - dist.freq <- dist - - # samo kjer je dovolj enot - dist.freq[rowSums(dist.freq) < minEnot, ] <- NA - dist.freq <- cbind(dist.freq, rowSums(dist.freq, na.rm = TRUE)) - - # Imena stolpcev - dist.freq <- - cbind(dist.freq, formatval(op.sta.izva[-nrow(op.sta.izva),])) - - # Colnames for Latex tables - colnames(dist.freq) <- - c( - "\\textbf{1}", - "\\textbf{2}", - "\\textbf{3}", - "\\textbf{4}", - "\\textbf{5}", - "\\textbf{Ne elim odg.}", - "\\textbf{Nimam informacij}", - "\\textbf{Skupaj}", - "\\textbf{Sd}", - "\\textbf{Min}", - "\\textbf{Max}" - ) - - # Also add rownames - rownames(dist.freq) <- as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars]) - - # Generiranje LATEX TABELE - porazdelitev.tex <- capture.output( - Hmisc::latex( - dist.freq, - caption = "Frekvenna porazdelitev ocen komponent pedagokega dela izvajalca - (anketa PRED izpitom)", - rowlabel = "\\textbf{Komponente}", - file = "", - where = "H", - col.just = rep_len("c", ncol(dist.freq)), - insert.bottom = "" - ) - ) - #-------------- //SECOND TABLE (TABLE 2)// ------------------# - - - # CREATE CHAPTER -------------------------------------- - part$izvajalec[[izvajalec]][[predmet]]$cont <- c( - tabela.contR.tex, - # Radar graf, ki smo ga prej shranili s pomojo CAIROPDF, sedaj naloimo - "\\begin{figure}[H]", - "\\caption{Opisne statistike pedagokega dela za \\textbf{izvajalca} - pri predmetu (anketa PRED izpitom)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-izvajalec-slike/", - izvajalec, - '_', - predmet, - '_cont.pdf}}' - ), - "\\end{figure}", - porazdelitev.tex - ) - #------------------------------- //PDF CHAPTER NAMED "OCENA IZVAJALCA"// -------------------------------# - - - - #---------------------- STUDENTS COMENTS FOR LECTURER ON OPEN ENDED QUESTIONS -------------------------# - ## TEKSTOVNE (KOMENTARJI tUDENTOV) ## - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpraanja" - data.text <- lapply(izv.koment[vars.izvajalec$text$vars], trim) - - - # Pri Biotehniki se je pri odprtih komentarjih zgodilo - # da je znak "x" poruil latex in je javlajlo napako - # zaot to ustrezno nadomestimo. - data.text[] <- - lapply(data.text, function (x) - gsub("", "*", x, fixed = TRUE)) - - - - for (textvar in names(data.text)) { - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- - gsub(pattern = '\\\\', - replacement = '!backslash!', - x = data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo otevileni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - part$izvajalec[[izvajalec]][[predmet]]$text <- tex.text - #-------------------- //STUDENTS COMENTS FOR LECTURER ON OPEN ENDED QUESTIONS// -----------------------# - - - # ------------------- PDF CHAPTER NAMED "ANALIZA IZVAJALCA PO PROGRAMIH IN LETNIKIH" -------------------# - ## analiza izvajalca po smereh in letnikih tudentov ## - # Glej kodo tabelaBy.r kjer definiramo funkcijo tabelaBy - - # Get data from which program did the greades for the lecturer come from - izvBySmer.df = subset( - povprecja.izvajalci.programi.brez.cenzure, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & N_anket > 0 - )[c( - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - paste0(vars.izvajalec$cont$vars, "_N"), - "program.studentov.ime" - )] - - izvBySmer.df <- izvBySmer.df[!duplicated(izvBySmer.df$program.studentov.ime),] - - # Prepare data and create latex table (see custom function "pro.let.c") - izvajalecBySmer <- pro.let.c(izvBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje izvajalca pri predmetu}", # Second argument rownames for lecturers total average - F.avg.izv, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.izvajalci.st," - izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od IPP of lecturer - "Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} - glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)", # Fifth argument is Latex Table caption - "IPP", # Sixth argument is for the type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, #Seventh argument, If is TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( #Eight argument presents Colnames for Latex table which are rotated 90 degrees in Latex tables: latex.rotate in custom function for rotating purposes - "t. odgovorov", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ))) - - - # Povpreja glede na letnik tudentov - izvByLetnik <- - subset( - povprecja.izvajalci.letniki.brez.cenzure, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & N_anket > 0 - )[c( - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - paste0(vars.izvajalec$cont$vars, "_N"), - "letnik.studentov" - )] - - izvByLetnik <- izvByLetnik[!duplicated(izvByLetnik$letnik.studentov),] - - # Prepare data and create latex table (see custom function "pro.let.c") - izvajalecByLetnik <- pro.let.c(izvByLetnik, - "\\hline \\textbf{Povpreje izvajalca pri predmetu}", - F.avg.izv, - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.izvajalci.st," - izvedb pri predmetih)}"), - "Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} - po letniku vpisanih tudentov (anketa PRED izpitom)", - "IPP", - letnik = TRUE, - colnam = latex.rotate(c( # Colnames for Latex table - "t. odgovorov", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ))) - - - # Kvantilni rangi - # Generiranje tabel, glej poroilo za izvajalca, tabelo: - # "Kvantilni rangi za Povprene ocene komponentizvajalca pri predmetu glede na tudijske programe tudentov** (anketa PRED izpitom)" - progs <- rownames(izvajalecBySmer$tabela[izvajalecBySmer$tabela$N_anket >= minEnot,]) - izvajalecBySmerProgrami <- - subset( - kvantili.izvajalci.programi, - izvajalec.sifra == izvajalec & - predmet.sifra == predmet & program.studentov.ime %in% progs - ) - izvajalecBySmerProgrami <- izvajalecBySmerProgrami[!duplicated(izvajalecBySmerProgrami$program.studentov.ime),] - - - - - if (nrow(izvajalecBySmerProgrami) > 0) { - # For Latex table purposes we also need the number of lecturers on each student programm - proggIZ.tmp <- - povprecja.izvajalci.programi[povprecja.izvajalci.programi$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - proggIZ.tmp <- - aggregate(proggIZ.tmp$predmet.sifra, by = proggIZ.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - # Merge number of lecturers with quantile ranks - izvajalecBySmerProgrami <- - merge( - izvajalecBySmerProgrami, - proggIZ.tmp[c("x","program.studentov")], - by = c("program.studentov"), - all.x = TRUE - ) - - # Sort data based on number of IPP (izvajalci pri predmetih) - izvajalecBySmerProgrami <- - izvajalecBySmerProgrami[order(izvajalecBySmerProgrami$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(izvajalecBySmerProgrami) <- - make.unique(as.character(izvajalecBySmerProgrami$program.studentov.ime)) - # Tidy daata for Latex tables - izvajalecBySmerProgrami <- - izvajalecBySmerProgrami[c( - "x", - "N_anket", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - # Imena Stolpcev - colnames(izvajalecBySmerProgrami) <- latex.rotate(c("t. IPP***","t. odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}")) - # Compile Latex Table - izvajalecBySmerProgrami <- capture.output(Hmisc::latex(izvajalecBySmerProgrami, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetu} - glede na vse predmete v doloen tudijski - program vpisanih tudentov** (anketa PRED izpitom)"), - rowlabel="", - file="", - where="H", - rowlabel.just="p{10.2cm}", - insert.bottom=kvan.pojas3, - longtable = TRUE, - multicol=FALSE, - col.just=c("c","|c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c") - )) - } else { - izvajalecBySmerProgrami <- NULL - } - - - # - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik <- c(izvajalecBySmer$tex, izvajalecBySmerProgrami, izvajalecByLetnik$tex) - # /analiza izvajalca po smereh in letnikih tudentov/ # - - } else { # e ni dovolj enot - part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot <- - "- Zaradi prenizkega tevila odgovorov analiza izvajalca ni bila narejena. -" - } - #------------------- //PDF CHAPTER NAMED "ANALIZA IZVAJALCA PO PROGRAMIH IN LETNIKIH"// -------------------# - } - - - - #---------------------------- PDF CHAPTER NAMED: Povzetek: Ocene predmetov in izvajalca ----------------------------# - - # paste0(vars.izvajalec$cont$vars,"_mean") <- Kakovost, Pripravljenost, razumljivost, zanimivost, kritinost, korektnost - pov.izv <- - povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anketTotal", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - # Preverimo e pri izvajalcu obstajajo lurkerji - povzetek.izvajalca.lurkerji <- povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra==izvajalec, - c("N_lurkerjev_ivz")] - - # e povpreja Predmetov - # Komponente za anketo PRED izpitom (glej tabelo 1,1) - pov.pred <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")] - - # Preverimo, e so v v odgovore ankete PRED zajeti tudi lurkerji - povzetek.predmetov.pred.lurkerji <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_pred")] - - - - # Komponente za anketo PO izpitu (glej tabelo 1,2) - pov.po <- povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.krediti_mean")] - - - povzetek.predmetov.po.lurkerji <- povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_po")] - - - # PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA # - # Povprene ocene izvajalca pri predmetih - povprecja.izvajalci.skupaj.temp <- subset(povprecja.izvajalci.skupaj, izvajalec.sifra==izvajalec) - - meansI <- - povprecja.izvajalci.skupaj.temp[c( - "ST_STUD", - "N_anketTotal", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - "nipouceval.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpred <- - subset(povprecja.predmetov.izvajalca.skupaj, - izvajalec.sifra == izvajalec)[c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpo <- - subset(povprecja.predmetov.izvajalca.skupaj.po, - izvajalec.sifra == izvajalec)[c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - ## //PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA// ## - - ##### averages of programmes from which lecturer got grades# from which programme most grades come from ##### - colnames(povprecja.izvajalci.skupaj.temp) <- gsub('.x','',names(povprecja.izvajalci.skupaj.temp)) - povprecja.izvajalci.skupaj.temp <- povprecja.izvajalci.skupaj.temp[!is.na(povprecja.izvajalci.skupaj.temp$NAZIV.PEDAGOGA),] - maxProgram <- sub("program_studenta_", "", - names(sort( - povprecja.izvajalci.skupaj.temp[paste0("program_studenta_", - programi$student.program.sifra)], decreasing = - TRUE - )[1])) - # Get the programme mean - maxIPP <- subset(povprecja.izvajalci.programi, program.studentov %in% maxProgram) - # Number of Lecturers with enough answers (4 or more) on the programme - maxIPP.n <- length(which(maxIPP$N_anket >=4)) - # Program Rowname - maxIPP.nm <- as.character(unique(maxIPP$program.studentov.ime)) - maxIPP <- maxIPP[, grepl("mean|Skupaj", colnames(maxIPP), ignore.case = TRUE)] - maxIPP <- colMeans(maxIPP, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxIPP <- as.data.frame.list(maxIPP) - # Add Rownames - rownames(maxIPP) <- maxIPP.nm - # Color and tidy values for Latex table - #maxIPP <- formatval(maxIPP) - - if (all(maxIPP != ".")) { - # Programme rownames from which most grades come from - maxProgramIme <- - paste0( - "\\hline \\textbf{Povpreje ", - programi$student.program.ime[programi$student.program.sifra == maxProgram], - " (", - maxIPP.n, - " izvajalcev pri predmetih)*}" - ) - # Also Add programme average - meansIprog <- - c("--", "--", "--", "--", "--", "--", "--", unname(maxIPP)) - } else { - maxProgramIme <- NULL - meansIprog <- NULL - } - - - - # PREDMET PRED IZPITOM - # averages of programmes from which lectur got grades# from which programme most grades come from - maxProgramPRED <- - sub("program_studenta_", "", names(sort(povp.izv.predm[paste0("program_studenta_", programi$student.program.sifra)], decreasing = - TRUE)[1])) - maxProg <- subset(povprecja.predmeti.programi, program.studentov %in% maxProgramPRED) - # Number of Lecturers with enough answers (4 or more) on the programme - maxProg.n <- length(which(maxProg$N_anket >=4)) - # Program Rowname - maxProg.nm <- as.character(unique(maxProg$program.studentov.ime)) - maxProg <- maxProg[, grepl("mean|Skupaj", colnames(maxProg), ignore.case = TRUE)] - maxProg <- colMeans(maxProg, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxProg <- as.data.frame.list(maxProg) - # Add Rownames - rownames(maxProg) <- maxProg.nm - # Color and tidy values for Latex table - #maxProg <- formatval(maxProg) - - if (all(maxProg != ".")) { - maxProgramImePRED <- - paste0( - "\\hline \\textbf{Povpreje ", - programi$student.program.ime[programi$student.program.sifra == maxProgramPRED], - " (", - maxProg.n, - " predmetov)*}" - ) - ime.programa <- paste0(programi$student.program.ime[programi$student.program.sifra == maxProgramPRED]) - meansIprogPRED <- - c("--", "--", "--", "--", "--", unname(maxProg)) - } else { - maxProgramImePRED <- NULL - meansIprogPRED <- NULL - } - - - # PREDMET PO IZPITU - maxProgramPO <- - sub("program_studenta_", "", names(sort(povp.izv.predm[colnames(povp.izv.predm) %in% paste0("program_studenta_", programi.po$student.program.sifra)], decreasing = - TRUE)[1])) - maxProgpo <- subset(povprecja.predmeti.programi.PO, program.studentov %in% maxProgramPRED) - # Number of Lecturers with enough answers (4 or more) on the programme - maxProgpo.n <- length(which(maxProgpo$N_anket >=4)) - # Program Rowname - maxProgpo.nm <- as.character(unique(maxProgpo$program.studentov.ime)) - maxProgpo <- maxProgpo[, grepl("mean|Skupaj", colnames(maxProgpo), ignore.case = TRUE)] - maxProgpo <- colMeans(maxProgpo, na.rm = TRUE) - #.data.frame.list is an option to convert each element of a vector to columns of a data.frame - maxProgpo <- as.data.frame.list(maxProgpo) - # Add Rownames - rownames(maxProgpo) <- maxProgpo.nm - # Color and tidy values for Latex table - #maxProgpo <- formatval(maxProgpo) - - if (all(maxProgpo != ".")) { - maxProgramImePO <- - paste0( - "\\hline \\textbf{Povpreje ", - programi.po$student.program.ime[programi.po$student.program.sifra == maxProgramPO], - " (", - maxProgpo.n, - " predmetov)**}" - ) - meansIprogPO <- - c("--", "--", "--", "--", "--", unname(maxProgpo[c( - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )])) - } else { - maxProgramImePO <- NULL - meansIprogPO <- NULL - } - ## //averages of programmes from which lecturer got grades# from which programme most grades come from// ## - - - - # Dodajanje opomb, ki se prikaejo pod posamezno tabelo v poglavju POVZETEK - if (sum(is.na(pov.izv)) > 0) { - opombaI <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. \\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec pri predmetu - ni poueval (npr. ve asistentov izvaja vaje pri predmetu - za razline skupine tudentov).}}" - - opombaI.povzetek <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. \\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec pri predmetu - ni poueval (npr. ve asistentov izvaja vaje pri predmetu - za razline skupine tudentov).}}" - - } else { - opombaI <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. - Ocene morebitnih ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.\\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec ni poueval - (npr. ve asistentov izvaja vaje pri predmetu za razline skupine tudentov).}}" - - - opombaI.povzetek <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov.\\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmet). \\newline - *** tudent je v anketi oznail, da ga izvajalec ni poueval - (npr. ve asistentov izvaja vaje pri predmetu za razline skupine tudentov).}}" - - } - if (sum(is.na(pov.pred)) > 0) { - opombaPpred <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali predmete - izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. }}" - - - opombaPpred.povzetek <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline - * Program je izbran na podlagi najvijega tevila odgovorov.}}" - - } else { - opombaPpred <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali - predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - - opombaPpred.povzetek <- - "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov.}}" - } - if (sum(is.na(pov.po)) > 0) { - opombaPpo <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih - komponent (glej metodoloka pojasnila): Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval - podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita odstopanja - (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, so - v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - - opombaPpo.povzetek <- - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih - komponent (glej metodoloka pojasnila): Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval - podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita odstopanja - (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov.}}" - } else { - opombaPpo <- - "{\\footnotesize \\textit{* Vrednost pod 3.0 pomeni, da je predmet glede - na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno - tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita - odstopanja (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene ostalih programov, - v katere so vpisani tudenti, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - - - opombaPpo.povzetek <- - "{\\footnotesize \\textit{* Vrednost pod 3.0 pomeni, da je predmet glede - na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno - tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. - {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita - odstopanja (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov.}}" - } - ## //OPOMBE// ## - - # Zdruimo izraunane vrednosti (v vrstice) za izvajalca in za predmete - povzetek.izvajalca <- rbind(pov.izv, # Povreja izvajalca pri predmetu - meansI, # Povpreje izvajalca pri obeh predmetih - meansIprog, # Povpreje programa iz katerega prihaja najve ocen - c(Fizv[1, 1:ncol(Fizv)], F.avg.ipp), # Povpreje vshe izvajalcev pri predemtih - c("--","--","--","--","--","--","--", F.avg.izv)) # Povpreje vseh unikantnih izvajalcev. - - # Povprene ocene komponent (anketa PRED) - povzetek.predmetov.pred <- rbind(pov.pred, - meansPpred, - meansIprogPRED, - c(Fpred[1, 1:ncol(Fpred)], F.avg.pred)) - - # Povprene ocene komponent (anketa PO izpitu) - # Preverimo ali so v anketi PO odgovori oziroma al so v bazi podatki za predmet - if (!nrow(pov.po) > 0) { - pov.po <- meansPpo - - } - povzetek.predmetov.po <- rbind(pov.po, - meansPpo, - meansIprogPO, - c(Fpo[1, 1:ncol(Fpo)], - F.avg.po[c( - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )])) - - - ########################################## - # OBARVANJA VREDNOSTI V TABELAH (formatNA) - ########################################## - # Izvajalec - povzetek.izvajalca <- formatval(povzetek.izvajalca) - # Vhere Podatek je manj pomemben ali teko izracunljiv. replace "." with "--" - povzetek.izvajalca[nrow(povzetek.izvajalca) - c(0, 2), 1:7] <- "--" - - # Predmeti v Anketi PRED - povzetek.predmetov.pred <- formatval(povzetek.predmetov.pred) - povzetek.predmetov.pred[nrow(povzetek.predmetov.pred) - c(1), 1:5] <- "--" - - # Predmeti v anketi PO - povzetek.predmetov.po <- formatval(povzetek.predmetov.po, KT = TRUE) - povzetek.predmetov.po[nrow(povzetek.predmetov.po) - c(1), 1:5] <- "--" - - # Anketa PO - - ### //OBARVANJE UVODNIH TABEL// ### - - ## Imena vrstc TABEL ## - # Imena vrstic tabele 1.3 oz. IZVAJALCA - - # TABLE ROWNAMES # - # Imena vrstic za Tabelo 1.3 (Izvajalec pri predmetu) - rown.pov.izv <- - povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra == izvajalec, "ime.predmeta"] - # Imena vrstic za Tabelo 1.1 <- ANKETA PRED IZPITOM - rown.pov.pred <- - povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # Imena vrstic za Tabelo 1.2 <- ANKETA PO IZPITU - rown.pov.po <- - povprecja.predmeti.po[povprecja.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # Update 10.10.2019 # - # Ker se lahko zgodi, da predmeta v anketi PO sploh ni bilo - # elimo v tem primeru pridobiti ime predmeta iz ANKETE PRED izpitom - # v nasprotnem lahko pride to napake pri generiranju poroil - if(!length(rown.pov.po) > 0) { - rown.pov.po <- rown.pov.pred - } - - # //TABLE ROWNAMES// # - - rownames.pov.izv <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.izv)), - paste0('\\hline \\textbf{Povpreje izvajalca}'), - maxProgramIme, - paste0("\\hline \\textbf{Povpreje ", fakulteta, - " (", kvantili.izvajalci.st," \nizvajalcev pri predmetih)}"), - paste0( "\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.izvajalci.skupaj.st ," \nizvajalcev)}" - ) - ) - - # Imena vrstic tabele 1.1 oz PREDMETA - rownames.pov.pred <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.pred)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}', - maxProgramImePRED, - paste0("\\hline \\textbf{Povpreje ", - fakulteta," (", - kvantili.predmeti.st.pred, " predmetov)}" - ) - ) - - - # Imena vrstic tabele 121 oz PREDMETA - rownames.pov.po <- c( - Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', rown.pov.po)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}', - maxProgramImePO, - paste0( "\\hline \\textbf{Povpreje ", fakulteta, - " (", kvantili.predmeti.st.po, " predmetov)}" - ) - ) - ## //Imena vrstc// ## - - ## Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ ## - # IPP - colnames(povzetek.izvajalca) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "t. odg. izvajalca**", - "\\% odgovorov izvajalca", - "\\% zavrnitev predmeta", - "\\% nesodelujoih", - "\\% ni poueval***", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}" - ) - ) - # ANKETA PRED - colnames(povzetek.predmetov.pred) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "\\% odgovorov", - "\\% zavrnitev", - "\\% nesodelujoih", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ) - ) - # ANKETA PO - colnames(povzetek.predmetov.po) <- - latex.rotate( - c( - "t. vpisanih", - "t. odgovorov", - "\\% odgovorov", - "\\% zavrnitev", - "\\% nesodelujoih", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po]), - "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko) - ) - ) - ## //Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ // ## - - - - ## e so v bati LURKERJI: Preverimo pri katerem predmetu smo jih upotevali po ZAVRNJENE ENOTE - # IZVAJALCI PRI PREDMETIH ANKETA PRED - st.lurkerjev.IZV <- - ifelse(povzetek.izvajalca.lurkerji >= 1, "\\#", "") - - povzetek.izvajalca[, 5][1:length(st.lurkerjev.IZV)] <- - paste(povzetek.izvajalca[, 5][1:length(st.lurkerjev.IZV)], st.lurkerjev.IZV, sep = "") - - if('\\#' %in% st.lurkerjev.IZV){ - opombaLurkerji.IZV <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.IZV <- NULL - } - - # ANKETA PRED PREDMETI - st.lurkerjev.PRED <- - ifelse(povzetek.predmetov.pred.lurkerji >= 1, "\\#", "") - - povzetek.predmetov.pred[, 4][1:length(st.lurkerjev.PRED)] <- - paste(povzetek.predmetov.pred[, 4][1:length(st.lurkerjev.PRED)], st.lurkerjev.PRED, sep = "") - - if('\\#' %in% st.lurkerjev.PRED){ - opombaLurkerji.PRED <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PRED <- NULL - } - - - # ANKETA PO PREDMETI - st.lurkerjev.PO <- ifelse(povzetek.predmetov.po.lurkerji >= 1, "\\#", "") - if(all(!is.na(st.lurkerjev.PO))) { - povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)] <- paste(povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)], st.lurkerjev.PO, sep = "") - } - - if('\\#' %in% st.lurkerjev.PO){ - opombaLurkerji.PO <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, - ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PO <- NULL - } - - - ##################################### - ## Histogrami v poglavju: POVZETEK ## - ##################################### - # We will put two histograms side by side on one page - # Histograms will present two differents components of elcturer or course (see more in report) - # Histogram for lecturer (TABLE 1.3 in the PDF report for the lecturer) - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) { #Histograme izrie v primeru, da ni NA vrednosti - - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM1.pdf"), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - - hist(povprecja.izvajalci$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.st," izvajalcev pri predmetih")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=12) # control over exactly the breakpoints between bins - points(x=subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - y=0, pch="X", cex=2.0) #Kriec v histogramu - # Drugi histogram - hist(povprecja.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.skupaj.st," izvajalcev")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5)) - points(x=subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - y=0, pch="X", cex=2.0) - dev.off() - } - - # Histogram for ANEKTA PRED, see table 1.1 in th epdf report for lecturer - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM2.pdf"), family='sans', - pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - hist(povprecja.predmeti$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.pred," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points( - x = subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - - hist(povprecja.predmeti$predmet.ocena.zadovoljstvo_mean, - xlab=c(paste0("Zadovoljstvo za\n", kvantili.zadovoljstvo," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points( - x = subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - - # Histogram for ANEKTA PO, see table 1.1 in th epdf report for lecturer - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM3.pdf"), family='sans') - hist(povprecja.predmeti.po$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - - # Kreditne Toke - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) { - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-izvajalec-slike/",izvajalec,"_HISTOGRAM5.pdf"), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) - hist(povprecja.predmeti.po$predmet.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - y = 0, - pch = "X", - cex = 2.0 - ) - hist(povprecja.predmeti.po$predmet.ocena.krediti_mean, - xlab=c(paste0("Ustreznost KT za\n", kvantili.ustreznotsKT," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points( - x = subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - y = 0, - pch = "X", - cex = 2.0 - ) - dev.off() - } - ## //Histogrami v poglavju: POVZETEK// ## - - - ## Pojasnilo pod posameznim histogramom ## - # TABELA 1.1: ANKETA PRED - pojas.histog <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.pov.pred[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1], - digits = 1 - ), - " (\\textbf{Zadovoljstvo}) v desnem grafu. }}")) - # TABELA 1.2: ANKETA PO - pojas.histog.po <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.pov.po[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - digits = 1 - ), " (\\textbf{Ustreznost KT}) v desnem grafu.}}")) - - - # TABELA: 1.3 IZVAJALEC PRI PREDMETU - pojas.histog.izv <- c(paste0("{\\footnotesize \\textit{* Poloaj izvajalca pri predmetu \\guillemotright\\textbf{", - paste0(rownames.pov.izv[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v levem grafu. \\newline ** Poloaj izvajalca (povpreje po vseh njegovih predmetih) - med vsemi izvajalci oznauje kriec X pri vrednosti ", - round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits=1), " v desnem grafu.}}")) - - ## //Pojasnilo dodatno pod histograme// ## - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.2 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - povzetek.predmetov.po <- povzetek.predmetov.po %>% - dplyr::select(-"\\rotatebox{90}{Kompetence\\,}", - -"\\rotatebox{90}{Ustreznost KT*\\,}", - everything()) - ## //vrstni red stolpcev// ## - - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in - # poimenovali vrstice ter stolpce podatkovnega okvirja zanemo z generiranjem LATEX tabel - # Generiranje tabel v poglavju POVZETEK: Tabele Povpreij ankete PRED izpitom, PO izpitu in izvajalcev pri predmetih - tex.povzetek <- c("\\section{Ocene predmetov in izvajalca}", - paste("V tabelah so prikazana povpreja na lestvicah, - kjer so tudenti oznaili strinjanje s trditvami, - ki se nanaajo na komponente pedagoke izvedbe - (1 - sploh se ne strinjam, 2 se bolj ne strinjam kot strinjam, - 3 niti se ne strinjam niti se strinjam, 4 se bolj strinjam kot ne strinjam, - 5- popolnoma se strinjam). Vpraalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - kritino nizka povpreja (1.0-2.9) pa so obarvana {\\color{BrickRed}rdee}. - Visoka povpreja (4.5-4.7), kjer je veina tudentov podala oceno - popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - najvija (4.8-5.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, - ampak je navedena pika .. Ocene za povpreja, ki temeljijo na nizkem - tevilu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so oznaene z enojnim () oziroma z dvojnim oklepajem (()). - Podrobnosti so v Metodolokih pojasnilih in tudi na \\url{http://ul.1ka.si/metodologija}."), - capture.output( - Hmisc::latex( - povzetek.predmetov.pred, - caption = "Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{7.3cm}", - longtable = TRUE, - multicol = FALSE, - insert.bottom = c(opombaPpred, opombaLurkerji.PRED), - col.just = c("c", "c|", "c", "c", "c|", "c", "c", "c", "c", "c", "c", "c|", "c"), - rowname = rownames.pov.pred - ) - ), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.1) - Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.pred),"\\textbf{predmetov} in - frekvenna porazdelitev povprenih ocen za \\textbf{Zadovoljstvo} - za", paste0(kvantili.zadovoljstvo),"\\textbf{predmetov}}", - paste0( - "\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", - izvajalec, - "_HISTOGRAM2.pdf}}" - ), - "\\end{figure}",pojas.histog)}, "\\newpage", - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo,opombaLurkerji.PO), - col.just = c("c", "c|", "c", "c", "c|", "c", "c", "c", "|c|", "c", "c"), - rowname=rownames.pov.po)), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti.po$predmet.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.2) - Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.po),"\\textbf{predmetov} in - frekvenna porazdelitev povprenih ocen \\textbf{Ustreznost KT} za", - kvantili.ustreznotsKT,"\\textbf{predmetov}}", - paste0("\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", izvajalec, "_HISTOGRAM5.pdf}}"), - "\\end{figure}", pojas.histog.po)},"\\newpage", - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI,opombaLurkerji.IZV), - col.just = c("c", "c", "c|", "c", "c", "c", "c|", "c", "c", "c", "c", "c", "c|", "c"), - - rowname=rownames.pov.izv)), - # Vstavimo Histogram - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.3) - Frekvenna porazdelitev povprenih ocen \\textbf{Skupaj} za ", - kvantili.izvajalci.st, - "\\textbf{izvajalcev pri predmetih*} in frekvenna porazdelitev - povprenih ocen izvajalcev \\textbf{Skupaj}\n za", - kvantili.izvajalci.skupaj.st," \\textbf{izvajalcev}**}", - paste0("\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/", izvajalec, "_HISTOGRAM1.pdf}}"), - "\\end{figure}", pojas.histog.izv)},"\\newpage") - - - # Vse vrednosti za izvajalca zapiemo v spremenljivko, ki jo na koncu uporabimo pri generiranju celotnega poroila - part$izvajalec[[izvajalec]]$povzetek <- tex.povzetek - # V novem poroilu "POVZETEK" elimo imeti samo tabele, brez kvantilnih rangov in histogramov zato spremenljivko prilagodimo - tex.povzetek.povzetek <- c( - capture.output(Hmisc::latex(povzetek.predmetov.pred, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.3cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpred.povzetek,opombaLurkerji.PRED), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowname=rownames.pov.pred)), - "\\clearpage", - - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo.povzetek,opombaLurkerji.PO), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowname=rownames.pov.po)), - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI.povzetek,opombaLurkerji.IZV), - col.just=c(rep_len("c",2),"c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowname=rownames.pov.izv))) - - part$izvajalec[[izvajalec]]$povzetek.povzetek <- tex.povzetek.povzetek - ## //Ocene predmetov in izvajalca <- skupne tabele// ## - - ## //Generiranje LATEX tabel//## - - ############################### - # PODPOGLAVJE: Kvantilni rangi# - ############################### - ## kvantili ## - if (any(kvantili.izvajalci$izvajalec.sifra == izvajalec)) { - kvantili.izvajalca <- - kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - kvantili.izvajalca.skupaj <- - kvantili.izvajalci.skupaj[kvantili.izvajalci.skupaj$izvajalec.sifra == izvajalec, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.izvajalec$cont$vars, "_mean"), - "izvajalec.ocena.SKUPAJ" - )] - - kvantili.predmetov.pred <- - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - - kvantili.predmetov.po <- - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c( - "ST_STUD", - "N_anket", - "sodelujocih.pct", - paste0(vars.predmet$cont$po, "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.krediti_mean" - )] - - # Pojasnilo vrednosti k posamezni tabeli kvantilnih rangov - pojas <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca[1, 10], "\\%"), - " od ", - kvantili.izvajalci.st, - " - izvajalcev pri predmetih imelo nije povpreje ocen od - vrednosti izvajalca pri predmetu ", - round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - - pojas1 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta v tabeli 1.1. - Kvantilni rang ", - kvantili.predmetov.pred[1, 1], - " za predmet \\guillemotright ", - rownames.pov.izv[1], - "\\guillemotleft \\ pomeni, - da je imelo ", - paste0(kvantili.predmetov.pred[1, 1], "\\%"), - " predmetov nije tevilo vpisanih tudentov od vrednosti ", - paste0(povzetek.predmetov.pred[1, 1]), - " v tabeli 1.1.\\newline ** Kvantilni rang ", - kvantili.predmetov.pred[1, 11], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.predmetov.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo - nije povpreje ocen od vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - - - pojas2 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta - v tabeli 1.2.\\newline ** Kvantilni rang ", - kvantili.predmetov.po[1, 8], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.predmetov.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov - imelo nije povpreje od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - kvantili.predmetov.po[1, 9], - " (\\textbf{Ustreznost KT}) pa pomeni, da je (glede na tevilo kreditnih tok) ", - paste0(kvantili.predmetov.po[1, 9], "\\%"), - " vseh predmetov zahtevalo nije tevilo ur.}}" - ) - ) - - pojas3 <- - c( - paste0( - "{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca.skupaj[1, 10], - " (\\textbf{Skupaj}) - pomeni, \nda je ", - paste0(kvantili.izvajalca.skupaj[1, 10], "\\%"), - " od ", - kvantili.izvajalci.skupaj.st, - " izvajalcev pri predmetih imelo nije povpreje od vrednosti izvajalca pri predmetih ", - round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - ## //pojasnilo// ## - - ## Opomba poda tabelami kvantilnih rangov ## - if (any(kvantili.izvajalca == ".")) { - opombaI <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca[1, 10], "\\%"), - " od ", - kvantili.izvajalci.st, - " izvajalcev pri predmetu - imelo nije povpreje od vrednosti ", - round( - subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.3.}}" - ) - ) - } else { - opombaI <- pojas - } - if (any(kvantili.izvajalca.skupaj == ".")) { - opombaIs <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", - kvantili.izvajalca.skupaj[1, 10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca.skupaj[1, 10], "\\%"), - " od ", - kvantili.izvajalci.skupaj.st, - " izvajalcev pri predmetih imelo nije povpreje - od vrednosti ", - round( - subset(povprecja.izvajalci.skupaj, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = - 1 - ), - - " (\\textbf{Skupaj}) v tabeli 1.3. Glej tudi desno sliko 1.3.}}"))} else { - opombaIs <- pojas3 - } - - if (any(kvantili.predmetov.pred == ".")) { - opombaPpred <- - c( - paste( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.1, - Kvantilni rang ", - kvantili.predmetov.pred[1, 1], - " za predmet - \\guillemotright ", - rownames.pov.izv[1], - "\\guillemotleft \\ pomeni, da je imelo ", - paste0(kvantili.predmetov.pred[1, 1], "\\%"), - " izvajalcev pri predmetih v Povpreju nije tevilo vpisanih - tudentov od vrednosti ", - paste0(povzetek.predmetov.pred[1, 1]), - " v tabeli 1.1. - \\newline ** Kvantilni rang ", - kvantili.predmetov.pred[1, 11], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.pred[1, 11], "\\%"), - " od ", - kvantili.predmeti.st.pred, - " predmetov imelo nije povpreje - od vrednosti ", - round( - subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.1.}}" - ) - ) - } else { - opombaPpred <- pojas1 - } - if (nrow(kvantili.predmetov.po) > 0) { - if (any(kvantili.predmetov.po == ".")) { - opombaPpo <- - c( - paste0( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.2. - \\newline ** Kvantilni rang ", - kvantili.predmetov.po[1, 8], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.po[1, 8], "\\%"), - " od ", - kvantili.predmeti.st.po, - " predmetov imelo nije povpreje od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang " - , - kvantili.predmetov.po[1, 9], - " (\\textbf{Ustreznost KT} pa pomeni, da je (glede na tevilo kreditnih tok) ", - paste0(kvantili.predmetov.po[1, 9], "\\%"), - " vseh predmetov nije - tevilo ur.}}" - ) - ) - } - else { - opombaPpo <- pojas2 - } - } - - ## //opomba kvantili// ## - - # Imena vrstic v tabelah kvantilnih rangov - rownames.kvantili.izvajalca <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra == - izvajalec, "ime.predmeta"] - ))) - - rownames.kvantili.predmetov.pred <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - ))) - - rownames.kvantili.predmetov.po <- - c(Hmisc::latexTranslate(gsub( - 'izredna izvedba', 'I', - kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - ))) - # V kolikor predmeta sploh n bilo v bazi ANKETA PO, ime poiemo v anketi PRED - if(!length(rownames.kvantili.predmetov.po) > 0) { - rownames.kvantili.predmetov.po <- rownames.kvantili.predmetov.pred - } - - - # V primeru, da bi eleli pri predmetu v tabeli 1.1 dodati oznako X, da je takoj jasno, na kateri predmet se X v histogramu nanaa) - rownames.kvantili.izvajalca[1] = paste(rownames.kvantili.izvajalca[1], "**", sep = " ") - rownames.kvantili.predmetov.pred[1] = paste(rownames.kvantili.predmetov.pred[1], "**", sep = " ") - rownames.kvantili.predmetov.po[1] = paste(rownames.kvantili.predmetov.po[1], "**", sep = " ") - - # Imena stolpcev za tabele - colnames(kvantili.izvajalca) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.izvajalca.skupaj) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.predmetov.pred) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - "\\textbf{Skupaj**}" - ) - ) - - colnames(kvantili.predmetov.po) <- - latex.rotate( - c( - "t. vpisanih*", - "t. odgovorov*", - "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj**}", - as.character(paste0(vars.predmet$krediti$ime.kratko, "*")) - ) - ) - - # explain what specific quantile means - primer.kvantil <- - kvantili.izvajalca[, ncol(kvantili.izvajalca)][kvantili.izvajalca[, ncol(kvantili.izvajalca)] != "."][1] - if (is.na(primer.kvantil)) { - primer.kvantil <- "." - } - - # Interpretacija vrednosti kvantilnih rangov v tabelah: glej poroilo za izvajalca, podpoglavje Kvantilni rangi. - opredelitev.kvantili <- paste("Kvantilni rangi oznaujejo poloaj predmeta - oziroma izvajalca med vsemi predmeti oziroma - izvajalci celotne fakultete.\nZgornja etrtina - (75-100) je obarvana {\\color{Chateau Green}zeleno}, - zgornja desetina (90-100) {\\color{Blue Stone}temnozeleno}. - Spodnja etrtina (0-25) je obarvana {\\color{Orange}oranno}, - spodnja desetina (0-10) {\\color{BrickRed}rdee}. - Podrobnosti so v metodolokih navodilih na koncu poroila in - na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki.") - - pojasnilo.kvantili1 <- paste("Primer interpretacije vrednosti v tabeli 1.5:\nKvantilni rang" - , kvantili.izvajalca.skupaj[10], "(\\textbf{Skupaj}) pomeni, - \nda ima", paste0(kvantili.izvajalca.skupaj[10], "\\%"), - "od skupno",kvantili.izvajalci.skupaj.st," izvajalcev nije - povpreje ocenjenih komponent (\\textbf{Skupaj}) za izvajalca pri predmetih - od vrednosti izvajalca", round( - subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - digits = 1 - ), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili2 <- paste("Primer interpretacije vrednosti v tabeli 1.4:\nKvantilni rang", - primer.kvantil, "(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.pov.izv[1],"\\guillemotleft\\ pomeni, da je", - paste0(primer.kvantil, "\\%"), " od skupno", kvantili.izvajalci.st, - "izvajalcev pri predmetih imelo nije povpreje ocenjenih - komponent od vrednosti",round( - subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits = 1 - ), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili4 <- paste("Primer interpretacije vrednosti v tabeli 1.7:\nKvantilni rang", - kvantili.predmetov.po[1,8],"(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.kvantili.predmetov.po[1], "\\guillemotleft\\ pomeni, \nda je", - paste0(kvantili.predmetov.po[1,8], "\\%"), "od skupno", kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocenjenih komponent od vrednosti ", - round( - subset(povprecja.predmeti.po, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - digits = 1 - ), "(\\textbf{Skupaj}) v tabeli 1.3. Glej tudi sliko 1.3.") - ## //Interpretacija// ## - - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.5 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) + - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - kvantili.predmetov.po <- kvantili.predmetov.po[c(1,2,3,5,6,7,8,4,9)] - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in ppimenovali vrstice ter stolpce podatkovnega okvirja - # zanemo z generiranjem LATEX tabel za podpoglavje: kvantilni rangi - part$izvajalec[[izvajalec]]$kvantili <- c("\\section{Kvantilni rangi}", opredelitev.kvantili, - - capture.output(Hmisc::latex(kvantili.predmetov.pred, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.pred), - " predmeti (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpred, - rowlabel.just='p{9cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$pred)),'|c'), - rowname=rownames.kvantili.predmetov.pred)), - - - capture.output(Hmisc::latex(kvantili.predmetov.po, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.po), - " predmeti (anketa PO izpitu)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpo, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$po[-1])),'|c','|c','c'), - rowname=rownames.kvantili.predmetov.po)), - - - capture.output(Hmisc::latex(kvantili.izvajalca, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetih} ", - paste0("med ",kvantili.izvajalci.st, - " izvajalci pri predmetih "), - " (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaI, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname=rownames.kvantili.izvajalca)), - - - capture.output(Hmisc::latex(kvantili.izvajalca.skupaj, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca} ", - paste0("med ", kvantili.izvajalci.skupaj.st, - " izvajalci")," (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaIs, - rowlabel.just='p{10cm}', - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname="\\textbf{Povpreje izvajalca**}")),"\\newpage") - - - - } else {part$izvajalec[[izvajalec]]$kvantili <- NULL} - ## /kvantili/ ## - - ## //Generiranje LATEX tabel// ## - - - - ################################################################################# - ###Sumarne ocene tudijskih programov (Poglavje pred metodolokim pojasnilom)#### - ################################################################################# - #Izpis Tabel: Povpreja za ocene komponent vseh programov, v katerih je izvajalec sodeloval - - - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - izv.prog <- - subset(povprecja.izvajalci.programi, - izvajalec.sifra == izvajalec & predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(izv.prog) > 0) { - - # Get the programmes ID of lecturer - lect.pr <- izv.prog$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.izv <- subset(povprecja.izvajalci.programi, - program.studentov %in% lect.pr & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.izv <- aggregate( - prog.izv[paste0(vars.izvajalec$cont$vars, "_mean")], - by = list(prog.izv$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - # En Izvajalec ima lahko ve predmetov - n.prog.ipp <- aggregate(prog.izv$izvajalec.sifra, - by = prog.izv[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(x)) - - # Create df with means and number of IFF in programme - m.prog.izv <- - merge( - n.prog.ipp, - m.prog.izv, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.izv) <- make.unique(as.character(m.prog.izv$program.studentov.ime)) - # Select columns for latex tables - m.prog.izv <- m.prog.izv %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes - m.prog.izv <- cbind(m.prog.izv, Skupaj = rowMeans(m.prog.izv[, 2:ncol(m.prog.izv)], na.rm = TRUE)) - # Col mean - m.prog.izv <- rbind(m.prog.izv, c("--", colMeans(m.prog.izv[2:ncol(m.prog.izv)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See fuctom function formatval - m.prog.izv <- formatval(m.prog.izv) - - # Add rownames - rownames(m.prog.izv)[nrow(m.prog.izv)] <- "\\hline \\textbf{Povpreje programov}" - # Add colnames - colnames(m.prog.izv) <- latex.rotate(c("t. IPP", - as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars]), - "\\textbf{Skupaj}")) - # Generating LATEX table - izv.prog.tex <- capture.output(Hmisc::latex(m.prog.izv, - caption = "Ocene komponent - \\textbf{izvajalcev pri predmetih} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel = "", - file = "", - where = "H", - multicol = FALSE, - rowlabel.just = "A{9.5cm}", - insert.bottom = paste( - "{\\footnotesize \\textit{- Podatek je - manj pomemben ali teko izraunljiv. - \\newline ** t. IPP - tevilo vseh - izvajalcev pri predmetih na doloenem programu.}}" - ), - col.just = c("c|", - rep_len("c", length(vars.izvajalec$cont$vars)), "|c"))) - } else { - - izv.prog.tex <- "Ni ocen" - } - - part$izvajalec[[izvajalec]]$progIPP <- izv.prog.tex - ######### - - - - ## OCENE PROGRAMOV PO PREDMETIH ## - ##ANKETA PRED IZPITOM - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - pr.prog.pred <- - subset(povprecja.predmeti.programi, - predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(pr.prog.pred) > 0) { - - # Get the programmes - pr.pred <- pr.prog.pred$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.pred <- subset(povprecja.predmeti.programi, - program.studentov %in% pr.pred & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.pred <- aggregate( - prog.pred[paste0(vars.predmet$cont$pred, "_mean")], - by = list(prog.pred$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - n.prog.pred <- aggregate(prog.pred$predmet.sifra, - by = prog.pred[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(unique(x))) - - # Create df with means and number of IFF in programme - m.prog.pred <- - merge( - n.prog.pred, - m.prog.pred, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.pred) <- make.unique(as.character(m.prog.pred$program.studentov.ime)) - # Select columns for latex tables - m.prog.pred <- m.prog.pred %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes - m.prog.pred <- cbind(m.prog.pred, Skupaj = rowMeans(m.prog.pred[, 2:ncol(m.prog.pred)], na.rm = TRUE)) - # Col mean - m.prog.pred <- rbind(m.prog.pred, c("--", colMeans(m.prog.pred[2:ncol(m.prog.pred)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See fuctom function formatval - m.prog.pred <- formatval(m.prog.pred) - - # Add rownames - rownames(m.prog.pred)[nrow(m.prog.pred)] <- "\\hline \\textbf{Povpreje programov}" - # Add colnames - colnames(m.prog.pred) <- latex.rotate(c("t. predmetov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}")) - # Generating LATEX table - prog.pred.tex <- capture.output(Hmisc::latex(m.prog.pred, - caption = "Ocene komponent \\textbf{predmetov} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel = "", - file = "", - multicol = FALSE, - where = "H", - rowlabel.just = "A{9.5cm}", - insert.bottom = paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just = c("c|", rep_len("c", length(vars.predmet$cont$pred)), "|c"))) - } else { - prog.pred.tex <- "Ni ocen." - } - part$izvajalec[[izvajalec]]$progPRED <- prog.pred.tex - - ##ANKETA PO IZPITU## - # On which programmes did the lecturer participate (pri katerih programih je izvajalec sodeloval) - pr.prog.po <- - subset(povprecja.predmeti.programi.PO, - predmet.sifra %in% izvajalci_program[[izvajalec]]$predmeti & N_anket >= minEnot, - select = program.studentov) - - - # We cerate tables only if data exist - if(nrow(pr.prog.po) > 0) { - - # Get the programmes - pr.po <- pr.prog.po$program.studentov - - # Get the component means of the programmes where lecturer participated - prog.po <- subset(povprecja.predmeti.programi.PO, - program.studentov %in% pr.po & N_anket >= minEnot) - - # Povpreja komponent za programe na katerih je izvajalec poueval - m.prog.po <- aggregate( - prog.po[c(paste0(vars.predmet$cont$po, "_mean"), "predmet.ocena.krediti_mean")], - by = list(prog.po$program.studentov), - FUN = function(x) - mean(x, na.rm = TRUE) - ) - - # Number of IPP (izvajalcev pri predemtih) glede na program - n.prog.po <- aggregate(prog.po$predmet.sifra, - by = prog.po[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(unique(x))) - - # Create df with means and number of IFF in programme - m.prog.po <- - merge( - n.prog.po, - m.prog.po, - by.x = "program.studentov", - by.y = "Group.1", - sort = FALSE - ) - - # sort by name - rownames(m.prog.po) <- make.unique(as.character(m.prog.po$program.studentov.ime)) - # Select columns for latex tables - m.prog.po <- m.prog.po %>% dplyr::select(x, everything(), - program.studentov, -program.studentov.ime) - # Calculate row and col means for latex table purposes (colmeans from 3 components) - m.prog.po <- cbind(m.prog.po, Skupaj = rowMeans(m.prog.po[, 3:5], na.rm = TRUE)) - # Reorder columns due to the fact the components from ANKETA PO consist of: vsebine, naloge, kriteriji - m.prog.po <- m.prog.po %>% - dplyr::select(-predmet.ocena.kompetence_mean, - -predmet.ocena.krediti_mean, - everything()) - - # Col mean - m.prog.po <- rbind(m.prog.po, c("--", colMeans(m.prog.po[2:ncol(m.prog.po)], na.rm = TRUE))) - # Tidy data (coloring, rounding, etc.) See custom function formatval - # Remember in anketa PO we also have KREDITNE TOKE - m.prog.po <- formatval(m.prog.po, KT = TRUE) - - # Add rownames - rownames(m.prog.po)[nrow(m.prog.po)] <- "\\hline \\textbf{Povpreje programov}" - - # Add colnames - colnames(m.prog.po) <- latex.rotate(c("t. predmetov", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT*" - )) - - - # Generating LATEX table - prog.po.tex <- capture.output(Hmisc::latex(m.prog.po, - caption="Ocene komponent \\textbf{predmetov} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel="", - file="", - where="H", - multicol = FALSE, - rowlabel.just="A{10cm}", - insert.bottom=paste("{\\footnotesize \\textit{ - -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}Oranno} - so oznaena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in - ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita - odstopanja (pod {\\color{BrickRed}2.4}) - in (nad {\\color{BrickRed}3.6}}})."), - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"))) - } else { - prog.po.tex <- "Ni ocen." - } - - part$izvajalec[[izvajalec]]$progPO <- prog.po.tex - ######### -} -#------------------------------------------- //IZVAJALEC// ----------------------------------------------# - - -####################################### -#' DATA NEEDED FOR PDF REPORT: @PART II -####################################### -#--------------------------------------------- PREDMET ------------------------------------------------# -predmeti <- NULL -if (omejeniIzvajalci) { - sifrePredmet <- - as.character(unique(data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% sifreIzvajalec])) -} else {sifrePredmet <- as.character(unique(data.izvajalci$predmet.sifra))} - -for (predmet in sifrePredmet){ - - # course average # - # ANKETA PRED - pr.pred.tmp <- subset(povprecja.predmeti, predmet.sifra == predmet) - pr.pred.tmp <- pr.pred.tmp[!duplicated(pr.pred.tmp$IDP1),] - # ANKETA PO - pr.po.tmp <- subset(povprecja.predmeti.po, predmet.sifra == predmet) - pr.po.tmp <- pr.po.tmp[!duplicated(pr.po.tmp$IDP1),] - - # Anketa PRED - data.pred.tmp <-subset(data.predmeti, predmet.sifra == predmet & veljavna) - # Anketa PO - data.po.tmp <- subset(data.predmeti.po, predmet.sifra == predmet & veljavna) - - - #kdo so izvajalci predmeta - izvajalci.predmeta <- - unique(subset(data.izvajalci, predmet.sifra == predmet)$izvajalec.sifra) - - if (omejeniIzvajalci) { - izvajalci.predmeta <- - izvajalci.predmeta[izvajalci.predmeta %in% sifreIzvajalec] - } - - ## stopnja sodelovanja ## - stopnjaPredmeta <- pr.pred.tmp$STOPNJA - if (stopnjaPredmeta==1) { - # Faculty string - Fstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - Fstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', pr.pred.tmp$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - Fstring <- '' - } - - imepredmeta <- sub("^BD |^BP ", "", pr.pred.tmp$ime.predmeta) # ime brez BD/BP predpone - imepredmeta <- gsub('_', '\\_', imepredmeta, fixed=T) # pravilni izpis podrtaja v pdf izpisu "_" - imepredmeta <- gsub('&', '\\&', imepredmeta, fixed=T) # pravilni izpis in v pdf izpisu "&" - - - ##Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PRED IZPITOM - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_response_pred_izpitom.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar = (c(4, 4, 1, 13) + 0.1), - mgp = c(3, 2, 0), - xpd = TRUE) - ## Make the matrix for barplot - mat.pred <- cbind( - c( - pr.pred.tmp$sodelujocih.pct, - pr.pred.tmp$zavrnjenih.pct, - pr.pred.tmp$neodzivnih.pct - ), - c(Fpred[as.character(stopnjaPredmeta), "sodelujocih.pct"], - Fpred[as.character(stopnjaPredmeta), "zavrnjenih.pct"], - Fpred[as.character(stopnjaPredmeta), "neodzivnih.pct"]) - ) - - ## Get the y-values for text - ys.pred <- - apply(mat.pred, 2, function(x) - c(x[1] / 2, head(cumsum(x), -1) + tail(x, -1) / 2)) - - ## Make barplot, store mat.pred data - xs.pred <- barplot( - mat.pred, - names.arg = c('Predmet\n', Fstring[2]), - col = c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim = c(0, 100), - space = c(0, 1) - ) - - ## Add text - text(rep(xs.pred, each = nrow(ys.pred)), c(ys.pred), labels = paste0(round(c(mat.pred), 0), "%")) - legend( - "topright", - inset = c(-0.55, 0), - legend = c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col = c("mistyrose1", "dodgerblue3", "firebrick3"), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ############### - - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PO IZPITU - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_response_po_izpitu.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar = (c(4, 4, 1, 13) + 0.1), - mgp = c(3, 2, 0), - xpd = TRUE) - ## Make the matrix for barplot - mat.po <- cbind( - c( - pr.po.tmp$sodelujocih.pct, - pr.po.tmp$zavrnjenih.pct, - pr.po.tmp$neodzivnih.pct - ), - c(Fpo[as.character(stopnjaPredmeta), "sodelujocih.pct"], - Fpo[as.character(stopnjaPredmeta), "zavrnjenih.pct"], - Fpo[as.character(stopnjaPredmeta), "neodzivnih.pct"]) - ) - - ## Get the y-values for text - ys.po <- - apply(mat.po, 2, function(x) - c(x[1] / 2, head(cumsum(x), -1) + tail(x, -1) / 2)) - - ## Make barplot, store mat.po data - xs.po <- barplot( - mat.po, - names.arg = c('Predmet\n', Fstring[2]), - col = c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim = c(0, 100), - space = c(0, 1) - ) - - ## Add text - text(rep(xs.po, each = nrow(ys.po)), c(ys.po), labels = paste0(round(c(mat.po), 0), "%")) - legend( - "topright", - inset = c(-0.55, 0), - legend = c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col = c("mistyrose1", "dodgerblue3", "firebrick3"), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ##### - - - - # Olepavanje slovnice pri izpisu Delea odgovorov: glej tekst, ki se pojavi v drugem poglavju pri izpisu za izvajalca - if (pr.pred.tmp$N_neodzivnih == 1) { # here - odziv <- "ni pristopil" - } else if (pr.pred.tmp$N_neodzivnih == 2){ - odziv <- "nista pristopila" - } else if (pr.pred.tmp$N_neodzivnih == 3 | pr.pred.tmp$N_neodzivnih == 4){ - odziv <- "niso pristopili" - } else { - odziv <- "ni pristopilo" - } - - - # parti predmeta - # cele parte dela smo kjer je dovolj enot - if (pr.pred.tmp$N_anket >= minEnot | isTRUE(pr.po.tmp$N_anket >= minEnot)) { - - tex.sodelovanje <- - c( - paste0( - "Na evalvacijski vpraalnik za predmet \\guillemotright ", - imepredmeta, - "\\guillemotleft \\ PRED izpitom - je (vsaj deloma) odgovarjalo ", - pr.pred.tmp$N_anket, - " od skupno ", - pr.pred.tmp$ST_STUD, - " vpisanih tudentov. Pri posameznih vpraanjih je lahko - tevilo nesodelujoih nekoliko veje (neodgovor spremenljivke). Dodatnih ", - pr.pred.tmp$N_zavrnjenih, - " tudentov je zavrnilo izpolnjevanje ankete, ", - pr.pred.tmp$N_neodzivnih, - " pa k izpolnjevanju ", - odziv, - ". ", - "Odstotek sodelujoih znaa - \\textbf{", - round(pr.pred.tmp$sodelujocih.pct), - "\\%}, ", - "kar lahko primerjamo s povprejem - \\textbf{", - round(Fpred[as.character(stopnjaPredmeta), "sodelujocih.pct"]), - "\\%} vseh ", - Fstring[1], - " predmetov na ", - fakulteta, - ".", - sep = "" - ), - "\\newline", - "\\begin{figure}[H]", - # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PRED izpitom)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_response_pred_izpitom.pdf}}" - ), - "\\end{figure}", - paste0( - "Na anketo PO izpitu je odgovarjalo ", - paste0(pr.po.tmp$N_anket), - " tudentov, kar je \\textbf{", - round(pr.po.tmp$sodelujocih.pct), - "\\%} vseh vpisanih tudentov. ", - "povpreje deleev za vse dodiplomske predmete na ", - fakulteta, - " je znaalo \\textbf{", - round(Fpo[as.character(stopnjaPredmeta), - "sodelujocih.pct"]), - "\\%}." - ), - "\\begin{figure}[H]", - # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PO izpitu)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_response_po_izpitu.pdf}}" - ), - "\\end{figure}" - ) - - part$predmet[[predmet]]$response <- tex.sodelovanje - ## /stopnja sodelovanja/ ## - - - ## tEVILSKE ## - # ANKETI PRED IN PO SKUPAJ - tabela.cont <- cbind.data.frame( - # tevilo odgovorov - N = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_N")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_N")])), - # Povpreje komponent predmeta - mean = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_mean")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_mean")])), - # Standardni odklon komponent - sd = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_sd")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_sd")])), - # Standardni odklon komponent - min = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_min")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_min")])), - # max vrednost komponent - max = c(as.numeric(pr.pred.tmp[paste0(vars.predmet$cont$pred, "_max")]), - as.numeric(pr.po.tmp[paste0(vars.predmet$cont$po[-1], "_max")])) - ) - - # For radar chart - radar.c <- tabela.cont - # IF there are NA values for LATEX TABLE purposes we want to have "." instead - tabela.cont[is.na(tabela.cont)] <- "." - - # Footnote under latex table in case there is not enough data (less than 4) - if (any(tabela.cont$N == ".")) { - opomba <- - '{\\footnotesize {. Podatek ni prikazan zaradi - premajhnega tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' -} else { - opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) - oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}" - } - - # Faculty mean for all courses - F.course <- data.frame(c(F.avg.pred[paste0(vars.predmet$cont$pred,"_mean")], - F.avg.po[paste0(vars.predmet$cont$po[-1],"_mean")])) - colnames(F.course) <- 'Fmean' - tabela.cont <- cbind(tabela.cont, F.course) - - - - ## radar graf ## - if (sum(!is.na(radar.c$mean)) < 4) { - radar.c$mean <- - radar.c$mean[!is.na(radar.c$mean)] <- - NA - } # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- - data.frame(rbind(5, 1, t(cbind( - F.course, as.numeric(radar.c$mean) - ))), - row.names = 1:4, - check.names = F) - colnames(radar.cont) <- - sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[c(vars.predmet$cont$pred, vars.predmet$cont$po[-1])])) - # Dodamo zvezdice, da loimo komponente v anekti PO do komponent v anekti PRED - # Bi se dalo veliko enostavneje (samo zandjim trem vrsticam damo zvezdice a zanekrat pustimo :) ) - colnames(radar.cont)[colnames(radar.cont) %in% as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]])] <- - paste0(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), "*") - - - # Export Radar chart to PDF with CAIRO - CairoPDF( - paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_cont.pdf"), - family = 'sans', - pointsize = 9, - width = 6, - height = 4 - ) - - par(mar = (c(0, 4, 1, 6) + 0.1), xpd = TRUE) - fmsb::radarchart( - radar.cont, - pcol = c('dodgerblue3', 'firebrick3'), - cglcol = 'gray75', - plwd = 2, - plty = 1, - cglwd = 1, - cglty = 1, - seg = 4, - axistype = 1, - caxislabels = c(1:5), - axislabcol = 'gray25', - centerzero = TRUE - ) - legend( - 'topright', - inset = c(-0.15, 0), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - col = c('firebrick3', 'dodgerblue3'), - lty = 1, - lwd = 2, - bty = 'n' - ) - dev.off() - ## /radar graf/ ## - - - # LOENI TABELI FREKVENIH PORAZDELITEV IN DELEEV ZA ANKETO PRED IN ANKETO PO - # Anketa PRED - tabela.pred <- - rbind( - # Komponente, ki nastopajo v anketi PRED - tabela.cont[1:7,], - c( - '', - pr.pred.tmp$predmet.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont[1:7, ]$Fmean, na.rm = TRUE) - ) - ) - # Tidy numbers (color, parenthesis etc.) - tabela.pred <- formatval(tabela.pred) - tabela.pred$N[length(tabela.pred$N == ".")] <- NA - - - # frekvence - dist.pred <- t(sapply(data.pred.tmp[, vars.predmet$cont$pred], - function(x) - table(factor(x, levels = someMiss.pred)))) - - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.1 <- round((rowSums(dist.pred[,1:2], na.rm = TRUE)) / (rowSums(dist.pred, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.2 <- round((rowSums(dist.pred[,4:5], na.rm = TRUE)) / (rowSums(dist.pred, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.1 <- ifelse(tabela.pred$mean == ".", ".", dist.pct.1) - dist.pct.2 <- ifelse(tabela.pred$mean == ".", ".", dist.pct.2) - - # Barvanje vrednosti - dist.pct.1 <- ifelse(dist.pct.1 != "." & dist.pct.1 >= 20, paste('{\\color{Orange}', dist.pct.1, '}'),dist.pct.1) - dist.pct.2 <- ifelse(dist.pct.2 != "." & dist.pct.2 <= 50, paste('{\\color{Orange}', dist.pct.2, '}'),dist.pct.2) - - tabela.pred.pct <- qpcR:::cbind.na(tabela.pred, dist.pct.1, dist.pct.2) - - - # tevilo odgovorov fakultete na spremenljivke ankete PRED IZPITOM - dist.pred.fakulteta <- subset(data.predmeti, veljavna) - - dist.pred.f <- - t(sapply(dist.pred.fakulteta[, vars.predmet$cont$pred], - function(x) - table(factor(x, levels = someMiss.pred)))) - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - dist.pct.F.1 <- round((rowSums(dist.pred.f[,1:2], na.rm = TRUE))/ (rowSums(dist.pred.f, na.rm = TRUE)) * 100, 0) - dist.pct.F.2 <- round((rowSums(dist.pred.f[,4:5], na.rm = TRUE)) / (rowSums(dist.pred.f, na.rm = TRUE)) * 100, 0) - - dist.pct.F.1 <- ifelse(dist.pct.F.1 >= 20, paste('{\\color{Orange}', dist.pct.F.1, '}'),dist.pct.F.1) - dist.pct.F.2 <- ifelse(dist.pct.F.2 <= 50, paste('{\\color{Orange}', dist.pct.F.2, '}'),dist.pct.F.2) - - - # Combine - tabela.pred.pct <- qpcR:::cbind.na(tabela.pred.pct, dist.pct.F.1, dist.pct.F.2) - # /Porazdelitev delei/# - - # Select columns for Latex table pruposes - tabela.pred.pct <- - subset( - tabela.pred.pct, - select = c( - N, # Number of answers for each component in ANKETA PRED - mean, # Lecturers course mean for each component in ANKETA PRED - dist.pct.1, # Percentage of course answers for each component (frequnecy 1 and 2) - dist.pct.2, # Percentage of course answers for each component (frequnecy 4 and 5) - Fmean, # Faculty course mean for each component in ANKETA PRED - dist.pct.F.1, # Percentage of faculty answers with frequnecy 1 and 2 - dist.pct.F.2 # Percentage of faculty answers with frequnecy 1 and 2 - ) - ) - - tabela.pred.pct[nrow(tabela.pred.pct), c(1, 3, 4)] <- NA - - # Add rownames for latex table purposes - rownames(tabela.pred.pct) <- - c(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]), - '\\hline\n\\textbf{Skupaj}') - # Add aslo colnames - colnames(tabela.pred.pct) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.pred.tex <- capture.output(Hmisc::latex(toLatex(tabela.pred.pct), - caption = "Povpreja in delei kategorij odgovorov - za komponente \\textbf{predmeta} - (anketa PRED izpitom)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(4, 3), - col.just = rep_len('c', ncol(tabela.pred.pct)), - rowlabel.just = 'p{7cm}', - insert.bottom = opomba)) - - - # WE DO SIMILAR ALSO FOR ANKETA PO - tabela.po <- - rbind( - # Komponente, ki nastopajo v anketi PRED - tabela.cont[8:10,], - c( - '', - pr.po.tmp$predmet.ocena.SKUPAJ, - '', - '', - '', - mean(tabela.cont[8:10, ]$Fmean, na.rm = TRUE) - ) - ) - # Tidy numbers (color, parenthesis etc.) - tabela.po <- formatval(tabela.po) - - - # frekvence - dist.po <- t(sapply(data.po.tmp[, vars.predmet$cont$po[-1]], - function(x) - table(factor(x, levels = someMiss.po)))) - - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - dist.pct.po.1 <- round((rowSums(dist.po[,1:2], na.rm = TRUE)) / (rowSums(dist.po, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - dist.pct.po.2 <- round((rowSums(dist.po[,4:5], na.rm = TRUE)) / (rowSums(dist.po, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - # V kolikor nimamo podatkov potem prikaemo "." - dist.pct.po.1 <- ifelse(tabela.po$mean == ".", ".", dist.pct.po.1) - dist.pct.po.2 <- ifelse(tabela.po$mean == ".", ".", dist.pct.po.2) - - - # Barvanje vrednosti - dist.pct.po.1 <- ifelse(dist.pct.po.1 != "." & dist.pct.po.1 >= 20, paste('{\\color{Orange}', dist.pct.po.1, '}'), dist.pct.po.1) - dist.pct.po.2 <- ifelse(dist.pct.po.2 != "." & dist.pct.po.2 <= 50, paste('{\\color{Orange}', dist.pct.po.2, '}'), dist.pct.po.2) - ## /Porazdelitev delei / ## - - # Cbind for latex table purposes - tabela.po.pct <- qpcR:::cbind.na(tabela.po, dist.pct.po.1, dist.pct.po.2) - - - # tevilo odgovorov fakultete na spremenljivke ankete PRED IZPITOM - dist.po.fakulteta <- subset(data.predmeti.po, veljavna) - - dist.po.f <- - t(sapply(dist.po.fakulteta[, vars.predmet$cont$po[-1]], - function(x) - table(factor(x, levels = someMiss.po)))) - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - dist.pct.F.po.1 <- round((rowSums(dist.po.f[,1:2], na.rm = TRUE))/ (rowSums(dist.po.f, na.rm = TRUE)) * 100, 0) - dist.pct.F.po.2 <- round((rowSums(dist.po.f[,4:5], na.rm = TRUE)) / (rowSums(dist.po.f, na.rm = TRUE)) * 100, 0) - - dist.pct.F.po.1 <- ifelse(dist.pct.F.po.1 >= 20, paste('{\\color{Orange}', dist.pct.F.po.1, '}'), dist.pct.F.po.1) - dist.pct.F.po.2 <- ifelse(dist.pct.F.po.2 <= 50, paste('{\\color{Orange}', dist.pct.F.po.2, '}'), dist.pct.F.po.2) - # Combine - tabela.po.pct <- qpcR:::cbind.na(tabela.po.pct, dist.pct.F.po.1, dist.pct.F.po.2) - # /Porazdelitev delei/# - - # Select columns for Latex table pruposes - tabela.po.pct <- - subset( - tabela.po.pct, - select = c( - N, # Number of answers for each component in ANKETA PRED - mean, # Lecturers course mean for each component in ANKETA PRED - dist.pct.po.1, # Percentage of course answers for each component (frequnecy 1 and 2) - dist.pct.po.2, # Percentage of course answers for each component (frequnecy 4 and 5) - Fmean, # Faculty course mean for each component in ANKETA PRED - dist.pct.F.po.1, # Percentage of faculty answers with frequnecy 1 and 2 - dist.pct.F.po.2 # Percentage of faculty answers with frequnecy 1 and 2 - ) - ) - - # Pri N (tevilu anket) le te v vrstici "Skupaj" - # nadomestimo z NA da se to en prikae v Latex tabeli - tabela.po.pct[nrow(tabela.po.pct), c(1, 3, 4)] <- NA - - # Add rownames for latex table purposes - rownames(tabela.po.pct) <- - c(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$po[-1]]), - '\\hline\n\\textbf{Skupaj}') - # Add aslo colnames - colnames(tabela.po.pct) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.po.tex <- capture.output(Hmisc::latex(toLatex(tabela.po.pct), - caption = "Povpreja in delei kategorij odgovorov - za komponente \\textbf{predmeta} - (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(4, 3), - col.just = rep_len('c', ncol(tabela.po.pct)), - rowlabel.just = 'p{7cm}', - insert.bottom = opomba)) - - - - ################################# - # -- TABELA: Frekvenna porazdelitev odgovorov za komponente predmeta (anketi PRED in PO izpitu) --- # - - ## podrobna porazdelitev ocen za ANKETO PRED IN PO ## - # Get data - dist.course <- rbind(dist.pred, dist.po) - # We also want to have the number of all answers for each component - # And also add Sd, min and max - dist.course <- cbind(dist.course, tabela.cont[c("N", "sd", "min", "max")]) - # Shorten colnames for latex table purposes - colnames(dist.course)[colnames(dist.course) == "Ne elim odgovoriti"] <- "Ne elim odg." - colnames(dist.course)[colnames(dist.course) == "Nimam dovolj informacij"] <- "Nimam informacij" - - if (any(is.na(dist.course))) { - opomba.dist <- - paste( - "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - - \\newline * Komponente ankete PO izpitu so oznaene z zvezdico.}}" - ) - } else { - opomba.dist <- - paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}" - ) - } - # IF the number of answers is less than 4 we do not show values - dist.course[dist.course$N < 4,] <- "." - # Tidy data - dist.course[8:9] <- formatval(dist.course[8:9]) - # Rownames of components ANKETA PRED in ANKETA PO - rownames(dist.course) <- - c( - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), # Komponente anekte PRED - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]) # Komponente ankete PO - ) - - # a line seperating questions before/after exam - rownames(dist.course)[ rownames(dist.course) == "Vsebine"] <- "\\hline\nVsebine" - - #ankete po izpitu oznaimo/loimo z zvedzico - rownames(dist.course)[8:10] <- paste0(rownames(dist.course)[8:10], "*") - - # Colnames for Latex tables - colnames(dist.course) <- - c( - "\\textbf{1}", - "\\textbf{2}", - "\\textbf{3}", - "\\textbf{4}", - "\\textbf{5}", - "\\textbf{Ne elim odg.}", - "\\textbf{Nimam informacij}", - "\\textbf{Skupaj}", - "\\textbf{Sd}", - "\\textbf{Min}", - "\\textbf{Max}" - ) - - # Compile latex table - distribution.tex <- capture.output(Hmisc::latex(dist.course, - caption = 'Frekvenna porazdelitev odgovorov za - komponente \\textbf{predmeta} - (anketi PRED in PO* izpitu)', - rowlabel = '\\textbf{Komponente}', - file = '', - where = 'H', - col.just = rep_len("c", ncol(dist.course)), - insert.bottom = opomba.dist)) - ## /podrobna porazdelitev ocen/ ## - # Add "fotnote" below radar chart pocture - pojasnilo.radar <- - paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}") - - # Create content - part$predmet[[predmet]]$cont <- c( - tabela.pred.tex, - tabela.po.tex, - "\\begin{figure}[H]", - "\\caption{Povprene ocene komponent \\textbf{predmeta} (anketi PRED in PO* izpitu)}", - paste0( - "\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, - "_cont.pdf}}" - ), - "\\end{figure}", - pojasnilo.radar, - distribution.tex - ) - - ## /tEVILSKE/ ## - - - - ## PORABLJENO tEVILO UT (USTREZNOST KT) ## - krediti <- cbind.data.frame( - n = as.numeric(pr.po.tmp[paste0("krediti_razporejanje_n_", 1:5)]), - "\\hfill%" = as.numeric(pr.po.tmp[paste0("krediti_razporejanje_pct_", 1:5)]), - "\\hfill%" = as.numeric(F.avg.KT.likert) - ) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - # barplot # - CairoPDF( paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_krediti.pdf"), - family='sans', pointsize=9, width=6, height=4.5) - par(mar = (c(4, 5, 4, 5) + 0.1), - mgp = c(3, min(2, max(1, 0)), 0), - xpd = TRUE) - barplot( - t(krediti[, 2:3]), - beside = TRUE, - col = c('firebrick3', 'dodgerblue3'), - names.arg = as.character(unlist(vars.predmet$krediti$labele.graf)), - ylim = c(0, 100), - cex.names = 0.9, - las = 1, - axis.lty = 1 - ) - abline(h = 0, xpd = FALSE, col = 'black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', - line = 1.25, - cex = 0.9, - adj = 0) - legend( - 'topright', - inset = c(-0.15,-0.05), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - fill = c('firebrick3', 'dodgerblue3'), - bty = 'n' - ) # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - - if (nrow(pr.po.tmp) > 0){ - if (pr.po.tmp$predmet.ocena.krediti_N < minEnot) { - opomba <- - '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdee} pa izrazita odstopanja - (pod {\\color{BrickRed}2.3} in nad {\\color{BrickRed}3.6}). - so oznaena odstopanja (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}).}}' - } else { - opomba <- - '{\\footnotesize \\textit{ ** {\\color{Orange}Oranno} so oznaena opazna - odstopanja ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja - (pod {\\color{BrickRed}2.3} in nad {\\color{BrickRed}3.6}). - so oznaena odstopanja (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6}).}}' - } - } - - krediti <- rbind(krediti, c(pr.po.tmp$predmet.ocena.krediti_N, colSums(krediti[,2:3]))) - # Also manually round second and third column for latex table purposes - krediti[,2:3] <- round(krediti[,2:3]) - # Preverimo ali je tevilo odgovorov manje od 4. V tem primeru vrednosti en prikaemo - krediti[,2] <- ifelse(krediti$n < 4, ".", krediti[,2]) - # Add parenthesis for first column if neccessary (Number of answers) - krediti <- formatval(krediti) - - #K Deleem v tabeli dodatmo Povpreje predmeta in Povpreje celotne fakultete - # Povpreja obarvamo gled ena poglavje Metodoloko pojasnilo - # Course mean - krediti.m <- kt.vect.col(pr.po.tmp$predmet.ocena.krediti_mean) - # Faculty mean - krediti.m.f <- kt.vect.col(F.avg.KT) - # Course sd - cr.sd <- - ifelse(is.na(round(pr.po.tmp$predmet.ocena.krediti_sd, 1)), - ".", - round(pr.po.tmp$predmet.ocena.krediti_sd, 1)) - # Faculty sd - F.sd <- round(as.numeric(F.avg.sd.KT) ,1) - - # Tidy data for latex table - krediti.m <- - c('', - paste0('\\textit{', krediti.m, "}"), - paste0('\\textit{', krediti.m.f, "}")) - #ter standardni odklon predmeta in standardni odklon celotne fakultete - krediti.sd <- - c('', - paste0( - '\\textit{', - cr.sd, - "}" - ), - paste0('\\textit{',F.sd, '}')) - - # Add averages and standrad deviation - krediti <- rbind(krediti, krediti.m, krediti.sd) - # Rownames - rownames(krediti) <- - c( - as.character(unlist(vars.predmet$krediti$labele)), - '\\hline\n\\textbf{Skupaj}', - '\\hline\\hline\n\\textit{Povpreje}', - '\n\\textit{Standardni odklon}' - ) - # Compile latex table - krediti.tex <- capture.output(Hmisc::latex(krediti, - caption = "Frekvenna porazdelitev za oceno - ustreznosti tevila porabljenih ur (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(2, 1), - col.just = strsplit("crr", "")[[1]], - insert.bottom = "")) - # Create content - part$predmet[[predmet]]$krediti <- c("\\subsubsection{\\Large tevilo porabljenih ur (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright Ocenite, ali ste za - predmet porabili od (min - max) ur, kot je za ta - predmet predvideno v tudijskem programu (25-30 ur tudentove - obremenitve = 1 ECTS; ki vkljuuje predavanja, vaje, seminar itd. - in vse oblike samostojnega dela)\\guillemotleft", - krediti.tex, #as.character(vars.predmet$krediti$ime.dolgo), - "\\begin{figure}[H]", - paste0("\\caption{Frekvenna porazdelitev za oceno - usterznosti tevila porabljenih ur (anketa PO izpitu)}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_krediti.pdf}}"), - "\\end{figure}") - - ## //PORABLJENI tEVILO UT (USTREZNOST KT)// ## - - - ## KOMPETENCE ## - kompetence <- - cbind.data.frame( - n = as.numeric(pr.po.tmp[paste0("kompetence1_razporejanje_n_", 1:5)]), - "\\hfill%" = as.numeric(pr.po.tmp[paste0("kompetence1_razporejanje_pct_", 1:5)]), - "\\hfill%" = as.numeric(F.avg.kom.likert) - ) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - - - # barplot # - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",predmet,"_kompetence1.pdf"), - family='sans', pointsize=9, width=6, height=4.5) - par(mar = (c(4, 5, 4, 5) + 0.1), - mgp = c(3, min(2, max(1, 0)), 0), - xpd = TRUE) - barplot( - t(kompetence[, 2:3]), - beside = TRUE, - col = c('firebrick3', 'dodgerblue3'), - names.arg = as.character(unlist(vars.predmet$kompetence$labele.graf)), - ylim = c(0, 100), - cex.names = 0.9, - las = 1, - axis.lty = 1 - ) - abline(h = 0, xpd = FALSE, col = 'black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', - line = 1.25, - cex = 0.9, - adj = 0) - legend( - 'topright', - inset = c(-0.15,-0.05), - legend = c("Predmet", paste(fakulteta, "Povpreje")), - fill = c('firebrick3', 'dodgerblue3'), - bty = 'n' - ) # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - if (nrow(pr.po.tmp) > 0){ - if (pr.po.tmp$predmet.ocena.kompetence_N < minEnot) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}Oranno} so oznaena odstopanja {\\color{Orange}(2.4-2.6)} - in {\\color{Orange}(3.4-3.6)}, {\\color{BrickRed}rdee} pa odstopanja - (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6})."}}' - } else { - opomba <- '{\\footnotesize \\textit{** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}Oranno} so oznaena odstopanja {\\color{Orange}(2.4-2.6)} - in {\\color{Orange}(3.4-3.6)}, {\\color{BrickRed}rdee} pa odstopanja - (pod {\\color{BrickRed}2.4}) in (nad {\\color{BrickRed}3.6})."}}' - } - } - - kompetence <- rbind(kompetence, c(pr.po.tmp$predmet.ocena.kompetence_N, colSums(kompetence[,2:3]))) - # Also manually round second and third column for latex table purposes - kompetence[,2:3] <- round(kompetence[,2:3]) - # Preverimo ali je tevilo odgovorov manje od 4. V tem primeru vrednosti en prikaemo - kompetence[,2] <- ifelse(kompetence$n < 4, ".", kompetence[,2]) - # Add parenthesis for first column if neccessary (Number of answers) - kompetence <- formatval(kompetence) - - # Povpreja obarvamo gled ena poglavje Metodoloko pojasnilo - # Course mean - komp.m <- formatval(data.frame(mean = pr.po.tmp$predmet.ocena.kompetence_mean))[[1]] - # Faculty mean - komp.m.f <- formatval(data.frame(mean = F.avg.kom))[[1]] - # Course sd - kom.sd <- - ifelse(is.na(round(pr.po.tmp$predmet.ocena.kompetence_sd, 1)), - ".", - round(pr.po.tmp$predmet.ocena.kompetence_sd, 1)) - # Faculty sd - Fcom.sd <- round(as.numeric(F.avg.sd.kom) ,1) - # Tidy data for latex table - komp.m <- - c('', - paste0('\\textit{', komp.m, "}"), - paste0('\\textit{', komp.m.f, "}")) - - #Dodatna linija za STANDARDNI ODKLON predmeta in STANDARDNI ODKLON fakultete - komp.sd <- - c('', - paste0( - '\\textit{', - kom.sd , - "}" - ), - paste0('\\textit{',Fcom.sd, '}')) - - # Combine data - kompetence <- rbind(kompetence, komp.m, komp.sd) - - # Rownames for latex tables purposes - rownames(kompetence) <- - c( - as.character(unlist(vars.predmet$kompetence$labele)), - '\\hline\n\\textbf{Skupaj}', - '\\hline\\hline\n\\textit{Povpreje}', - '\n\\textit{Standardni odklon}' - ) - # Compile latex table - kompetence.tex <- capture.output(Hmisc::latex(kompetence, - caption = "Frekvenna porazdelitev za - oceno pridobljenih kompetenc - (anketa PO izpitu)", - rowlabel = '', - file = '', - where = 'H', - cgroup = c("Predmet", fakulteta), - n.cgroup = c(2, 1), - col.just = strsplit("crr", "")[[1]], - insert.bottom = "")) - - # Content - part$predmet[[predmet]]$kompetence <- c("\\subsubsection{\\Large Kompetence (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright V kolikni meri ste pri predmetu - pridobili priakovane \\textbf{kompetence}\\guillemotleft ", - kompetence.tex, - "\\begin{figure}[H]", - paste0("\\caption{Frekvenna porazdelitev za oceno pridobljenih kompetenc (anketa PO izpitu)}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_kompetence1.pdf}}"), - "\\end{figure}") - ## //KOMPETENCE// ## - - - ## Izpis: ODGOVORI NA ODPRTA VPRAANJA ANKETA PRED IN PO - # Komentar dobro, Komentar slabo == ANKETA PRED IZPITOM - # Komentar pridobljene kompetence == ANKETA PO IZPITU - - # Tidy data - # ANKETA PRED - data.text.pred <- - lapply(data.pred.tmp[c( - "predmet.komentar.dobro", - "predmet.komentar.slabo")], trim) - - # Pri filozofski se je pri odprtih komentarjih zgodilo - # da je znak "x" poruil latex in je javlajlo napako - # zaot to ustrezno nadomestimo. - data.text.pred[] <- - lapply(data.text.pred, function (x) - gsub("", "*", x, fixed = TRUE)) - - #ANKETA PO - data.text.po <- - lapply(data.po.tmp["predmet.komentar.kompetence.pojasnilo"], trim) - - # Append all comments - data.text <- append(data.text.pred, data.text.po) - - for (textvar in names(data.text)) { - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- - gsub(pattern = '\\\\', - replacement = '!backslash!', - x = data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - # Coements will be shown as items (itemization) - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { - # e je kaken komentar - komentarji <- - reports::LL( - text = Hmisc::latexTranslate(komentarji), - copy2clip = FALSE, - enumerate = FALSE - ) - komentarji <- - gsub(pattern = '!backslash!', - replacement = '\\\\textbackslash ', - x = komentarji) - tex.text <- - append(tex.text, append( - paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep = ''), - komentarji - )) - } else { - tex.text <- - append( - tex.text, - append( - paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep = ''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ' - ) - ) - } - } - - part$predmet[[predmet]]$text <- tex.text - - ## //TEKSTOVNE// ## - - # e indeks predmetov - predmeti[[predmet]] <- - list(izvajalci = izvajalci.predmeta, - ime.datoteke = paste('predmet_', predmet, '.pdf', sep = '')) #!preveri!, ime=ime.predmeta - - - #------- POGLAVJE: ANALIZA PREDMETA PO PROGRAMIH IN LETNIKIH ---------# - # Anketa PRED - # Get data from which program did the greades for the course come from - predBySmer.df <- subset(povprecja.predmeti.programi.brez.cenzure, - predmet.sifra == predmet & N_anket > 0)[c( - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - paste0(vars.predmet$cont$pred, "_N"), - "program.studentov.ime" - )] - - - predBySmer.df <- predBySmer.df[!duplicated(predBySmer.df$program.studentov.ime),] - # Prepare data and create latex table (see custom function "pro.let.c") - predBySmerpred <- pro.let.c(predBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.pred, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.pred," - predmetov)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} \\guillemotright" , imepredmeta, - "\\guillemotleft \\ glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)" - ) - ), # Fifth argument is Latex Table caption - "PRED", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ))) - - - # Anketa PO - poBySmer.df <- - subset( - povprecja.predmeti.programi.PO.brez.cenzure.PO, - predmet.sifra == predmet & N_anket > 0 - )[c("N_anket", - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_mean"), - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_N"), - "program.studentov.ime")] - - poBySmer.df <- poBySmer.df[!duplicated(poBySmer.df$program.studentov.ime),] - - # prepare data and create latex table: Povprene ocene komponent predmeta gled ena tudijski program vpisanih tudentov (Anketa PO izpitu) - predBySmerpo <- pro.let.c(poBySmer.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.po, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.po," - predmetov)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} glede na tudijski program** vpisanih tudentov (anketa PO izpitu)" - ) - ), # Fifth argument is Latex Table caption - "PO", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = FALSE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$po])[-1], - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT***" - ))) - - - # Anketa PRED (letnik tudentov) - predByLetnik.df <- - subset(povprecja.predmeti.letniki.brez.cenzure, - predmet.sifra == predmet & N_anket > 0)[c( - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - paste0(vars.predmet$cont$pred, "_N"), - "letnik.studentov" - )] - - predByLetnik.df <- predByLetnik.df[!duplicated(predByLetnik.df$letnik.studentov),] - - # Latex table: Povprene ocene komponent predmeta po letniku tudentov (anketa PRED izpitom) - predByLetnikpred <- pro.let.c(predByLetnik.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.pred, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", - fakulteta, " (",kvantili.predmeti.st.pred," - izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PRED izpitom)" - ) - ), # Fifth argument is Latex Table caption - "PRED", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = TRUE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}" - ))) - - - # Anketa PO (letnik tudentov) - poByLetnik.df <- subset( - povprecja.predmeti.letniki.PO.brez.cenzure.PO, - predmet.sifra == predmet & N_anket > 0 - )[c("N_anket", - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_mean"), - paste0(c( - vars.predmet$cont$po, "predmet.ocena.krediti" - ), "_N"), - "letnik.studentov")] - - - poByLetnik.df <- poByLetnik.df[!duplicated(poByLetnik.df$letnik.studentov),] - - - # Povprene ocene komponent predmeta po letniku tudentov (anketa PO izpitu) - predByLetnikpo <- pro.let.c(poByLetnik.df, # First argument (data frame) - "\\hline \\textbf{Povpreje predmeta}", # Second argument rownames for course total average - F.avg.po, # Third Argument is Faculty means Which is inserted in another row for Latex table pruposes - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," izvedb pri predmetih)}"), # Fourth argument is Faculty rowname where we add number od izvedb - c( - paste( - "Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PO izpitu)" - ) - ), # Fifth argument is Latex Table caption - "PO", # Sixth argument is type of the table. So in ANKETA PRED weh have different table length than in ANKETA PO - letnik = TRUE, # Seventh arhument: If TRUE, the greades for the lecturer/course come from students grades and not students programme - colnam = latex.rotate(c( # # Eight argument: Colnames for Latex table - "t. odgovorov", - as.character( vars.predmet$cont$ime.kratko[vars.predmet$cont$po])[-1], - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT***" - ))) - - - - # quantiles: Kvantilni rangi za povprene ocene komponent predmeta glede na vse predmete tudijskega programa, - # v katerega so vpisani tudenti (anketa PRED izpitom) - - # ANKEA PRED IZPITOM - progs <- rownames(predBySmerpred$tabela[predBySmerpred$tabela$N_anket >= minEnot,]) - - predmetBySmerProgrami <- - subset( - kvantili.predmeti.programi, - predmet.sifra == unique(as.character(predmet)) & - program.studentov.ime %in% progs - ) - - - predmetBySmerProgrami <- predmetBySmerProgrami[!duplicated(predmetBySmerProgrami$program.studentov),] - - if (nrow(predmetBySmerProgrami) > 0) { - progpred.tmp <- - povprecja.predmeti.programi[povprecja.predmeti.programi$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - progpred.tmp <- - aggregate(progpred.tmp$predmet.sifra, by = progpred.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - - predmetBySmerProgrami <- - merge( - predmetBySmerProgrami, - progpred.tmp[c("x","program.studentov")], - by = "program.studentov", - all.x= TRUE - ) - - # Sort data by number of courses in each progrem (column "x") in decreasign order - predmetBySmerProgrami <- - predmetBySmerProgrami[order(predmetBySmerProgrami$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(predmetBySmerProgrami) <- - make.unique(as.character(predmetBySmerProgrami$program.studentov.ime)) - - # Tidy daata for Latex tables - predmetBySmerProgrami <- - predmetBySmerProgrami[c( - "x", - "N_anket", - paste0(vars.predmet$cont$pred, "_mean"), - "predmet.ocena.SKUPAJ" - )] - # Imena Stolpcev - colnames(predmetBySmerProgrami) <- latex.rotate(c("t. predmetov*","t. odgovorov**", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred]), - "\\textbf{Skupaj}")) - - # Compile Latex table - predmetBySmerProgrami.tex <- capture.output(Hmisc::latex(predmetBySmerProgrami, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa, v katerega - so vpisani tudenti (anketa PRED izpitom)" - ), - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{10cm}", - insert.bottom = kvan.pojas1, - multicol = FALSE, - col.just = c("c|", "c|", rep_len("c", length( vars.predmet$cont$pred)), "|c"), - rowname = Hmisc::latexTranslate(rownames(predmetBySmerProgrami)))) - - } else { - predmetBySmerProgrami.tex <- NULL - } - - - # ANKEA PO IZPITU - progs.po <- rownames(predBySmerpo$tabela[predBySmerpo$tabela$N_anket >= minEnot,]) - - predmetBySmerProgramipo <- - subset( - kvantili.predmeti.programi.PO, - predmet.sifra == unique(as.character(predmet)) & - program.studentov.ime %in% progs.po - ) - - if (nrow(predmetBySmerProgramipo) > 0) { - progpo.tmp <- - povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$N_anket >= minEnot, c("predmet.sifra", - "program.studentov", - "program.studentov.ime")] - # Number of Lecturers for each programme - progpo.tmp <- - aggregate(progpo.tmp$predmet.sifra, by = progpo.tmp[c("program.studentov", "program.studentov.ime")], function(x) - length(x)) - - - predmetBySmerProgramipo <- - merge( - predmetBySmerProgramipo, - progpo.tmp[c("x","program.studentov")], - by = "program.studentov", - all.x= TRUE - ) - - # Sort data by number of courses in each progrem (column "x") in decreasign order - predmetBySmerProgramipo <- - predmetBySmerProgramipo[order(predmetBySmerProgramipo$x, decreasing = TRUE), ] - - # Imena vrstic - rownames(predmetBySmerProgramipo) <- - make.unique(as.character(predmetBySmerProgramipo$program.studentov.ime)) - - # Tidy daata for Latex tables - predmetBySmerProgramipo <- - predmetBySmerProgramipo[c( - "x", - "N_anket", - paste0(vars.predmet$cont$po[-1], "_mean"), - "predmet.ocena.SKUPAJ", - "predmet.ocena.kompetence_mean", - "predmet.ocena.krediti_mean" - )] - # Imena Stolpcev - colnames(predmetBySmerProgramipo) <- latex.rotate(c("t. predmetov***","t. odgovorov*", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]), - "\\textbf{Skupaj}", - "Kompetence", - "Ustreznost KT**" - )) - - - # Pojasnilo oz. opomba pod Latex tabelo - kvan.int <- c(paste0("{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je - kvantilni rang za odgovarjajoe vrednosti, vendar ni obarvan, saj gre za administrativni podatek. - \\newline ** Kvantilni rang ", predmetBySmerProgramipo[1,8]," pomeni, da je ", - paste0(predmetBySmerProgramipo[1,8], "\\%")," vseh ocenjenih predmetov zahtevalo - nije tevilo ur glede na tevilo kreditnih tok.\\newline *** Gre za vse predmete z vsaj 4 odgovori - (tudi predmete drugih programov, e so bili izbirni), ki so jih vpisali ttudenti doloenega programa.}}")) - - # Compile Latex table - predmetBySmerProgramipo.tex <- capture.output(Hmisc::latex(predmetBySmerProgramipo, - caption = paste( - "Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa, v katerega - so vpisani tudenti (anketa PO izpitu)" - ), - rowlabel = "", - file = "", - where = "H", - rowlabel.just = "p{10cm}", - insert.bottom = kvan.int, - multicol = FALSE, - col.just = c("c|", "c|", rep_len("c", length( vars.predmet$cont$po[-1])), "|c|", "c", "c"), - rowname = Hmisc::latexTranslate(rownames(predmetBySmerProgramipo)))) - - } else { - predmetBySmerProgramipo.tex <- NULL - } - - - - - part$predmet[[predmet]]$BySmerLetnik <- - c( - "\\setlength{\\tabcolsep}{3pt}", - predBySmerpred$tex, - predmetBySmerProgrami.tex, - predBySmerpo$tex, - predmetBySmerProgramipo.tex, - predByLetnikpred$tex, - predByLetnikpo$tex, - "\\setlength{\\tabcolsep}{6pt}" - ) - - - } else { # e ni dovolj enot - part$predmet[[predmet]]$pojasniloPremaloEnot <- '- Zaradi prenizkega tevila odgovorov analiza predmeta ni bila narejena. -' - } - ## //analiza predmeta po smereh in letnikih tudentov// ## - - - - # - # # skupne tabele za predmete (POVZETKI) ## - # FDVmeans_Izvajalec9_BDorBP <- c(Fizv["skupaj", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - # F.avg.izv) - # - # FDVmeansPredmet_BDorBPpred <- c(Fpred["skupaj",c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - # F.avg.pred[c(paste0(vars.predmet$cont$pred,"_mean"), "predmet.ocena.SKUPAJ")]) - # - # FDVmeansPredmet_BDorBPpo <- c(Fpo["skupaj",c("ST_STUD","N_anket","sodelujocih.pct", - # "zavrnjenih.pct","neodzivnih.pct")], - # F.avg.po[c(paste0(vars.predmet$cont$po,"_mean"), "predmet.ocena.SKUPAJ")], - # F.avg.po["predmet.ocena.krediti_mean"]) - # - # - # ## - # # povzetek izvajalcev predmeta - # povzIzv <- - # povprecja.izvajalci[povprecja.izvajalci$predmet.sifra == predmet, c( - # "ST_STUD", - # "N_anket", - # "sodelujocih.pct", - # "zavrnjenih.pct", - # "neodzivnih.pct", - # paste0(vars.izvajalec$cont$vars, "_mean"), - # "izvajalec.ocena.SKUPAJ" - # )] - # - # povzIzv <-povzIzv[!duplicated(povzIzv$N_anket),] - # - # imenaIzv <- povprecja.izvajalci[povprecja.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - # imenaIzv <- imenaIzv[!duplicated(imenaIzv)] - # meansI <- subset(povprecja.predmet.izvajalci.skupaj, predmet.sifra==predmet)[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - # - # if (sum(is.na(povzIzv)) > 0) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaI <- NULL} - # povzIzv <- rbind(povzIzv, meansI, FDVmeans_Izvajalec9_BDorBP) - # - # povzIzv <- formatval(povzIzv) - # rownames(povzIzv) <- c(Hmisc::latexTranslate(imenaIzv), "\\hline \\textbf{Povpreje izvajalcev predmeta}", paste("\\hline \\textbf{Povpreje izvajalcev", fakulteta, "(po vseh izvedbah)}")) - # colnames(povzIzv) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - # tex.povzIzv <- capture.output(Hmisc::latex(povzIzv, caption="Povprene ocene komponent pedagokega dela izvajalcev (anketa PRED izpitom)", rowlabel="", file="", where="H", multicol=FALSE, - # col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{8.9cm}", insert.bottom=opombaI)) - # - # - # povzPredmPRED <- rbind(pr.pred.tmp[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")], unlist(FDVmeansPredmet_BDorBPpred)) - # povzPredmPO <- rbind(pr.po.tmp[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.krediti_mean")], unlist(FDVmeansPredmet_BDorBPpo)) - # - # if (any(is.na(povzPredmPRED))) {opombaPpred <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpred <- NULL} - # if (any(is.na(povzPredmPO)) | nrow(povzPredmPO) < 2) {opombaPpo <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpo <- NULL} - # - # - # povzPredmPRED <- formatval(povzPredmPRED) - # # Preverimo ali je predmet v bazi ANKETE PO - # if (nrow(povzPredmPO) > 1) { - # povzPredmPO <- formatval(povzPredmPO, KT = TRUE) - # } else { - # povzPredmPO <- - # rbind(cbind(round(povzPredmPO[1:5], 0), round(povzPredmPO[6:ncol(povzPredmPO)], 1)), - # cbind(round(povzPredmPO[1:5], 0), round(povzPredmPO[6:ncol(povzPredmPO)], 1))) - # colnames(povzPredmPO) <- - # c( - # "ST_STUD", - # "N_anket", - # "sodelujocih.pct", - # "zavrnjenih.pct", - # "neodzivnih.pct", - # paste0(vars.predmet$cont$po, "_mean"), - # "predmet.ocena.SKUPAJ", - # "predmet.ocena.krediti_mean" - # ) - # povzPredmPO <- formatval(povzPredmPO, KT = TRUE) - # - # povzPredmPO[1,] <- "--" - # opombaPpo <- "{\\footnotesize \\textit{-- Predmet nima odgovorov.}}" - # } - # - # rownames(povzPredmPRED) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', pr.pred.tmp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.pred," predmetov)}"))) - # rownames(povzPredmPO) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', pr.pred.tmp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," predmetov)}"))) - # colnames(povzPredmPRED) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - # colnames(povzPredmPO) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - # - # - # povzPredmPO <- povzPredmPO[c(1,2,3,4,5,7,8,9,10,6,11)] - # tex.povzPredmPRED <- c(capture.output(Hmisc::latex(povzPredmPRED, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PRED izpitom)', rowlabel='', file='', where='H', multicol=FALSE, - # col.just=c(rep_len('c',1),'c|','c','c','c|',rep_len('c', length(vars.predmet$cont$pred)),'|c'), rowlabel.just='p{7.7cm}', insert.bottom=opombaPpred))) - # - # tex.povzPredmPO <- c(capture.output(Hmisc::latex(povzPredmPO, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PO izpitu)', rowlabel='', file='', where='H', multicol=FALSE, - # col.just=c(rep_len("c",1),"c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), rowlabel.just='p{8.9cm}', insert.bottom=opombaPpo))) - # - # - # part$predmet[[predmet]]$povzetek <- c("\\chapter{Povzetek predmetov}", - # paste("V tabelah so prikazana povpreja na lestvicah, - # kjer so tudenti oznaili strinjanje s trditvami, - # ki se nanaajo na komponente pedagoke izvedbe - # (1 - sploh se ne strinjam, 2 se bolj ne strinjam kot strinjam, - # 3 niti se ne strinjam niti se strinjam, 4 se bolj strinjam kot ne strinjam, - # 5- popolnoma se strinjam). Vpraalniki so na povezavi - # \\url{http://ul.1ka.si/q}. - # \\newline \\newline - # Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - # kritino nizka povpreja (1.0-2.9) pa so obarvana {\\color{BrickRed}rdee}. - # Visoka povpreja (4.5-4.7), kjer je veina tudentov podala oceno - # popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - # najvija (4.8-5.0) pa {\\color{Blue Stone}temnozeleno}. - # \\newline \\newline - # V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, - # ampak je navedena pika .. Ocene za povpreja, ki temeljijo na nizkem - # tevilu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - # so manj kakovostne, zato so oznaene z enojnim () oziroma z dvojnim oklepajem (()). - # Podrobne analize in podrobna metodoloka pojasnila so v celotnem poroilu. - # Osnovna metodoloka pojasnila se nahajajo tudi na \\url{http://ul.1ka.si/metodologija}."), - # tex.povzPredmPRED, tex.povzPredmPO) - # ## //skupne tabele za predmete (povzetki)// ## - # - # - # ## kvantili ## - # kvantili.izvajalcev.predmeta <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - # imenaIzv <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - # - # - # if (any(kvantili.izvajalcev.predmeta == ".")) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.1, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.}"} else {opombaI <- pojas} - # rownames(kvantili.izvajalcev.predmeta) <- Hmisc::latexTranslate(imenaIzv) - # colnames(kvantili.izvajalcev.predmeta) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - # - # tex.kvantili.izvajalcev.predmeta <- capture.output(Hmisc::latex(kvantili.izvajalcev.predmeta, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{izvajalcev pri predmetih} - anketa PRED izpitom (med skupno", kvantili.izvajalci.st, "izvedbami)"), rowlabel="", file="", where="H", multicol=FALSE, - # col.just=c("c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{10cm}", insert.bottom=opombaI)) - # - # - # - # - # kvantili.predmeta.pred <- kvantili.predmeti[kvantili.predmeti$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ")] - # - # - # int.predmetPRED <- - # c( - # paste0( - # "{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.1, \n vendar niso dodatno obarvani, saj gre za administrativne podatke. Kvantilni rang ", - # kvantili.predmeta.pred[1, 1], - # " za predmet \\guillemotright ", - # subset(pr.pred.tmp, predmet.sifra == predmet)$PREDMET, - # "\\guillemotleft \\ pomeni, da je imelo ", - # paste0(kvantili.predmeta.pred[1, 1], "\\%"), - # " predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", - # paste0(povzPredmPRED[1, 1]), - # " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", - # kvantili.predmeta.pred[1, 11], - # " (\\textbf{Skupaj}), pomeni \nda je ", - # paste0(kvantili.predmeta.pred[1, 11], "\\%"), - # " od ", - # kvantili.predmeti.st.pred, - # " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - # round( - # subset(pr.pred.tmp, predmet.sifra == predmet)$predmet.ocena.SKUPAJ, - # digits = 1 - # ), - # " (\\textbf{Skupaj}) v tabeli 1.1.}}" - # ) - # ) - # - # - # if (any(kvantili.predmeta.pred == ".")) {opombaPpred <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.2, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.\\newline **Kvantilni rang ", kvantili.predmeta.pred[1,1]," za predmet \\guillemotright ", gsub("_", "\\_", rownames(kvantili.predmeta.pred)[1], fixed = TRUE),"\\guillemotleft \\ pomeni, da je imelo ", paste0(kvantili.predmeta.pred[1,1], "\\%")," predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", paste0(kvantili.predmeta.pred[1,1]), " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", kvantili.predmeta.pred[1,11], " (\\textbf{Skupaj}), pomeni \nda je ", paste0(kvantili.predmeta.pred[1,11], "\\%"), " od ",kvantili.predmeti.st.pred," predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", round(subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1],digits=1), " (\\textbf{Skupaj}) v tabeli 1.1.}"))} else {opombaPpred <- int.predmetPRED} - # rownames(kvantili.predmeta.pred) <- Hmisc::latexTranslate(paste0(gsub("izredna izvedba", "I", pr.pred.tmp$ime.predmeta))) - # colnames(kvantili.predmeta.pred) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - # tex.kvantili.predmeta.pred <- c(capture.output(Hmisc::latex(kvantili.predmeta.pred, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", kvantili.predmeti.st.pred, "predmeti (anketa PRED izpitom)"), rowlabel="", file="", where="H", multicol=FALSE, - # col.just=c("c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="p{9cm}", insert.bottom=opombaPpred))) - # - # - # - # kvantili.predmeta.po <- - # kvantili.predmeti.po[kvantili.predmeti.po$predmet.sifra == predmet, c( - # "ST_STUD", - # "N_anket", - # "sodelujocih.pct", - # paste0(vars.predmet$cont$po, "_mean"), - # "predmet.ocena.SKUPAJ", - # "predmet.ocena.krediti_mean" - # )] - # - # if(nrow(kvantili.predmeta.po) > 0) { - # int.predmetPO <- - # c( - # paste0( - # "{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - # \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso - # kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.2, \n vendar niso dodatno obarvani, - # saj gre za administrativne podatke.\\newline ** Kvantilni rang ", - # kvantili.predmeta.po[1, 8], - # " (\\textbf{Skupaj}), pomeni \nda je ", - # paste0(kvantili.predmeta.po[1, 8], "\\%"), - # " od ", - # kvantili.predmeti.st.po, - # " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - # round( - # subset(pr.po.tmp, predmet.sifra == predmet)$predmet.ocena.SKUPAJ, - # digits = 1 - # ), - # " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - # kvantili.predmeta.po[1, 9], - # " (\\textbf{Ustreznost KT}) pomeni, da je ", - # paste0(kvantili.predmeta.po[1, 9], "\\%"), - # " vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}}" - # ) - # ) - # if (any(kvantili.predmeta.po == ".")) { - # opombaPpo <- c( - # paste0( - # "{\\footnotesize \\textit{. Podatek - # ni prikazan zaradi premajhnega tevila enot.} - # \\newline * Tudi vrednosti za - # \\guillemotright t.vpisanih\\guillemotleft \\, - # \\guillemotright t.odgovorov\\guillemotleft \\ in - # \\guillemotright \\% odgovorov\\guillemotleft \\\nso - # kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.3, \n - # vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, - # saj gre za administrativne podatke.\\newline ** Kvantilni rang ", - # kvantili.predmeta.po[1, 8], - # " (\\textbf{Skupaj}), pomeni \nda je ", - # paste0(kvantili.predmeta.po[1, 8], "\\%"), - # " od ", - # kvantili.predmeti.st.po, - # " predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", - # round( - # subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ[1], - # digits = 1 - # ), - # " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", - # kvantili.predmeta.po[1, 9], - # " (\\textbf{Ustreznost KT}) pomeni, da je ", - # paste0(kvantili.predmeta.po[1, 9], "\\%"), - # " vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}" - # ) - # ) - # } - # else {opombaPpo <- int.predmetPO} - # - # rownames(kvantili.predmeta.po ) <- rownames(kvantili.predmeta.pred) - # colnames(kvantili.predmeta.po) <- - # latex.rotate( - # c( - # "t. vpisanih*", - # "t. odgovorov*", - # "\\% odgovorov*", - # Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - # "\\textbf{Skupaj}", - # as.character(vars.predmet$krediti$ime.kratko) - # ) - # ) - # - # - # - # kvantili.predmeta.po<-kvantili.predmeta.po[c(1,2,3,5,6,7,8,4,9)] - # tex.kvantili.predmeta.po <- - # c(capture.output( - # Hmisc::latex( - # kvantili.predmeta.po, - # caption = paste( - # "Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", - # kvantili.predmeti.st.po, - # "predmeti (anketa PO izpitu)" - # ), - # rowlabel = "", - # file = "", - # where = "H", - # multicol = FALSE, - # col.just = - # c('c', 'c', 'c|', rep_len('c', length( - # vars.predmet$cont$po[-1] - # )), '|c', '|c', 'c'), - # rowlabel.just = "p{10cm}", - # insert.bottom = opombaPpo - # ) - # )) - # - # } else { - # tex.kvantili.predmeta.po <- "Predmet v ANKETI PO ni imel odgovorov zato kvantilni rangi za predmet niso izraunani" - # - # } - # opredelitev.kvantili.predmet<-paste("Kvantilni rangi oznaujejo poloaj predmeta oziroma izvajalca med vsemi - # predmeti oziroma izvajalci celotne fakultete.\nZgornja etrtina (75-100) - # je obarvana {\\color{Chateau Green}zeleno (pohvalno)}, zgornja - # desetina (90-100) {\\color{Blue Stone}temnozeleno (odlino)}.\nSpodnja - # etrtina (0-25) je obarvana {\\color{Orange}\\textbf{oranno (opozorilno)}}, - # spodnja desetina (0-10) {\\color{BrickRed}rdee (kritino)}. - # Podrobnosti so na \\url{http://ul.1ka.si/metodologija}.") - # - # - # part$predmet[[predmet]]$kvantili <- - # c( - # "\\newpage", - # "\\section{Kvantilni rangi}", - # opredelitev.kvantili.predmet, - # tex.kvantili.predmeta.pred, - # tex.kvantili.predmeta.po - # ) - ## //kvantili// ## - } -#------------------------------------------- //PREDMET// ----------------------------------------------# - - -######################################## -#' DATA NEEDED FOR PDF REPORT: @PART III -######################################## -#---------------------------------------------- PRAKSA ------------------------------------------------# -# Zanka, ki generira porocila za vse unikatne sifre izvajalcev, ki so v sifreIzvajalec -izvajalciprakse <- NULL -praksaSifre <- subset(sifrant, PRAKSA == 1) -if (omejeniIzvajalci) { - # Ali naj poroila generira samo za tiste izvajlce, ki smo jih opredelili v navodila_dodatno-UTF-8.r - sifreIzvajalecZaPDF <- - as.character(omejeniIzvajalciSifre) # Kateri so to -} else { - sifreIzvajalecZaPDF <- as.character(names(izvajalci)) -} - -praksaSifrePDF <- unique(subset(praksaSifre, IDPEDAGOGA %in% sifreIzvajalecZaPDF)$IDPEDAGOGA) - -for (izvajalecpraks in praksaSifrePDF) { - # indeks izvajalcev z imeni in predmeti po ifrah izvajalcev - - # izvajalec in Povpreje predmeta / predmetov - izvajalciprakse[[izvajalecpraks]] <- - list(sifra.izv = unique(subset(praksaSifre, IDPEDAGOGA == izvajalecpraks)$IDPEDAGOGA), - praksa = as.character(unique( - subset(praksaSifre, IDPEDAGOGA == izvajalecpraks)$IDP - ))) -} - - -if (omejeniIzvajalci) { - sifrepraks <- - as.character(unique(praksaSifre$IDP[praksaSifre$IDPEDAGOGA %in% praksaSifrePDF])) -} else { - sifrepraks <- as.character(unique(praksaSifre$IDP)) -} - - -for (praksa in sifrepraks){ - - povprecja.predmet.praksa <- - subset(povprecja.predmeti.po, predmet.sifra == praksa) - - - # Anketa PO - data.praksa.tmp <- subset(data.predmeti.po, predmet.sifra == praksa & veljavna) - - if(nrow(povprecja.predmet.praksa) > 0) { - data.predmet.temp <- - subset(data.predmeti, - predmet.sifra == praksa & veljavna) - - #kdo so izvajalci predmeta - izvajalci.predmeta <- - unique(subset(praksaSifre, IDP == praksa)$IDPEDAGOGA) - - if (omejeniIzvajalci) { - izvajalci.predmeta <- - izvajalci.predmeta[izvajalci.predmeta %in% praksaSifrePDF] - } - - ## stopnja sodelovanja ## - sodelujocih <- povprecja.predmet.praksa$N_anket - stopnjaPredmeta <- povprecja.predmet.praksa$STOPNJA - if (stopnjaPredmeta==1) { - FDVstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - FDVstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', povprecja.predmet.praksa$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - FDVstring <- '' - } - imepredmeta <- sub("^BD |^BP ", "", povprecja.predmet.praksa$ime.predmeta) # ime brez BD/BP predpone - imepredmeta <- gsub('_', '\\_', imepredmeta, fixed=T) # pravilni izpis podrtaja v pdf izpisu "_" - imepredmeta <- gsub('&', '\\&', imepredmeta, fixed=T) # pravilni izpis in v pdg izpisu "&" - - if(povprecja.predmet.praksa$PRAKSA==1) { #e je predmet imel tudijsko prakso naredi proroilo, sicer ne. - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) -ANKETA PO IZPITU - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",praksa,"_response_po_izpitu_praksa.pdf"), - family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.po <- cbind(c(povprecja.predmet.praksa$sodelujocih.pct, - povprecja.predmet.praksa$zavrnjenih.pct, - povprecja.predmet.praksa$neodzivnih.pct), - c(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"], - Fpo[as.character(stopnjaPredmeta),"zavrnjenih.pct"], - Fpo[as.character(stopnjaPredmeta),"neodzivnih.pct"])) - - ## Get the y-values for text - ys.po <- apply(mat.po, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store x data - xs.po <- barplot(mat.po, names.arg=c('Predmet', studijska.praksa), - col=c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim=c(0,100), space=c(0,1)) - - ## Add text - text(rep(xs.po, each=nrow(ys.po)), c(ys.po), labels=paste0(round(c(mat.po), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - ##### - - tex.sodelovanje1 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za - predmet \\guillemotright ", imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", - paste0(povprecja.predmet.praksa$N_anket), " od skupno ", povprecja.predmet.praksa$ST_STUD, - " tudentov, kar je \\textbf{", round(povprecja.predmet.praksa$sodelujocih.pct), "\\%} - vseh vpisanih tudentov. ", "povpreje praks ", fakulteta, " je sicer znaalo - \\textbf{", round(Fpo[as.character(stopnjaPredmeta),"sodelujocih.pct"]), "\\%}."), - "\\begin{figure}[H]", - "\\caption{Struktura (\\%) tudentov glede na odgovarjanje (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - praksa, "_response_po_izpitu_praksa.pdf}}"), - "\\end{figure}") - izvajalciprakse$predmet[[praksa]]$response1 <- tex.sodelovanje1 - ## /stopnja sodelovanja/ ## - - - tabela.praksa <- cbind.data.frame( - N = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_N")]), - mean = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_mean")]), - sd = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_sd")]), - min = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_min")]), - max = as.numeric(povprecja.predmet.praksa[paste0(vars.predmet$cont$praksa, "_max")]) - ) - - povprecja.praksa <- tabela.praksa$mean - - tabela.praksa[is.na(tabela.praksa)] <- "." - - if (min(as.numeric(tabela.praksa$N)) < minEnot) { - opomba <- - '{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot.}}' - } else { - opomba <- "{\\footnotesize {}}" - } - FDVcont.praksa <- - data.frame(F.avg.po[paste0(vars.predmet$cont$praksa, "_mean")]) - colnames(FDVcont.praksa) <- 'Pmean' - tabela.praksa <- cbind(tabela.praksa, FDVcont.praksa) - - - tabela.praksa <- - rbind( - tabela.praksa, - c( - '', - povprecja.predmet.praksa$predmet.ocena.SKUPAJ.praksa, - '', - '', - '', - mean(tabela.praksa$Pmean, na.rm = - TRUE) - ) - ) - - # - tabela.praksa <- formatval(tabela.praksa) - - rownames(tabela.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$praksa])), - '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - colnames(tabela.praksa) <- c('n', 'povpreje', 'sd', 'min', 'max', 'povpreje') - tabela.contR.praksa.tex1 <- capture.output(Hmisc::latex(toLatex(tabela.praksa), - caption="Povprene ocene komponent \\textbf{tudijske prakse} - (anketa PO izpitu)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", studijska.praksa), - n.cgroup=c(5,1), - col.just=rep_len('c', ncol(tabela.praksa)), - rowlabel.just='p{9.5cm}', - insert.bottom=opomba)) - - - ## radar graf ## - if (sum(!is.na(povprecja.praksa)) < 4) {povprecja.praksa <- povprecja.praksa[!is.na(povprecja.praksa)] <-NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(FDVcont.praksa, as.numeric(povprecja.praksa)))), row.names=1:4, check.names=F) - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])) - radar.f<-radar.cont - star.radar2<-as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]) - - colnames(radar.f) <- sub(" ", "\n", star.radar2) - CairoPDF(paste0("Evalvacija/results/",fakulteta,"/part-predmet-slike/",praksa,"_cont1.pdf"), - family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) - fmsb::radarchart(radar.f, pcol=c('dodgerblue3','firebrick3'), cglcol='gray75', - plwd=2, plty=1, cglwd=1, cglty=1, seg=4, axistype=1, - caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Predmet", paste(studijska.praksa, "Povpreje")), - col=c('firebrick3', 'dodgerblue3'), - lty=1, lwd=2, bty='n') - dev.off() - ## /radar graf/ ## - - - data.praksa.temp.<- subset(data.po.miss, predmet.sifra==praksa) - # frekvence - dist.praksa <- - t(sapply(data.praksa.temp.[, vars.predmet$cont$praksa], function(x) - table(factor(x, levels = someMiss.po)))) - # samo kjer je dovolj enot - dist.praksa[rowSums(dist.praksa) < minEnot,] <- NA - dist.praksa <- - cbind(dist.praksa, rowSums(dist.praksa, na.rm = TRUE)) - dist.praksa[is.na(dist.praksa)] <- "." - - ##podrobna porazdelitev1 ocen## - rownames(dist.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]))) - colnames(dist.praksa) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}", - "\\textbf{Ne elim odgovoriti}","\\textbf{Nimam dovolj informacij}","\\textbf{Skupaj}") - - porazdelitev1.tex <- capture.output( - Hmisc::latex( - dist.praksa, - caption = 'Frekvenna porazdelitev odgovorov za ocene - komponent \\textbf{tudijske prakse}', - rowlabel = '\\textbf{Komponente}', - file = '', - where = 'H', - col.just = rep_len('c', ncol(dist.praksa)), - insert.bottom = opomba - ) - ) - ## //podrobna porazdelitev1 ocen// ## - - izvajalciprakse$predmet[[praksa]]$cont1 <- porazdelitev1.tex - - - - data.text1 <- lapply(data.praksa.tmp[vars.predmet$text$vars[4]], trim) - for (textvar in names(data.text1)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text1[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text1[[textvar]][!data.text1[[textvar]] %in% junk.komentar]) - } - - tex.text1 <- NULL - for (textvar in names(data.text1)) { - komentarji <- data.text1[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - # komentarji <- gsub(pattern='', replacement='e', x=komentarji) - # komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ')) - } - } - - izvajalciprakse$predmet[[praksa]]$text1 <- tex.text1 - - - studij.praksa <- c( - "\\section{tudijska praksa ",imepredmeta,"}", - izvajalciprakse$predmet[[praksa]]$response1, - "\\section{Ocena tudijske prakse}", - tabela.contR.praksa.tex1, - "\\begin{figure}[H]", - "\\caption{Povprene ocene komponent \\textbf{tudijske prakse} (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - praksa, "_cont1.pdf}}"), - "\\end{figure}",izvajalciprakse$predmet[[praksa]]$cont1, - "\\section{Praksa: Odgovori na odprta vpraanja}",izvajalciprakse$predmet[[praksa]]$text1) - - - izvajalciprakse$predmet[[praksa]]$praksa <- studij.praksa - } else {izvajalciprakse$predmet[[praksa]]$praksa <- NULL - } - - } else{ izvajalciprakse$predmet[[praksa]]$praksa <- NULL - } -} -#-------------------------------------------- //PRAKSA// ----------------------------------------------# - - - - - -################################# -#' COMPILING TEX PARTS: @PART IV -################################# -#----------------------------- SESTAVLJANJE in KOMPILACIJA .tex datotek ------------------------------------------# -#------------------------------------------ IZCAJALEC REPORT --------------------------------------------# -# V Mapi latexkosi so definirane: Glava latex dokumenta, noga latex dokumenta -#encoding='UTF-8' (Ȏ ji) -tex.glava <- scan('Evalvacija/latexkosi/a-glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -# Logo fakultete v PDF poroilu -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) -# V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava) -# Izpis imena leta semestra -tex.glava <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava) -# encoding -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("--","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x = tex.glava) -# Latex noga (end document) -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -# Directory -Rdirektorij <- getwd() - -# List for storing data for TUDIJSKA PRAKSA -tex.praksa <- NULL -studpraksa <- NULL - - -#Ali naj poroila generira samo za tiste izvajalce, ki smo jih opredelili v zacetku kode -# IZBRANI IZVAJALCI ---------------------------------------- -if (omejeniIzvajalci) { - # For which lecturer to geenrate PDF report - sifreIzvajalecZaPDF <- as.character(omejeniIzvajalciSifre) -} else { - # PDf reports should be generated for all lecturers that are in sifrant X1 - # have data in ANKETA PRED or ANKETA PO - sifreIzvajalecZaPDF <- as.character(names(izvajalci)) -} -#-------------- ---------------------------------------- - -# PRAKSA---------------------------------------------- -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - - # LOOP ZA TUDIJSKO PRAKSO - # If Lecturer has PRAKSA - if (izvajalec %in% praksaSifrePDF) { - for (praksa in izvajalciprakse[[izvajalec]]$praksa) { - - tex.praksa[[praksa]] <- izvajalciprakse$predmet[[praksa]]$praksa - studpraksa$predmet[[izvajalec]][[praksa]] <- tex.praksa - } - } else { - tex.praksa <- NULL - } -#------------------------------------------------------ - -#IZVAJALEC PREDMET----------------------------------- - tex.report.izvajalec <- NULL - - for (predmet in izvajalci[[izvajalec]]$predmeti) { - # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot - # (in izvajalci ne morejo imeti vee odg. kot predmet) - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { - - # e ni pojasnila o premalo odg. nadaljuje s sestavljanjem - tex.part.predmet <- - c( - part$predmet[[predmet]]$cont, - "\\newpage", - part$predmet[[predmet]]$krediti, - "\\newpage", - part$predmet[[predmet]]$kompetence, - "\\newpage", - "\\subsubsection{\\Large Analiza predmeta po programih in letnikih}", - part$predmet[[predmet]]$BySmerLetnik, - "\\section{Predmet: Odgovori na odprta vpraanja}", - part$predmet[[predmet]]$text - ) - - # Preverimo ali imamo premalo enot - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo, da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- - c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - } else { - # Drugae nadaljujemo s sestalvjanjem - tex.part.predmet.izvajalec <- - c( - part$izvajalec[[izvajalec]][[predmet]]$cont, - "\\newpage", - "\\subsubsection{\\Large Analiza izvajalca po programih in letnikih}", - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik, - "\\section{Izvajalec: Odgovori na odprta vpraanja}", - part$izvajalec[[izvajalec]][[predmet]]$text - ) - } - - # SOIZVAJALCI --------------------------------------------- - ## e nosilci dobijo tudi ocene soizvajalcev ## - if (nosilci_soizvajalcev) { - # For loop purposes - tex.soizvajalci.predmet <- NULL - - # Preverimo kdo je nosilec, predemta h kateremu - # bomo dodali tudi ocene soizvajalca - nosilec <- - subset(sifrant, IDP == predmet & NOSILEC == "1")$IDPEDAGOGA - # Preverimo ali je Nosilec opredeljen (Nosilci so - # definirani v bazi sifrant X1) - if (!is.null(nosilec) && izvajalec %in% nosilec) { - # Preverimo, kdo so soizvajalci - soizvajalci <- - as.character(predmeti[[predmet]]$izvajalci)[as.character(predmeti[[predmet]]$izvajalci) != izvajalec] - # V primeru, da ima en predmet ve nosilcev, prepreimo, da bi - # nosilec predmeta dobil ocene drugega nosilca predmeta - # (Pravna fakulteta je eden izmed primerov) - soizvajalci <- soizvajalci[!(soizvajalci %in% nosilec)] - # Naredimo loop - for (soizvajalec in soizvajalci) { - if (!is.null(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.soizvajalec <- - c(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot, - "\\newpage") - tex.part.soizvajalecBySmerLetnik <- NULL - } else { - # e imamo podatke nadaljujemo s sestavo poglavja - # za soizvajalca - tex.part.predmet.soizvajalec <- - c('\\textbf{KOMPONENTE PEDAGOKEGA DELA}', - part$izvajalec[[soizvajalec]][[predmet]]$cont) - tex.part.soizvajalecBySmerLetnik <- - c( - '\\textbf{ANALIZA IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH}', - part$izvajalec[[soizvajalec]][[predmet]]$BySmerLetnik, - "\\textbf{ODGOVORI NA ODPRTA VPRAANJA}", - "\\newline", - "\\newline", - part$izvajalec[[soizvajalec]][[predmet]]$text - ) - } - # Ime soizvajalca - tex.naslov.soizvajalca <- - paste('\\subsubsection{', izvajalci[[soizvajalec]]$ime, '}', sep = '') - # Ocene predmeta in ocene predemta glede na program in letnik studentov - tex.soizvajalci.predmet <- - c( - tex.soizvajalci.predmet, - tex.naslov.soizvajalca, - tex.part.predmet.soizvajalec, - tex.part.soizvajalecBySmerLetnik, - "\\newpage" - ) - - } - } - } - #-------------------------------------------------------------------- - - # Predmet: Section: Ocene predmeta ---------------------------------------------- - #' V poglavju se nahaja: - #' @Frekvnne porazdeliteve za anketo PRED in PO - #' @Kompetence - #' @Krediti - #' @Analize predmeta po programu in letniku - #' @Odgovori na odprta vpraanja predmeta - #' @Ocene izvajalca - tex.parti <- c( - "\\newpage", - "\\section{Ocene predmeta}", - "\\subsubsection{Podrobne analize odgovorov (anketa PRED in anketa PO izpitu)}", - tex.part.predmet, - "\\newpage", - "\\section{Ocena izvajalca}", - tex.part.predmet.izvajalec, - "\\newpage" - ) - } - #--------------------------------------------------------------------------------- - - # SIMBOL CHECK ----------------------------------------------------------------- - #ZNAK "&" v imenu predmeta (NARAVOSLOVNO TEHNIKA) - predmet.ime <- subset(povprecja.predmeti, predmet.sifra == predmet)$ime.predmeta - predmet.ime <- gsub('&', '\\\\&', predmet.ime, fixed = T) - predmet.ime <- gsub('-', '--', predmet.ime, fixed = T) - #-------------------------------------------------------------------------------- - - - tex.report.izvajalec <- c(tex.report.izvajalec, - "\\newpage", - paste("\\chapter{", gsub('_', '\\_', subset(povprecja.predmeti, predmet.sifra==predmet)$ime.predmeta, fixed=T), "}", sep = ""), - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { - part$predmet[[predmet]]$response - }, - tex.parti, "\\newpage", - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot) & - nosilci_soizvajalcev && - !is.null(tex.soizvajalci.predmet)) - { - c("\\section{Ocene soizvajalcev}", - tex.soizvajalci.predmet) - }) - - - } - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec <- - gsub( - pattern = '!naslov!', - replacement = Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), - x = tex.glava - ) - - # Tabele komponent tudijskih programov v katerih sodeluje izvajalec - if (all(part$izvajalec[[izvajalec]]$progPRED != "Ni ocen.") & - all(part$izvajalec[[izvajalec]]$progPO != "Ni ocen.") & - all(part$izvajalec[[izvajalec]]$progIPP != "Ni ocen.")) { - tex.program <- c( - "\\newpage", - "\\chapter{Sumarne ocene tudijskih programov}", - paste( - "Prikazana so Povpreja za ocene komponent - vseh programov, v katerih je izvajalec sodeloval. - Pri vsakem programu so upotevane le ocene tudentov, - ki so v program formalno vpisani. - Izpisi omogoajo primerjave izvajalca s povpreji - odgovarjajoih programov - (posredno so rezultati vkljueni v izraun kvantilnih - rangov predmeta po programih). " - ), - part$izvajalec[[izvajalec]]$progPRED, - part$izvajalec[[izvajalec]]$progPO, - part$izvajalec[[izvajalec]]$progIPP - ) - } else { - tex.program <- c( - "\\newpage", - "\\chapter{Sumarne ocene tudijskih programov}", - "- Zaradi neodgovorov analiza po tudijskih programih, v katerih je izvajalec sodeloval, ni bila narejena. -" - ) - } - # TEST - # e bi eleli vstaviti ocene od katerega drugega pedagoga. - #if (file.exists(paste0('C:/Miha DELO/da.tex'))) { # ali ocene obstajajo (so v mapi) - # tex.poLetih <- scan(paste0('C:/Miha DELO/da.tex'), character(0), sep='\n', quiet=TRUE) - #} else { - # tex.poLetih <- '- Ni podatkov -' - #} - ## //TEST// ## - - # Struktura izpisa za izvajalca (zdruevanje vektorjev in sestava podatkovnega okvirja) - tex.report.izvajalec <- c( - tex.glava.izvajalec, - "\\chapter{Povzetek}", - "\\setlength{\\tabcolsep}{4pt}", - part$izvajalec[[izvajalec]]$povzetek, - "\\newpage", - part$izvajalec[[izvajalec]]$kvantili, - "\\newpage", - "\\setlength{\\tabcolsep}{6pt}", - tex.report.izvajalec, - if (!is.null(tex.praksa)) { - c("\\chapter{tudijska praksa}", - studpraksa$predmet[[izvajalec]][[praksa]]) - }, - "\\newpage", - - "\\setlength{\\tabcolsep}{3pt}", - "\\renewcommand{\\arraystretch}{0}", - # defines vertical spacing of tables - tex.program, - "\\newpage", - tex.okvir.izv, - tex.noga - ) - - - # Outputs the objects, concatenating the representations. - cat(unlist(tex.report.izvajalec), file = paste0("Evalvacija/results/",fakulteta,"/izvajalec_", gsub(".*_([0-9]+).*","\\1",izvajalec),"_", fakulteta, ".tex"), sep = "\n") - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste0("izvajalec_", gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '.tex'), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} -#---------------------------------------- //IZVAJALEC REPORT// ------------------------------------------# - - - - -#---------------------------------------- POVZETEK: SEPERATE REPORT FOR CLECURER ----------------------------------------------# -## NAREDIMO E LOENA POROILA IZVAJALCEV, KI VSEBUJEJO LE POGLAVJE POVZETEK -# Definiramo Glavo dokumenta -tex.glava.povzetek <- scan('Evalvacija/latexkosi/povzetek.glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') -tex.glava.povzetek <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava.povzetek) -# tudijsko leto -tex.glava.povzetek <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava.povzetek) - -# For zanka -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - tex.report.izvajalec.povzetek <- NULL - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec.povzetek <- - gsub( - pattern = '!naslov!', - replacement = Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), - x = tex.glava.povzetek - ) - #------------------------------------------------- - - # Poglavje: Povzetek--------------------------- - tex.report.izvajalec.povzetek <- c( - tex.glava.izvajalec.povzetek, - "\\setlength{\\tabcolsep}{4pt}", - paste("V tabelah so prikazana povpreja na lestvicah, - kjer so tudenti oznaili strinjanje s trditvami, - ki se nanaajo na komponente pedagoke izvedbe - (1 - sploh se ne strinjam, 2 se bolj ne strinjam kot strinjam, - 3 niti se ne strinjam niti se strinjam, 4 se bolj strinjam kot ne strinjam, - 5- popolnoma se strinjam). Vpraalniki so na povezavi - \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povpreja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranno}, - kritino nizka povpreja (1.02.9) pa so obarvana {\\color{BrickRed}rdee}. - Visoka povpreja (4.54.7), kjer je veina tudentov podala oceno - popolnoma se strinjam (5), so obarvana {\\color{Chateau Green}zeleno}, - najvija (4.85.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - V primeru, ko so odgovorile manj kot 4 enote, povpreje ni prikazano, - ampak je navedena pika .. Ocene za povpreja, ki temeljijo na nizkem - tevilu enot (od 4 do 9) ali pa jih spremlja nizka stopnja sodelovanja, - so manj kakovostne, zato so oznaene z enojnim () oziroma z dvojnim oklepajem (()). - Podrobne analize in podrobna metodoloka pojasnila so v celotnem poroilu. - Osnovna metodoloka pojasnila se nahajajo tudi na \\url{http://ul.1ka.si/metodologija}."), - part$izvajalec[[izvajalec]]$povzetek.povzetek - ) - #--------------------------------------------- - - predmet.tex <- NULL - - for (predmet in izvajalci[[izvajalec]]$predmeti) { - # Update 25.10.2019 # - #===================# - # Po novem bomo pri odprtih vpraanjih dodali - # PREDMET ali IZVAJALEC odvisno ali se odgovori - # navezujejo na predemt ali izvajalca (vse z namenom preglednosti) - # Vpraanja, ki se nanaajo na predmet: - # Odprta vpraanja PRedmet - vpr.pred.pros <- c("\\textbf{Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z izvedbo predmeta. (anketa PRED izpitom)}") - # vpr.pred.pros bomo zamenjali z vpr.pred.pros.rep - vpr.pred.pros.rep <- c("\\textbf{PREDMET: Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z izvedbo predmeta.}") - - vpr.pred.cons <- c("\\textbf{Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z izvedbo predmeta. (anketa PRED izpitom)}") - # vpr.pred.cons bomo zamenjali z vpr.pred.cons.rep - vpr.pred.cons.rep <- c("\\textbf{PREDMET: Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z izvedbo predmeta.}") - - - vpr.po.kom <- c("\\textbf{V kolikni meri ste pri predmetu pridobili priakovane kompetence? e elite, lahko odgovor pojasnite. (anketa PO izpitu)}") - vpr.po.kom.rep <- c("\\textbf{PREDMET: V kolikni meri ste pri predmetu pridobili priakovane kompetence? e elite, lahko odgovor pojasnite.}") - - - # odprta vpraanja Izvajalec - vpr.izv.pros <- c("\\textbf{Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z delom izvajalca/ke pri izvedbi predmeta.}") - vpr.izv.pros.rep <- c("\\textbf{IZVAJALEC: Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z delom izvajalca/ke pri izvedbi predmeta.}") - - - vpr.izv.cons <- c("\\textbf{Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z delom izvajalca/ke pri izvedbi predmeta.}") - vpr.izv.cons.rep <- c("\\textbf{IZVAJALEC: Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z delom izvajalca/ke pri izvedbi predmeta.}") - - - # e obstajajo odgovori - if ( length(part$predmet[[predmet]]$text)> 0) { - part$predmet[[predmet]]$text <- gsub(vpr.pred.pros, vpr.pred.pros.rep, part$predmet[[predmet]]$text, fixed = TRUE) - part$predmet[[predmet]]$text <- gsub(vpr.pred.cons, vpr.pred.cons.rep, part$predmet[[predmet]]$text, fixed = TRUE) - part$predmet[[predmet]]$text <- gsub(part$predmet[[predmet]]$text[grepl("V kolikni meri ste pri predmetu pridobili priakovane kompetence", - part$predmet[[predmet]]$text)], - vpr.po.kom.rep, - part$predmet[[predmet]]$text, - fixed = T) - part$izvajalec[[izvajalec]][[predmet]]$text <- gsub(vpr.izv.pros, vpr.izv.pros.rep, part$izvajalec[[izvajalec]][[predmet]]$text, fixed = TRUE) - part$izvajalec[[izvajalec]][[predmet]]$text <- gsub(vpr.izv.cons, vpr.izv.cons.rep, part$izvajalec[[izvajalec]][[predmet]]$text, fixed = TRUE) - - - - predmet.tex[[predmet]] <- c("\\ \\newline", - paste0("{\\Large \\color{red} {\\textbf{", gsub('_', '\\_', subset(povprecja.predmeti, predmet.sifra==predmet)$ime.predmeta, fixed=T), "}}} \\newline \\newline", sep = ""), - part$predmet[[predmet]]$text, "\\ \\newline", - part$izvajalec[[izvajalec]][[predmet]]$text - ) - - } - } - # Update 8.10.2019 # - # K povzetku izvajalca dodamo e interpretacijo v tabelah - tex.report.izvajalec.povzetek <- - c( - tex.report.izvajalec.povzetek, - "\\newpage", - paste0("{\\Large{\\textbf{Odgovori na odprta vpraanja}}} \\newline"), - predmet.tex, - tex.noga) - - # Outputs the objects, concatenating the representations. - cat(unlist(tex.report.izvajalec.povzetek), file = paste("Evalvacija/results/",fakulteta,"/izvajalec_", gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '_povzetek','.tex', sep = ''), sep = '\n') - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste('izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta,'_povzetek', '.tex', sep = ''), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} - -#--------------------------- //SESTAVLJANJE in KOMPILACIJA .tex datotek// ----------------------------------------# - - - - -###################################### -# NAREDIMO PDF POROILO E ZA PREDMETE -###################################### -####################################################################################### -# SESTAVLJANJE in KOMPILACIJA .tex datotek -####################################################################################### -tex.glava <- scan('Evalvacija/latexkosi/a-glava-predmet.tex', character(0), sep='\n', quiet=TRUE,encoding='UTF-8') #encoding='UTF-8' (Ȏ ji) -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) #V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) #Izpis imena leta semestra -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') -Rdirektorij <- getwd() - - -# REPORTI PREDMETOV # -for (predmet in names(predmeti)){ - tex.izvajalci.predmet <- NULL - predmet.temp <- subset(povprecja.predmeti, predmet.sifra==predmet) - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { - tex.part.predmet <- c(part$predmet[[predmet]]$cont, "\\newpage", part$predmet[[predmet]]$krediti, "\\newpage",part$predmet[[predmet]]$kompetence1,"\\newpage", - "\\section{Analiza po programih in letnikih}", part$predmet[[predmet]]$BySmerLetnik, "\\newpage","\\section{Odgovori na odprta vpraanja}", part$predmet[[predmet]]$text) - - - for (izvajalec in as.character(predmeti[[predmet]]$izvajalci)){ - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - tex.part.izvajalecBySmerLetnik <- NULL - } else { - tex.part.predmet.izvajalec <- c("\\subsection{Komponente pedagokega dela}", part$izvajalec[[izvajalec]][[predmet]]$cont, "\\newpage") - tex.part.izvajalecBySmerLetnik <- c('\\subsection{Analiza po smereh in letnikih}', part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik) - } - tex.naslov.izvajalca <- paste('\\section{', izvajalci[[izvajalec]]$ime, '}', sep='') - tex.izvajalci.predmet <- c(tex.izvajalci.predmet, tex.naslov.izvajalca, tex.part.predmet.izvajalec, tex.part.izvajalecBySmerLetnik, "\\newpage") - } - tex.parti <- c("\\newpage", - '\\section{Ocene iz ankete PRED in ankete PO izpitu}', tex.part.predmet - - ) - } - - tex.glava.predmet <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(gsub('_', '\\_', predmet.temp$ime.predmeta[1], fixed=TRUE)), x=tex.glava) - if (predmet.temp$STOPNJA[1]==1) { - stopnjaText <- 'Dodiplomski tudij' - } else if (predmet.temp$STOPNJA[1]==2) { - stopnjaText <- 'Podiplomski tudij' - } else {stopnjaText <- ''} - tex.glava.predmet <- gsub(pattern='\\hfillprostorZaStopnjo - Studija', replacement=Hmisc::latexTranslate(stopnjaText), tex.glava.predmet, fixed=TRUE) - - - tex.report.predmet <- c( - tex.glava.predmet, - "\\newpage", - "\\setlength{\\tabcolsep}{4pt}", - part$predmet[[predmet]]$povzetek, - part$predmet[[predmet]]$kvantili, - "\\newpage", - "\\setlength{\\tabcolsep}{6pt}", - '\\chapter{Podrobne analize}', - part$predmet[[predmet]]$response, - tex.parti, - "\\newpage", - tex.noga - ) - - cat(tex.report.predmet, file=paste("Evalvacija/results/",fakulteta,"/predmet_", predmet,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, sep = '/')) - tools::texi2pdf(file=paste("predmet_", predmet,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) - - -} -# /REPORTI PREDMETOV/ # diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/08_agregati.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/08_agregati.R deleted file mode 100644 index cf44a1932..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/08_agregati.R +++ /dev/null @@ -1,324 +0,0 @@ -# Created by Miha 3.9.2019 - -########################## -# AGREGAT OCEN KOMPONENT # -########################## -#------------------- DESCRIPTION --------------------# -# Ker imamo v primeru Trendov, veliko predmetov, kjer -# pri predmetu v določenem študijskem letu ni bilo -# dovolj odgovor (manj kot štiri), bomo naredili -# AGREGATE, to pomeni, da bomo za vsako zaporedje -# študijskih let, kjer je število odgovorov večje -# kot 4, naredili dodatni stolpec, ki bo agregat -# povprečja skupneg aštevila odgovor za zaporedni -# študijski leti, kjer je vsota odgovorov enaka ali -# večja 4. -# Agegati nastopajo povsod tam, kjer so TRENDI -#----------------- //DESCRIPTION// ------------------# - - -# Priprava podatkov za tabele (barvanje, računanje, okelpaji) -source("Evalvacija/R/funkcije/agregati_funkcije.R", encoding = "UTF-8") -#---------------------------------------------------------------------# - -#------------------------ IMPORT DATA "BREZ CENZURE" -----------------------------# -#' @IMPORTANT!!! iz prejšnjih študijsih let imamo v bazi PRED tudi podatke za -#' # anketo PO, ki pa jih ignoriramo, saj smo naredili ločen izvoz za PO razen -#' za študijsko leto 14/15 ko smo delali še testno. - - -# Agregati za IZVAJALCA (podatki po letih) ------------------------ -ag.izv <- list.files(path = paste0("Evalvacija/results/",fakulteta,"/Agregati"), pattern = "izv") - -# Agregati za PREDMET (Anketa PRED, podatki po letih) ------------- -ag.pred <- list.files(path = paste0("Evalvacija/results/",fakulteta,"/Agregati"), pattern = "pred") - -# Agregati za PREDMET (Anketa PO, podatki po letih) ------------- -ag.po <- list.files(path = paste0("Evalvacija/results/",fakulteta,"/Agregati"), pattern = "po") - - -# PREVERI!!!!!!!!!!! -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path(paste0("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED/Evalvacija/results/",fakulteta,"/Agregati")) - -if (!dir.exists(fpath)){ - output_dir <- paste0("E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED/Evalvacija/results/",fakulteta,"/Agregati") - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - - -# Agregat za Izvajalce # -#=====================# -agr.izv <- - lapply(ag.izv, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - -# Agregat za predmete (PRED) # -#============================# -agr.pred <- - lapply(ag.pred, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - -# Agregat za predmete (PO, KT, KOMEPTENCE IN PRAKSO) # -#====================================================# -agr.po <- - lapply(ag.po, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - -#---------------------- //IMPORT DATA "BREZ CENZURE"// ---------------------------# - - -#------------------ GET DATA FOR AGREGAT PURPOSES -------------------# -# Means, number os answers and ID of all lecturers or courses -# which will be implemented as AGREGATI - -# PRED ------------ -agreg.pred <- lapply(agr.pred, function(x) agregat(x, namen = "PRED")) - - -# PO (inlcuding kompetence, praksa, KT) ----- -agreg.po <- lapply(agr.po, function(x) agregat(x, namen = "PO")) - - -# IPP -------------- -agreg.ipp <- lapply(agr.izv, function(x) agregat(x, namen = "IPP")) -agreg.ipp <- lapply(agreg.ipp, function(x) { - x$NAZIV.PEDAGOGA <- odstNaziv(x$NAZIV.PEDAGOGA) - return(x) -}) - -agreg.ipp <- lapply(agreg.ipp, function(x) { - x$IPP <- paste0(x$NAZIV.PEDAGOGA, " (",x$ime.predmeta ,")") - return(x) -}) - -# IZV ------------- -agreg.izv <- lapply(agr.izv, function(x) agregat(x, namen = "IZV")) -#---------------- //GET DATA FOR AGREGAT PURPOSES// -----------------# - - -#------------------ EXPORT DATA FOR ARHIV -----------------# -# Export into excel according to year -# For Arhiv pruposes and for Latex tables purposes -#' @Update: Now (9.9.2019) we will use this data for -#' trends -library(xlsx) -files <- list(agreg.ipp, agreg.izv, agreg.pred, agreg.po) -name <- c("IPP_agregat", "IZV_agregat", "PRED_agregat", "PO_agregat") -for (i in 1:unique(sapply(files, length))) { - for (ii in 1: length(files)) { - write.xlsx( - x = files[[ii]][[i]], - file = paste0("Agregati data/",name[ii], ".xlsx"), - sheetName = gsub("\\/", "_", unique(files[[ii]][[i]]$leto)), - append = TRUE - ) - } -} -#---------------- //EXPORT DATA FOR ARHIV// ---------------# - -# Ker v študijskem letu nimamo več ene skupne baze -# tudi ni več "N_anket_po_izpitu" ampak "N_anket" -# Da se izognemo dodatnemu delu bomo zato v zadnji -# bazi preimenovali N_anket v N_anket_po_izpitu -# saj bomo podatke v naslednjem koraku združevali -# po letih -# Velja samo za ANKETO PO -imen.c <- function(x) { - ifelse( - !"N_anket_po_izpitu" %in% colnames(x), - colnames(x)[colnames(x) == "N_anket"] <- - "N_anket_po_izpitu", - colnames(x) - ) - return(x) - -} -agreg.po <- lapply(agreg.po, imen.c) - -#------------------- PRAPARE DATA FOR AGREGATION -------------------# -out.pred <- NULL -out.po <- NULL -out.ipp <- NULL -out.izv <- NULL -out.praksa <- NULL - - -# Načeloma imamo za vse namene (PRED, PO, IPP) podatke -# za enako število let, zato v loopu vzamemo kar -# seq_along(agreg.pred) -for (i in seq_along(agreg.pred)) { # Testno delamo za štiri leta, ker imamo trenutno 5 let le za FDV in FGG - # Prepare data for ANKETA PRED --------------------------- - df.pred <- - agreg.pred[[i]][grepl( - "zadovoljstvo_mean|usklajenost_mean|samostojnost_mean|literatura_mean|obvescenost_mean|informiranost_mean|znanje_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime", - colnames(agreg.pred[[i]]) - )] - # Write data - out.pred[[i]] <- df.pred - # Rbind in data frame with years - agregati.pred <- do.call("rbind", out.pred) - - # Prepare data for ANKETA PO --------------------------- - df.po <- - agreg.po[[i]][grepl( - "vsebine_mean|naloge_mean|kriteriji_mean|kompetence_mean|krediti_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime", - colnames(agreg.po[[i]]) - )] - # Write data - out.po[[i]] <- df.po - # Rbind in data frame with years - agregati.po <- do.call("rbind", out.po) - - # Prepare data for ANKETA PRED IPP --------------------------- - df.ipp <- - agreg.ipp[[i]][grepl( - "kakovost_mean|pripravljenost_mean|razumljivost_mean|zanimivost_mean|kriticnost_mean|korektnost_mean|znanje_mean|\\|ime.predmeta|NAZIV.PEDAGOGA|izvajalec.sifra|leto|IPP", - colnames(agreg.ipp[[i]]) - )] - # Write data - out.ipp[[i]] <- df.ipp - # Rbind in data frame with years - agregati.ipp <- do.call("rbind", out.ipp) - - # Prepare data for ANKETA PRED IZVAJALEC --------------------------- - df.izv <- - agreg.izv[[i]][grepl( - "kakovost_mean|pripravljenost_mean|razumljivost_mean|zanimivost_mean|kriticnost_mean|korektnost_mean|znanje_mean|\\|ime.predmeta|predmet.sifra|NAZIV.PEDAGOGA|izvajalec.sifra|leto", - colnames(agreg.izv[[i]]) - )] - # Write data - out.izv[[i]] <- df.izv - # Rbind in data frame with years - agregati.izv <- do.call("rbind", out.izv) - - # UPDATE 18.10.2019 ----------------------------------- - # Po novem zapišemo še študijsko prakso - - df.praksa <- - agreg.po[[i]][grepl( - "ponudba_mean|pomoč_mean|navodila_mean|korist_mean|učinkovitost_mean|strokovnost_mean|podpora_mean|primernost_mean|dolzina_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime|PRAKSA", - colnames(agreg.po[[i]]) - )] - # Write data - out.praksa[[i]] <- df.praksa - # Rbind in data frame with years - agregati.praksa <- do.call("rbind", out.praksa) - -} - -#----------------- //PRAPARE DATA FOR AGREGATION// -----------------# - - -# x <- agregati.pred %>% -# split(agregati.pred$ime.predmeta, agregati.pred$leto) -# x <- x[["BP Zgodovina mednarodnih odnosov"]] - -# Split evaluations for courses/elcturer by predmet šifra - -# x <- x[["BP Retorika javnih diskurzov"]] -# x <- x[["BP Televizijsko novinarstvo in novi mediji"]] -# x <- agregati.pred %>% -# split(agregati.pred$ime.predmeta, agregati.pred$leto) -# x <- x[["BD Drugi tuji strokovni jezik I: angleščina"]] - - -# Podatke v listu bomo za potrebe trendov -# najprej ločili glede na šifro predmeta in/ali šifro izvajalca -#' na ločenih podatkih naredili kombinacijo (glej funkcijo @kolone) -# in nato vse skupaj združili. -#' Funkcija @kolone poleg podatkovneg okvirja vrne tudi -# stolpec oz. column po imenu "stolpec", kjer -# vrednost "Stolpec 1" pomeni, da bomo v lateh naredili -# nov stolpec, kamor bomo zapisali vrednost povprečja ter -# "Stolpec 2" pomeni, da bomo naerdili ŠE en dodaten stolpec -# v latex tabeli. -# Če je verdnost NA, pomeni, da bomo predmet zapisali samo v en stolpec - -# Anketa RPED -agregati.pred <- agregati.pred %>% - split(agregati.pred$ime.predmeta, agregati.pred$leto) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - - -# Ko naredimo merg se leta podvojijo, kar pa -# za potrebe Agregatov ne želimo -agregati.pred$LETA <- agregati.pred$leto - -# Anketa PO -agregati.kom <- agregati.po[grepl("predmet.ocena.kompetence_mean|N_anket_po_izpitu|ime.predmeta|leto", colnames(agregati.po))] -agregati.KT <- agregati.po[grepl("predmet.ocena.krediti_mean|N_anket_po_izpitu|ime.predmeta|leto", colnames(agregati.po))] - - -agregati.po <- agregati.po %>% - # V anketi Po se skupno povprečje računa brez kompetenc in kT - select(-c('predmet.ocena.kompetence_mean',"predmet.ocena.krediti_mean")) %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.po$ime.predmeta, agregati.po$leto) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - - -agregati.po$LETA <- agregati.po$leto - -# Agregati Kopmetence -agregati.kom <- agregati.kom %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.kom$ime.predmeta, agregati.kom$leto) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) -agregati.kom$LETA <- agregati.kom$leto - -# Agregati Kreditne točke -agregati.KT1 <- agregati.KT %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.KT$ime.predmeta, agregati.KT$leto) %>% - lapply(., function(x) kolone(x, KTtrend = TRUE)) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.KT1$LETA <- agregati.KT1$leto - -agregati.KT <- agregati.KT %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.KT$ime.predmeta, agregati.KT$leto) %>% - lapply(., function(x) kolone(x, KTtrend = TRUE)) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) -# Anketa IPP -agregati.ipp <- agregati.ipp %>% - split(agregati.ipp$IPP, agregati.po$leto) %>% - .[sapply(., nrow) > 0] %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.ipp$LETA <- agregati.ipp$leto - -# Anketa IZV -agregati.izv <- agregati.izv %>% - split(agregati.izv$izvajalec.sifra) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.izv$LETA <- agregati.izv$leto - -# ŠTUDIJSKA PRAKSA -agregati.praksa <- subset(agregati.praksa, PRAKSA == 1) -agregati.praksa <- agregati.praksa %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.praksa$ime.predmeta, agregati.praksa$leto) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -agregati.praksa$LETA <- agregati.praksa$leto diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/09_0_agregati_trendi_izv_priprava.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/09_0_agregati_trendi_izv_priprava.R deleted file mode 100644 index 165cf6ad9..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/09_0_agregati_trendi_izv_priprava.R +++ /dev/null @@ -1,340 +0,0 @@ -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - -#--------------------------------- TRENDI IN AGREGATI --------------------------------------# -# 26.8.2019 # Updated on 12.9.2019 -# We will also insert: trendi za izvajalce (članica), predmete, IPP) -# Import data -# IMPORT DATA -----------------------------------------------------# -# Check all files that match desired pattern -files.F.tr <- - list.files(path = paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/"), - pattern = paste0("^Excel rezultati_", fakulteta, "(.)")) -# For importing excel files we will use new package -library(rio) # import -# Najprej preverimo koliko zavihkov imamo oziroma ali ima članica tudi podatke -# za študijsko prakso ali ne -nmb.sheet <- lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x))) - -# Trendi za Izvajalce -trendi.F.izv <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 1)) -# Trendi za Izvajalce pri predmetih -trendi.F.ipp <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 2)) -# Trendi za predmete: ANKETA PRED -trendi.F.pred <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 3)) -# Trendi za predmete: ANKETA PO -trendi.F.po <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 4)) -# Trendi študijskih praks: ANKETA PO -if(length(nmb.sheet) > 4) { -trendi.F.praksa <- - lapply(files.F.tr, function(x) - import(paste0("Evalvacija/results/",fakulteta,"/Agregati/Agregati data/", x), which = 5)) -} - -# ADD COLUM NAMES FOR merging purposes -for (i in seq_along(trendi.F.ipp)){ - colnames(trendi.F.izv[[i]])[1] <- "Izvajalec" - colnames(trendi.F.ipp[[i]])[1] <- "IPP" - colnames(trendi.F.pred[[i]])[1] <- "Predmeti" - colnames(trendi.F.po[[i]])[1] <- "Predmeti" - if(length(nmb.sheet) > 4) { - colnames(trendi.F.praksa[[i]])[1] <- "Predmeti" - } -} -trendi.F.KT <- trendi.F.po -trendi.F.com <- trendi.F.po -# Prepare each data frame for Latex tables -# V letih 2014/15 ko smo delali le za FDV in FGG pri -# šifri izvajalca še nismo imeli 3000021_FDV_, zato to -# DODAMO le v primeru FDV in FGG -if (fakulteta == "FDV") { - # Izvajalci - trendi.F.izv[[1]]$`Izvajalec id` <- - paste0("3000021_FDV_", trendi.F.izv[[1]]$`Izvajalec id`) - # Ipp - trendi.F.ipp[[1]]$`Izvajalec id` <- - paste0("3000021_FDV_", trendi.F.ipp[[1]]$`Izvajalec id`) -} else if (fakulteta == "FGG") { - trendi.F.izv[[1]]$`Izvajalec id` <- - paste0("3000026_FGG_", trendi.F.izv[[1]]$`Izvajalec id`) - # Ipp - trendi.F.ipp[[1]]$`Izvajalec id` <- - paste0("3000026_FGG_", trendi.F.ipp[[1]]$`Izvajalec id`) -} - - -############# -# IZVAJALCI # -############# -# Združimo ocene iz različnih let -trendi.F.izv <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = "Izvajalec id", all = T), trendi.F.izv)) -# Označimo izvajalce, ki v določenem letu niso poučevali ("--"), -# v primeru nizkega števila odgovorov dodamo oklepaje in k oceni -# ter obarvamo vrednosti v skladu z metodološkim pojasnilom -trendi.F.izv <- poucNIpouc(trendi.F.izv) -# zberemo podatke, ki jih bomo prikazali v latex tabeli -trendi.F.izv <- - trendi.F.izv[grepl("Izvajalec id|Izvajalec\\.|Izvajalec|SKUPAJ", colnames(trendi.F.izv))] -# Prvi stolpec, ki predstavlja imena izvajalcev ustrezno uredimo za -# potrebe latex tabele: NA v posamezni celici nadomestimo z imenom, ki -# pripada ID izvajalca -# Dobimo zadnje ime (naslov izvajalca) -# Za ime izvajalca vzamemo zadnji stolpec, ker so to imena izvajalcev -# za zadnje leto (po letih so se lahko nazivi izvajalcev spreminjali) -izvajalecIme <- - trendi.F.izv[grepl("Izvajalec\\.|Izvajalec$", colnames(trendi.F.izv))] -# Zberemo zadnja imena izvajalcev -izvajalecIme <- izvajalecIme %>% - select(length(izvajalecIme), everything()) -# Odstranimo manjkajoča imena -trendi.F.izv$izvajalci <- - apply(izvajalecIme, 1, function(x) - na.omit(x)[1]) -# Za potrebe latex tabele -trendi.F.izv <- - trendi.F.izv[grepl("Izvajalec id|\\|SKUPAJ", - colnames(trendi.F.izv))] -# Uredimo vrstni red, ad bodo imena v prvi vrstici v Latex tabeli -trendi.F.izv <- trendi.F.izv %>% - dplyr::select(izvajalci, everything()) - -# Update 17.9.2019 -# Po novem vsem izvajalcem odstranimo nazive -trendi.F.izv$izvajalci <- odstNaziv(trendi.F.izv$izvajalci) -# Trende povežemo z agregati -ag.trendov.ivz <- - merge( - trendi.F.izv, - agregati.izv, - by.x = "Izvajalec id", - by.y = "izvajalec.sifra", - all.x = TRUE - ) - -# UPDATE 11.10.2019!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -# Tale del potrebujemo ko delamo trende za INDIIVIDUALNE IZPISE -# Ko delamo izpise za FAkulteto Izvajalec id ne potrebujemo -# Tole ap potrebujemo zato, ker bomo rabili id izvajalca -# za potrebe generiranja loopa (poročila za posameznega -# izvajalca) -# Izvajalec indiividualno -ag.tred.ivz.ind <- - ag.trendov.ivz[grepl("Izvajalec id|izvajalci|SKUPAJ|leto", colnames(ag.trendov.ivz))] -# # Fakulteta -# ag.trendov.ivz <- -# ag.trendov.ivz[grepl("izvajalci|SKUPAJ|leto", colnames(ag.trendov.ivz))] -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti -ag.trendov.ivz <- ag.trendov.ivz[!is.na(ag.trendov.ivz$izvajalci), ] - - -########################### -# IZVAJALCI PRI PREDMETIH # -########################### -# Prepare each data frame for Latex tables -# FDV ima za isto šifro predmeta različne izvedbe in imena. Tako je enkrat -# Tak predmeet izredna izvedba spet drugič (drugo leto) je to redna izvedba -# Tako je težko povezati izvajalce pri predmetu. -# Krr podtke mrgamo po imenih IPP, bomo prepone nazive po posaemznih letih -# izvajalcev odstranili. -trendi.F.ipp <- lapply(trendi.F.ipp, function(x) { - x$IPP <- odstNaziv(x$IPP) - return(x) -}) - -trendi.F.ipp <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.ipp)) -# Označimo izvajalce, ki v določenem letu niso poučevali - -trendi.F.ipp <- poucNIpouc(trendi.F.ipp, namen = "Izvajalec id") - -# Za potrebe trendov individualno -ipp.indivud <- trendi.F.ipp - - -trendi.F.ipp <- - trendi.F.ipp[grepl("št. vpisanih|št. odgovorov|IPP|SKUPAJ", colnames(trendi.F.ipp))] -#For latex tables we only want to have Total average for each year -ag.trendov.ipp <- - merge(trendi.F.ipp, agregati.ipp, by.x = "IPP", all.x = TRUE) -ag.trendov.ipp <- - ag.trendov.ipp[grepl("št. vpisanih|št. odgovorov|IPP|SKUPAJ|leto|stolpec", colnames(ag.trendov.ipp))] -# Create latex Table - - -####################### -# ANKETA PRED IZPITOM # -####################### -# Prepare each data frame for Latex tables -trendi.F.pred <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.pred)) - -trendi.F.pred <- poucNIpouc(trendi.F.pred, namen = "Predmet id") - -## Predmeti individualno (trendi komponent na nivoju posameznega predmeta) -pred.indivud <- trendi.F.pred - -# For latex tables we only want to have Total average for each year -trendi.F.pred <- - trendi.F.pred[, grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ", colnames(trendi.F.pred))] -# Združimo trende z agregati -ag.trendov.pred <- - merge( - trendi.F.pred, - agregati.pred, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) -ag.trendov.pred <- - ag.trendov.pred[grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.pred))] -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti - - -#################### -# ANKETA PO IZPITU # -#################### -# Prepare each data frame for Latex tables -trendi.F.po <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.po)) -trendi.F.po <- poucNIpouc(trendi.F.po, namen = "Predmet id") -# Za potrebe trendov individualno -po.indivud <- trendi.F.po - -# For latex tables we only want to have Total average for each year -trendi.F.po <- - trendi.F.po[, grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ", colnames(trendi.F.po))] -#For latex tables we only want to have Total average for each year -ag.trendov.po <- - merge( - trendi.F.po, - agregati.po, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) -ag.trendov.po <- - ag.trendov.po[grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.po))] -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti - - -############## -# KOMPETENCE # -############## -trendi.F.com <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.com)) -# Za potrebe barvanja in urejanja povprečij, vrednosti v stolpcih "SKUPAJ" nadomestimo z -# vrednostmi iz stolpcev " Komeptence" saj delamo tabelo trendov kompetenc -trendi.F.com[grepl("SKUPAJ", colnames(trendi.F.com))] <- - trendi.F.com[grepl("Kompetence", colnames(trendi.F.com))] -trendi.F.com <- poucNIpouc(trendi.F.com, namen = "Predmet id") - -# For latex tables we only want to have Total average for each year -trendi.F.com <- - trendi.F.com[, grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ", colnames(trendi.F.com))] -#For latex tables we only want to have Total average for each year -ag.trendov.kom <- - merge( - trendi.F.com, - agregati.kom, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) -ag.trendov.kom <- - ag.trendov.kom[grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.kom))] -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti - - - -########### -# KREDITI # -########### -trendi.F.KT <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.KT)) - -trendi.F.KT[grepl("SKUPAJ", colnames(trendi.F.KT))] <- - trendi.F.KT[grepl("Ustreznost", colnames(trendi.F.KT))] - -trendi.F.KT <- - poucNIpouc(trendi.F.KT, namen = "Predmet id", krediti = TRUE) - -# For latex tables we only want to have Total average for each year -trendi.F.KT <- - trendi.F.KT[, grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ", colnames(trendi.F.KT))] -#For latex tables we only want to have Total average for each year -ag.trendov.KT <- - merge( - trendi.F.KT, - agregati.KT, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) -ag.trendov.KT <- - ag.trendov.KT[grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ|leto|stolpec", colnames(ag.trendov.KT))] -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti - - - -# Update 18.10.2019 -#==================# -# Študijska praksa # -#==================# -# Prepare each data frame for Latex tables -if(length(nmb.sheet) > 4) { -trendi.F.prakse <- - suppressWarnings(Reduce(function(x, y) - merge(x, y, by = 1, all = T), trendi.F.praksa)) -trendi.F.prakse <- poucNIpouc(trendi.F.prakse, namen = "Predmet id") - -praksa.indivud <- trendi.F.prakse -# For latex tables we only want to have Total average for each year -trendi.F.prakse <- - trendi.F.prakse[, grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ", colnames(trendi.F.prakse))] -#For latex tables we only want to have Total average for each year -ag.trendov.prakse <- - merge( - trendi.F.prakse, - agregati.praksa, - by.x = "Predmeti", - by.y = "ime.predmeta", - all.x = TRUE - ) -ag.trendov.prakse <- - ag.trendov.prakse[grepl("št. vpisanih|št. odgovorov|Predmeti|SKUPAJ|leto|stolpec|PRAKSA", colnames(ag.trendov.prakse))] -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti -} else { - ag.trendov.prakse <- NULL -} -#--------------------------------------- TRENDI IN AGREGATI ---------------------------------------# \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/09_1_PDF_agregati_trendi_izv.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/09_1_PDF_agregati_trendi_izv.R deleted file mode 100644 index bfa2f2516..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/09_1_PDF_agregati_trendi_izv.R +++ /dev/null @@ -1,1099 +0,0 @@ -# TRENDI ZA IZVAJALCA # - -# Update 11.10.2019 # -#---------------------------- OPIS --------------------------------# -# Po novem želimo agregate dodati tudi k trendom izvajalca -# Ker trenutna koda "kodaPDF_trendi_habilitacijska" ni -# prilagojena za to bomo naredili na novo in podatke povlekli -# iz agregatov za fakulteto - -# Da lahko podatke oz pripravljene agregate povežemo za posameznega -# pedagoga moramo najprej pridobiti vse šifre pdegaogov in imena -# predmetov, ki jih poučujejo. V ta namen bomo poadtke pridobili iz -# ag.trendov.ipp, kjer so zapisani izvajalci in predmeti, ki jih -# poučujejo. -# ag.trendov.ipp definiramo v skripti "010_kodaPDF_fakulteta.r" - -# UPDATE: Poleg agregatov želimo imeti tudi respons rate torej -# število vpisanih in število odgovorov, kar bomo zapisali -# v latex tabele - -# Vse predmete, ki so praksa bomo izpisovali v ločeni tabeli -# in ne skupaj s predmeti. -#-------------------------- //OPIS// ------------------------------# - -# HABILITACIJSKO POROČILO ZA IZVAJALCA # -# Update 22.12.2019 # -#---------------------------- OPIS 2 --------------------------------# -# Koda bo skrbela za izdelavo dveh poročil, in sicer poročilo -# trendov izvajalca in poročilo za habilitacijsko komisijo -# Sta skoraj identični poročili, le da pri habilitacijskih poročilih -# izpišemo tabele le z ocenami za IPP (izvajalca pri predmetih). Dodatno -# Pa za vsagega IPP prikažemo še odgovore na odprta vprašanja, kar -# pri trendih ne prikažemo -# S spodnjim vektoorjem opredelimo tip poročila -habilitacija <- TRUE -# Ločimo še poimenovanje pdf datoteke (vektor je na koncu skripte) -if (habilitacija == TRUE) { - trhab <- "_habilitacija" -} else { - trhab <- "_trendi" -} -#-------------------------- //OPIS 2// ------------------------------# - - -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVLAVACIJE 2018_2019 UPDATED") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVLAVACIJE 2018_2019 UPDATED" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - -#-------------- Odprti odgovori Habilitacijska komisija ----------------# -# Podatke, ki jih preberemo pridobimo iz leta 2017/18 ko smo -# vse komentarje iz prenšnjih elt združili v eno bazo -# V tej bazi se torej nahajajo vsi komentarji do študijskega -# leta 2017/18 -# Za letošnje študijsko leto 18/19 pa bomo za vsako -# članico komentarje zapisali v svojo bazo. -# Na koncu pa bomo obe bazi združili glede na izvajalca in predmet. - -# Vsi komentarji izvajalca do 17/18 -izv.koment.stari <- - read.csv2( - paste0( - "Evalvacija/results/", - fakulteta, - "/Trendi/zdruzeno.izvajalci.csv" - ), - header = TRUE, - stringsAsFactors = FALSE - ) -# Zberemo samo stolpce, ki jih potrebujemo -izv.koment.stari <- - subset( - izv.koment.stari, - select = c( - leto, - PREDMET, - izvajalec.sifra, - izvajalec.komentar.dobro, - izvajalec.komentar.slabo - ) - ) - - -# Komentarji 18/19 -izv.koment.tekoc <- -read.csv2( - paste0( - "Evalvacija/results/", - fakulteta, - "/Trendi/izvajalci.komentarji.csv" - ), - header = TRUE, - stringsAsFactors = FALSE -) - -# Zberemo samo stolpce, ki jih potrebujemo -izv.koment.tekoc <- - subset( - izv.koment.tekoc, - select = c( - leto, - PREDMET, - izvajalec.sifra, - izvajalec.komentar.dobro, - izvajalec.komentar.slabo - ) - ) - -# "Združimo" -izv.koment <- rbind(izv.koment.stari, izv.koment.tekoc) -#------------ //Odprti odgovori Habilitacijska komisija// --------------# - - -# Priprava podatkov za agregate -source("Evalvacija/R/09_0_agregati_trendi_izv_priprava.R") - - -#-------------- OBLIKOVANJE ŠIFRANTA ZA NOVE TRENDE IN HABILITACIJSKO -------------# -# Najprej iz ag.trendov.ipp pridobimo podatke o izvajalcih -# in predmetih pri katerih sodelujejo ali so sodelovali - -# IPP individualno -IPP.indivud <- ag.trendov.ipp -#rownames(IPP.indivud) <- make.unique(ag.trendov.ipp$IPP) -ag.trendov.ipp$IPP <- NULL -# Odsranimo manjkajoce izvasjalce, ki ne poucujejo vec -IPP.indivud <- subset(IPP.indivud, !is.na(IPP)) -# Pridobimo podatke o imenu izvajalca, brez naziva (naziv smo odstranili predhodno) -IPP.name <- str_extract(IPP.indivud$IPP, "[^(]*") -IPP.name <- sub("\\s+$", "", IPP.name) -# Dodamo ime k podatkov za potrebe kasnejšega loopa -# in izpisa podatkov v latex tabeli za posameznega izvajalca -IPP.indivud$izvajalci <- IPP.name - -# Potrebuje še ločeno ime predmetov -IPP.name.pred <- - unlist(regmatches( - IPP.indivud$IPP, - gregexpr("(?<=\\().+",IPP.indivud$IPP, perl = T) - )) -# Odstranimo še zadnji oklepaj (npr v primeru predmetov -# ki so poimenovani tako (BD Praktikum (60 ur) MO) -IPP.name.pred <- sub("\\)$", "", IPP.name.pred) -# Dodamo še imena predmetov in stem dobimo -# tudi šifrant izvajalcev, in predmetov -IPP.indivud$Predmeti <- IPP.name.pred - -# Za konec rabimo še šifre izvajalcev, saj bomo loop naredili glede na ID izvajalca -# Podatke o ID izvajalcu bomo pridobili iz ag.trendov.ivz, ki je definiran -# v skripti "010_kodaPDF_fakulteta.r" -IPP.ind <- - merge( - IPP.indivud, - ag.trendov.ivz[c("izvajalci", "Izvajalec id")], - by = "izvajalci", - all = TRUE, - sort = FALSE - ) - IPP.ind <- dplyr::distinct(IPP.ind) - -#------------ //OBLIKOVANJE ŠIFRANTA ZA NOVE TRENDE IN HABILITACIJSKO// -----------# - - -#---------------------------------- PRIPRAVA PODATKOV ZA LATEX TABELE --------------------------------------# -# Najprej pripravimo podatke za izvajalca (za izvajalca pri predmetu smo -# podatke pripravili zgoraj, ko smo oblikovali šifrant) - -#=================# -# OCENE IZVAJALCA # -#=================# -# (Anekta PRED)-------------------- -ag.tred.ivz <- - ag.trendov.ivz[grepl("izvajalci|SKUPAJ|leto", colnames(ag.trendov.ivz))] -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti -ag.tred.ivz <- ag.tred.ivz[!is.na(ag.tred.ivz$izvajalci), ] -# Pripravimo podatke za potrebe latex tabele (agregati,) -ag.tred.ivz <- prepare.agregati(ag.tred.ivz, - agregTip = "izvajalci", habiliTrend = TRUE) - -# Dodamo še ID izvajalca za potrebe loopa (tj. izdelave individualnega poročila) -# trendov) -ag.tred.izvajalec <- - merge( - ag.tred.ivz, - IPP.ind[c("izvajalci", "Izvajalec id")], - by.x = "row.names", - by.y = "izvajalci", - all.x = TRUE - ) -# Odstranimo podvojene vrednosti, ki nastanejo zaradi -# merga -ag.tred.izvajalec <- - ag.tred.izvajalec[!duplicated(ag.tred.izvajalec$"Izvajalec id"), ] -#---------------------------------# - - -#================# -# OCENA PREDMETA # -#================# -# ANKETA PRED # -#=============# -# Predmet ANKETA PRED-------------------- -# K predmetov dodamo še šifro izvajalca za potrebe loopa -ag.tred.pred <- - merge(ag.trendov.pred, IPP.ind[c("izvajalci", "Izvajalec id", "Predmeti", "IPP")], by = "Predmeti", all.x = TRUE) -#----------------------------# - -# ANKETA PO # -#============ -# Predmet ANKETA PO-------------------- -ag.tred.po <- - merge(ag.trendov.po, IPP.ind[c("izvajalci", "Izvajalec id", "Predmeti", "IPP")], by = "Predmeti", all = TRUE) - -# Kompetence ----------- -ag.tred.kom <- - merge(ag.trendov.kom, IPP.ind[c("izvajalci", "Izvajalec id", "Predmeti")], by = "Predmeti", all = TRUE) - -# Ustreznot kreditnih točk ----------- -ag.tred.KT <- - merge(ag.trendov.KT, IPP.ind[c("izvajalci", "Izvajalec id", "Predmeti")], by = "Predmeti", all = TRUE) - - -#========================# -# OCENA ŠTUDIJSKIH PRAKS # -#========================# -if (!is.null(ag.trendov.prakse)) { -ag.tred.praksa <- - merge(ag.trendov.prakse, IPP.ind[c("izvajalci", "Izvajalec id", "Predmeti")], by = "Predmeti", all.x = TRUE) - - -#-------------------------------------------------- - -#-------------------------------- //PRIPRAVA PODATKOV ZA LATEX TABELE// ------------------------------------# -# Ocene Študijskih praks iz ocen predmetov izločimo, saj jih bomo v PDF poročiluh priakzovali ločeno -ag.tred.pred <- - subset(ag.tred.pred,!(Predmeti %in% ag.tred.praksa$Predmeti)) -ag.tred.po <- - subset(ag.tred.po,!(Predmeti %in% ag.tred.praksa$Predmeti)) -ag.tred.kom <- - subset(ag.tred.kom,!(Predmeti %in% ag.tred.praksa$Predmeti)) -ag.tred.KT <- - subset(ag.tred.KT,!(Predmeti %in% ag.tred.praksa$Predmeti)) -# Izvajalci, ki so sodelovali pri praksi -IPP.praksa <- IPP.ind -IPP.ind <- subset(IPP.ind,!(Predmeti %in% ag.tred.praksa$Predmeti)) -# -} - - -#------------ PRIPRAVA PODATKOV ZA POSAMEZNEGA IZVAJALCA -------------# -# Začnemo z LOOP oz pripravo poročil za posameznega izvajalca -# Trend in agregati za posameznega izvajalca -tr.ag.izv <- NULL -tex.report.izvajalec.povzetek <- NULL -# Poglavje 2 oziroma loop po posameznih rpedemtih -predmeti.tex <- NULL -praksa.tex <- NULL -# Loop za vse unikatne izvajalce (+ odstranimo morebitne manjkajoče) -#t <- c( "3000021_FDV_666", "3000021_FDV_321", "3000021_FDV_722") -for (izvajalec in unique(IPP.ind$`Izvajalec id`[!is.na(IPP.ind$`Izvajalec id`)])) { - #izvajalec = "3000018_FF_1618" - #izvajalec = "3000021_FDV_722" - #3000021_FDV_2115 - #==================================================================# - #' @POGLAVJE @I Povzetek trendov za izvajalca in njegove predmete # - #==================================================================# - # v vseh poročilih vedno najprej predstavimo podatke o predmetu - # tokrat pa bomo zaradi imen (k predmetom je potrebno dodati ustrezna - # imena izvajalcev da lahko povežemo predmete za poročilo posameznega - # izvajalca hkrati pa moreamo upoštevati tudi, da obstaja verjetnost - # izvajalec v določenem letu ni poučeval in torej ne sme dobiti - # ocene v tem letu) - #---------- IZVAJALEC PRI PREDMETIH (ANKETA PRED) -----------# - izv.IPP <- subset(IPP.ind, `Izvajalec id` == izvajalec) - izv.IPP1 <- - izv.IPP[grepl("IPP|SKUPAJ|leto|stolpec", colnames(izv.IPP))] - # LAtex tabela - izv.IPP.tex <- prepare.agregati( - izv.IPP1, - agregTip = "IPP", - imetabele = "Povprečja za agregirane ocene sedmih komponent - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)" - ) - - # Preverimo še ali je izvajalec pri predmetu poučeval ali ne - izv.IPP2 <- - izv.IPP[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(izv.IPP))] - izv.IPP2 <- izv.IPP2 %>% - select(Predmeti, everything()) - # V kolikor je pri oceni skupaj NA potem izvajalec ni poučeval - # in moramo to ustrezno označit - izv.IPP2[,ncol(izv.IPP2)-3] <- ifelse(is.na(izv.IPP2[,ncol(izv.IPP2)-3]), "--", izv.IPP2[,ncol(izv.IPP2)-3]) - - - ipp.pouc <- prepare.agregati( - izv.IPP2, - agregTip = "Predmeti", - imetabele = "Povprečja za agregirane ocene sedmih komponent - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)", - habiliTrend = TRUE - ) - # # Vsi predemti izvajalca torej predmeti pri katerih - # # je ali še izvajalec sodeluje - # # Le da v kolikor ni sodeloval ocene ni - # # Te podatke bomo nato povezali z ocenami predemtov, - # # da dobimo relano sliko katero leto je in katero leto - # # izvajalec ni poučeval - # # torej, da izvajale cpo nepotrebnem ne bo dobival - # # ocen predmeta če v študijskem letu ni sodeloval - ipp.pouc <- ipp.pouc %>% - tibble::rownames_to_column(., "Predmeti") - # - - # Izvajalec pri predmetu - tr.ag.izv[[izvajalec]]$IPP <- izv.IPP.tex - #-------- //IZVAJALEC PRI PREDMETIH (ANKETA PRED)// ---------# - - - - #------------------------ ANKETA PRED -------------------------# - # Data for izvajalec - izv.pred <- subset(ag.tred.pred, `Izvajalec id` == izvajalec) - # Prepare data for Latex tables - izv.pred <- - izv.pred[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(izv.pred))] - - # Če obstajajo agregati želimo v Latex tabeli trendov - # to primerno označiti - izv.pred.pouc <- prepare.agregati( - izv.pred, - agregTip = "Predmeti", - imetabele = "Povprečja za agregirane ocene šestih komponent - \\textbf{predmeta} (anketa PRED izpitom)", - habiliTrend = T - ) - izv.pred.pouc <- izv.pred.pouc %>% - tibble::rownames_to_column(., "Predmeti") - - - - izv.pred.pouc <- merge(izv.pred.pouc, ipp.pouc, by = "Predmeti", all = FALSE) - - # Preverimo ali je izvajalec pri predmetu sodeloval - poucPredet <- function(x) { - x1 <- x[grepl(".x", colnames(x))] - y1 <- x[grepl(".y", colnames(x))] - - # Preverimo ali je izvajalec poučeval ali ni - ind <- y1 == "--" - #ind1 <- y1 == "." - # Če ni to zapišemo tudi v predmet - x1[ind] <- "--" - #x1[ind1] <- "." - x[colnames(x1)] <- x1 - x <- x[grepl("Predmeti|.x", colnames(x))] - colnames(x) <- gsub(".x", "", colnames(x)) - return(x) - } - - izv.pred.pouc <- poucPredet(izv.pred.pouc) - rownames(izv.pred.pouc) <- izv.pred.pouc$Predmeti - izv.pred.pouc$Predmeti <- NULL - izv.pred.pouc.tex <- tb.lat( - izv.pred.pouc, - tabname = "Povprečja za agregirane ocene šestih komponent - \\textbf{predmeta} (anketa PRED izpitom)", - "A{8cm}", - namen = "TRENDI", - Agregati = TRUE - ) - - - # Anketa pred izvajalec - tr.ag.izv[[izvajalec]]$pred <- izv.pred.pouc.tex - #---------------------- //ANKETA PRED// -----------------------# - - #------------------------ ANKETA PO -------------------------# - # Anketa PO------------------------------ - izv.po <- subset(ag.tred.po, `Izvajalec id` == izvajalec) - # Izberemo podatke, ki jih želimo urediti in prikazati v - # Latex tabeli - izv.po <- - izv.po[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(izv.po))] - - # Preverimo ali je v določenem študijskem letu izvajalec pri tem predmetu - # sodeloval oziroma poučeval, če ne želimo da dobi podatke o predmetu - izv.po.pouc <- prepare.agregati( - izv.po, - agregTip = "Predmeti", - imetabele = "", - habiliTrend = T - ) - izv.po.pouc <- izv.po.pouc %>% - tibble::rownames_to_column(., "Predmeti") - - izv.po.pouc <- merge(izv.po.pouc, ipp.pouc, by = "Predmeti", all = FALSE) - - izv.po.pouc <- poucPredet(izv.po.pouc) - rownames(izv.po.pouc) <- izv.po.pouc$Predmeti - izv.po.pouc$Predmeti <- NULL - # V kolikor ni podatkov za agregatov, torej - # stolpec Povp. a ali Povp. b povsod == "." - # potem dodatnega stolpca v latex tabeli ne - # želimo prikazati - if(all(izv.po.pouc$`Povp. a` == ".")) { - izv.po.pouc$`Povp. a` <- NULL - } - - izv.po.tex <- tb.lat( - izv.po.pouc, - tabname = "Povprečja za agregirane ocene treh komponent - \\textbf{predmeta} (anketa PO izpitu)", - "A{8cm}", - namen = "TRENDI", - Agregati = TRUE - ) - - - # Anketa PO izvajalec - tr.ag.izv[[izvajalec]]$po <- izv.po.tex - #-------------------------------------# - - # Kompetence---------------------- - izv.komp <- subset(ag.tred.kom, `Izvajalec id` == izvajalec) - # Izberemo podatke, ki jih želimo urediti in prikazati v - # Latex tabeli - izv.komp <- - izv.komp[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(izv.komp))] - - # Preverimo ali je v določenem študijskem letu izvajalec pri tem predmetu - # sodeloval oziroma poučeval, če ne želimo da dobi podatke o predmetu - izv.komp <- prepare.agregati( - izv.komp, - agregTip = "Predmeti", - imetabele = "", - habiliTrend = T - ) - izv.komp <- izv.komp %>% - tibble::rownames_to_column(., "Predmeti") - - izv.komp <- merge(izv.komp, ipp.pouc, by = "Predmeti", all = FALSE) - - izv.komp <- poucPredet(izv.komp) - rownames(izv.komp) <- izv.komp$Predmeti - izv.komp$Predmeti <- NULL - - if(all(izv.komp$`Povp. a` == ".")) { - izv.komp$`Povp. a` <- NULL - } - - - izv.komp.tex <- tb.lat( - izv.komp, - tabname = "Ocene za komponento - \\textbf{kompetenc} (anketa PO izpitu)", - "A{8cm}", - namen = "TRENDI", - Agregati = TRUE - ) - # Anketa PO Kompetence izvajalec - tr.ag.izv[[izvajalec]]$kompetence <- izv.komp.tex - #-------------------------------# - - - # Ustreznost kreditnih točk----------------------------- - izv.KT <- subset(ag.tred.KT, `Izvajalec id` == izvajalec) - # Izberemo podatke, ki jih želimo urediti in prikazati v - # Latex tabeli - izv.KT <- - izv.KT[grepl("Predmeti|SKUPAJ|leto|stolpec", colnames(izv.KT))] - - # Preverimo ali je v določenem študijskem letu izvajalec pri tem predmetu - # sodeloval oziroma poučeval, če ne želimo da dobi podatke o predmetu - izv.KT <- prepare.agregati( - izv.KT, - agregTip = "Predmeti", - imetabele = "", - habiliTrend = T - ) - izv.KT <- izv.KT %>% - tibble::rownames_to_column(., "Predmeti") - - izv.KT <- merge(izv.KT, ipp.pouc, by = "Predmeti", all = FALSE) - - izv.KT <- poucPredet(izv.KT) - rownames(izv.KT) <- izv.KT$Predmeti - izv.KT$Predmeti <- NULL - - if(all(izv.KT$`Povp. a` == ".")) { - izv.KT$`Povp. a` <- NULL - } - - izv.KT.tex <- tb.lat( - izv.KT, - tabname = "Ocene za - \\textbf{število porabljenih ur*} (anketa PO izpitu)", - "A{8cm}", - namen = "TRENDI", - Agregati = TRUE - ) - - - # Anketa PO USTREZNOST KT izvajalec - tr.ag.izv[[izvajalec]]$KT <- c(izv.KT.tex, - paste("\\begin{addmargin}[4.5em]{4.5em} - \\footnotesize \\textit{* Ocene za število porabljenih ur se razlikujejo od ostalih - komponent (glej metodološka pojasnila): Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright število kreditnih točk\\guillemotleft \\ zahteval - podpovprečno število ur, vrednost nad 3.0 pa pomeni nadpovprečno število ur. - {\\color{Orange}Oranžno} so označena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdeče} pa izrazita odstopanja - (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6})}. - \\end{addmargin}")) - #--------------------------------------# - #---------------------- //ANKETA PO// -----------------------# - - - #------------------------ ŠTUDIJSKA PRAKSA ---------------------# - # V kolikor je izvajalec izvajal tudi študijsko prasko želimo - # v poročilu prikazati tudi ocene prakse - - - - #---------------------- //ŠTUDIJSKA PRAKSA// -------------------# - - - #============================================================================# - #' //@KONEC @POGLAVJA @I Povzetek trendov za izvajalca in njegove predmete// # - #============================================================================# - # obdobje - # Preverimo za koliko let imamo podatke (ker se mudi naredimk na hitro :) - # Letnice vstavimo v latex tabele - stud.leta.stol <- prepare.agregati( - izv.pred, - agregTip = "Predmeti", - imetabele = "", - obdobje = TRUE - ) - - #=========================================================# - #' @POGLAVJE @2 Analiza trendov po predmetih # - #=========================================================# - # V tem poglavju bomo naredili trende in agregate na nivoju - # komponent posameznega predmeta. - # V latex tabele pa bomo vključili tudi - # response rate torej podatke o številu odgovorov in številu - # vpisanih študentov - - - # Zaradi pomanjkanja časa uberemo spodnjo pot (podvajamo neke zadeve) :) - # Funkcija ured.kompon nastopa v spodnji funkciji komponente.tidy - ured.kompon <- function(x) { - # Za potrebe barvanja posameznih komponent - colnames(x)[3:c(ncol(x) - 1)] <- paste0(colnames(x[3:c(ncol(x) - 1)]),"_mean") - # Obarvamo komponente - x[-ncol(x)] <- formatval(x[-ncol(x)]) - # Dodamo še oklepaje v primeru števila odgovorov - x[, 2] <- - ifelse( - num(x[, 2]) < 5 & !is.na(num(x[, 2])), - paste0("((", x[, 2], "))"), - ifelse(num(x[, 2]) > 4 & - num(x[, 2]) < 10, paste0("(", x[, 2], ")"),x[, 2]) - ) - - # Za potrebe latex tabele združimo prva dva stolpca - # ki predstavljata število vpisanih in število odgovorov - # zo želimo v latex tabeli prikazati kot - # vrstico "Respondenti/vpisani" - resp.vpis <- paste(x[1,2:1], collapse = "/") - - # Pripravimo podatke za latex tabelo - df <- rbind(t(x[1,3:ncol(x)]), resp.vpis) - # Uredimo še imena vrstic - rownames(df) <- gsub(".x|.y|.x.1|.y.1", "", rownames(df)) - rownames(df)[nrow(df)-1] <- "\\hline Povprečje komponent" - rownames(df)[nrow(df)] <- "\\hline Respondenti/Vpisani" - rownames(df) <- gsub("_mean", "", rownames(df)) - return(df) - - } - - # pouceval = izv.pred.pouc preverimo ali je predmet pouceval - komponente.tidy <- function(x, imetabele= " ", pouceval = NULL, praksa = FALSE){ - # Ime predmeta - predm.nam <- x$Predmeti - - # Za koliko let imamo podatke - st.col <- length(x[grepl("SKUPAJ|Skupaj", colnames(x))]) - x1 <- ured.kompon(x[grepl("\\.x$", colnames(x))]) - x2 <- ured.kompon(x[grepl("\\.y$", colnames(x))]) - x3 <- ured.kompon(x[grepl("\\.x.1$", colnames(x))]) - x4 <- ured.kompon(x[grepl("\\.y.1$", colnames(x))]) - if (st.col == 5) { - x5 <- ured.kompon(x[!grepl("\\.x$|\\.y$|\\.x.1$|\\.y.1$|Predmeti", colnames(x))]) - # Združimo podatke - df <- cbind.data.frame(x1, x2, x3, x4, x5) - } else { - # Združimo podatke - df <- cbind.data.frame(x1, x2, x3, x4) - } - - # Dodamo imena stolpcev (študijska leta) - colnames(df) <- stud.leta.stol - - # Preverimo ali je izvajalec pri predmetu res sodeloval - # drugače zakrijemo podatek za to leto - if (praksa == FALSE) { - df.pouc <- pouceval[rownames(pouceval) == predm.nam, ] - # Preverimo ali so podatki sploh na voljo - if (nrow(df.pouc) > 0){ - ind <- colnames(df.pouc) %in% colnames(df) & df.pouc == "--" - } else { - ind <- colnames(df.pouc) %in% colnames(df) - } - df[,ind] <- "--" - } - # Naredimo Latex tabelo - data.tex <- tb.lat( - df, - tabname = imetabele, - "A{8cm}", - namen = "TRENDI" - ) - return(data.tex) - } - - - # Generiranje latex tabel - # Loop po izvajalcih in predmetih, pri katerih je sodeloval - for (imena in izv.pred$Predmeti) { - # Predmet anketa PRED - #izvajalci.praks <- subset(ag.tred.praksa, `Izvajalec id` == izvajalec) - predmet.izv.pred <- subset(pred.indivud, Predmeti == imena) - desired.cols <- c("Predmeti|št. vpisa|št. odgov|Zadovol|Uskla|Samost|Literat|Obvešč|Informirano|Preverjanj|SKUPAJ|Skupaj") - predmet.izv.pred <- predmet.izv.pred[grepl(desired.cols, colnames(predmet.izv.pred))] - # Pripravi podatke (oklešaji, barvanja) in ustvari Latex tabelo - predmeti.tex[[izvajalec]][[imena]]$pred <- - c(paste0("\\section{",imena,"}"), - komponente.tidy(predmet.izv.pred, - imetabele = "Povprečne ocene komponent \\textbf{predmeta} (anketa PRED izpitom)", - pouceval = izv.pred.pouc) - ) - - # Predmet ANKETA PO - predmet.izv.po <- subset(po.indivud, Predmeti == imena) - desired.cols <- c("Predmeti|št. vpisa|št. odgov|Vseb|Nalog|Kriterij|SKUPAJ|Skupaj") - predmet.izv.po <- predmet.izv.po[grepl(desired.cols, colnames(predmet.izv.po))] - - predmeti.tex[[izvajalec]][[imena]]$po <- - c( - komponente.tidy(predmet.izv.po, - imetabele = "Povprečne ocene komponent \\textbf{predmeta} (anketa PO izpitu)", - pouceval = izv.po.pouc) - ) - - - - - # V kolikor delamo poročilo za habilitacijsko poročilo potem ocen za predmet ne potrebujemo - if (habilitacija == TRUE ) { - predmeti.tex[[izvajalec]][[imena]]$po <- NULL - predmeti.tex[[izvajalec]][[imena]]$pred <- NULL - } - - - - - - # IZVAJALEC PRI PREMDETU - # Pridobimo podatke o imenu izvajalca, brez naziva (naziv smo odstranili predhodno) - IPP.name <- str_extract(ipp.indivud$IPP, "[^(]*") - IPP.name <- sub("\\s+$", "", IPP.name) - # Dodamo ime k podatkov za potrebe kasnejšega loopa - # in izpisa podatkov v latex tabeli za posameznega izvajalca - ipp.indivud$izvajalci <- IPP.name - - - # Potrebuje ločeno ime predmetov - ipp.predmet.nam <- - unlist(regmatches( - ipp.indivud$IPP, - gregexpr("(?<=\\().+", ipp.indivud$IPP, perl = T) - )) - # Odstranimo še zadnji oklepaj (npr v primeru predmetov - # ki so poimenovani tako (BD Praktikum (60 ur) MO) - ipp.predmet.nam <- sub("\\)$", "", ipp.predmet.nam) - # Dodamo še imena predmetov in stem dobimo - # tudi šifrant izvajalcev, in predmetov - ipp.indivud$Predmeti <- ipp.predmet.nam - - predmet.izv.IPP <- subset(ipp.indivud, Predmeti == imena & izvajalci == unique(subset(IPP.ind, `Izvajalec id` == izvajalec)$izvajalci)) - desired.cols <- c("Predmeti|št. vpisa|št. odgov|Kakovo|Pripravl|Razumlji|Zanimi|Kritič|Korektn|SKUPAJ|Skupaj") - predmet.izv.IPP <- predmet.izv.IPP[grepl(desired.cols, colnames(predmet.izv.IPP))] - - # Drugače je nekje prišlo do errorja v funkciji komponente.tidy - izvajalec.pouceval <- ipp.pouc - if("Predmeti" %in% colnames(izvajalec.pouceval)) { - rownames(izvajalec.pouceval) <- izvajalec.pouceval$Predmeti - izvajalec.pouceval$Predmeti <- NULL - } - - - - - dd_izv_komentarji <- subset(izv.koment, PREDMET == imena & izvajalec.sifra == izvajalec) - - - desired.cols <- c("izvajalec.komentar.dobro|izvajalec.komentar.slabo|leto") - dd_izv_komentarji <- dd_izv_komentarji[grepl(desired.cols, colnames(dd_izv_komentarji))] - - - - ## KOMENTARJI ?tudentov ZA IZVAJALCA PRI PREDMETU - # kjer so tekstovne spremenljivke je na koncu ve?kratkrat kup nepotrebnih presledkov - trim <- function(x) { - gsub(pattern = '^\\s+|\\s+$', - replacement = '', - x = x) - } - # what should be excluded from student comments - junk.komentar <- - c( - NA, - "-1", - "-2", - "-3", - "-4", - "-5", - "-97", - "-98", - "-99", - "-", - "/", - "\\", - ".", - "", - "-1: Ni odgovoril", - "-2: Preskok (if)", - "-3: Prekinjeno" - ) - - text.komentar <- - structure( - c( - "Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih z delom izvajalca/ke pri izvedbi predmeta.", - "Prosimo, naštejte nekaj pomanjkljivosti in predlagajte izboljšave, povezane z delom izvajalca/ke pri izvedbi predmeta." - ), - .Names = c("izvajalec.komentar.dobro", "izvajalec.komentar.slabo" - )) - - - izvajalec.komentarji.2015 <- subset(dd_izv_komentarji, leto == "2014-15") - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" - data.text.2015 <- lapply(izvajalec.komentarji.2015[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2015 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2015)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2015[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2015[[textvar]][!data.text.2015[[textvar]] %in% junk.komentar]) - } - - tex.text.2015 <- NULL - for (textvar in names(data.text.2015)) { - komentarji <- data.text.2015[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2015 <- append(tex.text.2015 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2015 <- append(tex.text.2015 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - tex.text.2015 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2014/2015}} \\newline \\newline",tex.text.2015) - - - izvajalec.komentarji.2016 <- subset(dd_izv_komentarji, leto == "2015-16") - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" - data.text.2016 <- lapply(izvajalec.komentarji.2016[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2016 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2016)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2016[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2016[[textvar]][!data.text.2016[[textvar]] %in% junk.komentar]) - } - - tex.text.2016 <- NULL - for (textvar in names(data.text.2016)) { - komentarji <- data.text.2016[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2016 <- append(tex.text.2016 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2016 <- append(tex.text.2016 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - tex.text.2016 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2015/2016}} \\newline \\newline",tex.text.2016) - - - izvajalec.komentarji.2017 <- subset(dd_izv_komentarji, leto == "2016-17") - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" - data.text.2017 <- lapply(izvajalec.komentarji.2017[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2017 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2017)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2017[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2017[[textvar]][!data.text.2017[[textvar]] %in% junk.komentar]) - } - - tex.text.2017 <- NULL - for (textvar in names(data.text.2017)) { - komentarji <- data.text.2017[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2017 <- append(tex.text.2017 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2017 <- append(tex.text.2017 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - tex.text.2017 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2016/2017}} \\newline \\newline",tex.text.2017) - - - - izvajalec.komentarji.2018 <- subset(dd_izv_komentarji, leto == "2017-18") - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" - data.text.2018 <- lapply(izvajalec.komentarji.2018[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2018 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2018)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2018[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2018[[textvar]][!data.text.2018[[textvar]] %in% junk.komentar]) - } - - tex.text.2018 <- NULL - for (textvar in names(data.text.2018)) { - komentarji <- data.text.2018[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2018 <- append(tex.text.2018 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2018 <- append(tex.text.2018 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - tex.text.2018 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2017/2018}} \\newline \\newline",tex.text.2018) - - - - izvajalec.komentarji.2019 <- subset(dd_izv_komentarji, leto == "2018-19") - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" - data.text.2019 <- lapply(izvajalec.komentarji.2019[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2019 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2019)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2019[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2019[[textvar]][!data.text.2019[[textvar]] %in% junk.komentar]) - } - - tex.text.2019 <- NULL - for (textvar in names(data.text.2019)) { - komentarji <- data.text.2019[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2019 <- append(tex.text.2019 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2019 <- append(tex.text.2019 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - tex.text.2019 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2018/2019}} \\newline \\newline",tex.text.2019) - - - - predmeti.tex[[izvajalec]][[imena]]$ipp <- - c( - if (habilitacija == TRUE) { - paste0("\\section{", imena, "}") - }, - komponente.tidy(predmet.izv.IPP, - imetabele = "Povprečne ocene komponent \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)", - pouceval = izvajalec.pouceval), - if (habilitacija == TRUE) { - c(tex.text.2019, - tex.text.2018, - tex.text.2017, - tex.text.2016, - # Petletno serijo imata trenutno le - # dve članici, in sicer - # FDV in FGG - if (ID == 3000021 | ID == 3000026) { - tex.text.2015}) - }, - "\\newpage" - ) - - - } - - - - # NAREDIMO ŠE ZA ŠTUDIJSKO PRAKSO - if (!is.null(ag.trendov.prakse)) { - izv.praks <- subset(IPP.praksa, `Izvajalec id` == izvajalec) - predmet.izv.praksa <- subset(praksa.indivud, Predmeti %in% izv.praks$Predmeti) - if(nrow(predmet.izv.praksa) > 0) { - - for (prakse in predmet.izv.praksa$Predmeti) { - - - praksa.izv.praksa <- subset(predmet.izv.praksa, Predmeti == prakse) - - # Preverimo ali je v določenem študijskem letu izvajalec pri tem predmetu - # sodeloval oziroma poučeval, če ne želimo da dobi podatke o predmetu - # Latex tabeli - - - - desired.cols <- c("Predmeti|št. vpisa|št. odgov|Ponudba|Pomoč|Navodila|Notranji|Sodel|kompetence|Zunanji|Dolžina|SKUPAJ|Skupaj") - izv.praksa1 <- praksa.izv.praksa[grepl(desired.cols, colnames(praksa.izv.praksa))] - colnames(izv.praksa1) <- gsub(" ", "", colnames(izv.praksa1)) - # U - # Pripravi podatke (oklešaji, barvanja) in ustvari Latex tabelo - praksa.tex[[izvajalec]][[prakse]] <- - c(paste0("\\section{",prakse,"}"), - komponente.tidy(izv.praksa1, - imetabele = "Povprečne ocene komponent \\textbf{študijske prakse} (anketa PO izpitu)", - praksa = TRUE) - ) - - - - - - } - praksa.tex <- c(paste("\\chapter{Trendi za študijsko prakso}", - "Navedena so povprečja komponent za študijsko prakso. - Študenti so zadovoljstvo s komponentami - (vprašalniki se nahajajo na naslovu \\url{http://ul.1ka.si/q}) - ocenjevali na lestvici od 1 do 5."), - praksa.tex) - } else { - praksa.tex <- NULL -} - } else { - praksa.tex <- NULL -} - #========================================================# - #' //@KONEC @POGLAVJE @2 Analiza trendov po predmetih// # - #========================================================# - - # Definiramo Glavo dokumenta - tex.glava.trendi <- scan('Evalvacija/latexkosi/a-glava-trend.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') - tex.glava.trendi <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava.trendi) # Logo fakultete - tex.glava.trendi <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava.trendi) - # Študijsko leto - tex.glava.trendi <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava.trendi) - tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') - - # Vzamemo prvo in zadnje leto za katerega imamo podatke - obdobje <- stud.leta.stol[c(1,length(stud.leta.stol))] - # Obliak v kateri bomo obdobje zapisali na prvo stran - obdobje <- paste(obdobje, collapse = " - " ) - # Obdobje zapišemo še v latex datoteko - tex.glava.trendi <- gsub(pattern='!obdobje!', replacement = Hmisc::latexTranslate(obdobje), x = tex.glava.trendi) - Rdirektorij <- getwd() - - # For zanka - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec.povzetek <- - gsub( - pattern = '!naslov!', - replacement = Hmisc::latexTranslate(unique(subset(IPP.ind, `Izvajalec id` == izvajalec)$izvajalci)), - x = tex.glava.trendi - ) - #------------------------------------------------- - - # POJASNILO AGREGATI: - # Preverimo ali v poročilu izvajalca nastopajo agregati. - # Če je temu tako potem dodamo dodatno pojasnilo - # Drugače pojasnila ne prikažemo - # Preverimo ali so agregati - if(any(grepl("Povp. a", tr.ag.izv[[izvajalec]]))) { - agregat.pojas <- c(" - V primeru, ko so odgovarjale manj kot štiri enote, izračun povprečje za odgovarjajoče leto ni prikazan, je pa pridružen izračunu za agregirano povprečje za več let. Pri tem so uporabljene naslednje oznake: - \\begin{itemize} - \\item ».« predmet se je izvajal, vendar so odgovorile manj kot štiri enote (0, 1, 2 ali 3); - \\item »--« predmet se ni izvajal ali pa odgovarjajoči pedagog ni bil vključen med izvajalce; - \\item »a« nadomešča oznako ».«, kadar je bilo v določenem letu premalo enot (manj kot štiri), hkrati pa skupno število enot v zaporedju celic s premajhnim številom enot doseže vsaj štiri (4), kar omogoča izračun agregiranega povprečja, ki se nahaja v stolpcu »Povp. a«; - \\item »b« ima podoben pomen, kot »a« in se pojavi v primerih, ko je iz celic s premalo enotami mogoče oblikovati dve zaporedji, vsako z vsaj štirimi enotami, kar omogoča izračun dveh agregiranih povprečij v stolpcih »Povp. a« oziroma »Povp. b«; - \\item 3.6\\textsuperscript{a} oziroma 3.6\\textsuperscript{b} pomeni agregirano povprečje za vse celice, ki so označena z »a« ali »b«; - \\item (3.6), (3.6)\\textsuperscript{a} ali (3.6)\\textsuperscript{b} – enojni oklepaj pomeni, da se povprečje nanaša le na 5-9 enot; - \\item ((3.6)), ((3.6))\\textsuperscript{a} ali ((3.6))\\textsuperscript{b} – dvojni oklepaj pomeni, da se povprečje nanaša le na 4 enote. - \\end{itemize} - Podroben opis in ilustracija postopka se nahaja v Metodoloških pojasnilih in tudi na \\url{http://ul.1ka.si/agregati/ul.1ka.si/agregati}.") - } else { - agregat.pojas <- NULL - } - - - - - # Poglavje: Povzetek--------------------------- - tex.report.izvajalec.povzetek <- c( - tex.glava.izvajalec.povzetek, - "\\setlength{\\tabcolsep}{4pt}", - paste0("\\chapter{Povzetek trendov} - V tabelah so prikazana povprečja na lestvicah, - kjer so študenti označili strinjanje s trditvami, - ki se nanašajo na komponente pedagoške izvedbe (1 - »sploh se ne strinjam«, - 2 – »se bolj ne strinjam kot strinjam«, 3 –»niti se ne strinjam niti se strinjam«, - 4 – »se bolj strinjam kot ne strinjam«, 5- »popolnoma se strinjam«). - Vprašalniki so na povezavi \\url{http://ul.1ka.si/q}. - \\newline \\newline - Povprečja, ki ne dosegajo standarda 4.0 (3.0-3.9), so obarvana {\\color{Orange}oranžno}, - kritično nizka povprečja (1.0-2.9) pa so obarvana {\\color{BrickRed}rdeče}. - Visoka povprečja (4.5-4.7), kjer je večina študentov podala oceno - »popolnoma se strinjam« (5), so obarvana {\\color{Chateau Green}zeleno}, - najvišja (4.8-5.0) pa {\\color{Blue Stone}temnozeleno}. - \\newline \\newline - Ocene za povprečja, ki temeljijo na nizkem številu enot (od 4 do 9), ali pa jih - spremlja nizka stopnja sodelovanja, so manj kakovostne, zato so označene z - enojnim () oziroma z dvojnim oklepajem (()). - Natančno število vpisanih in sodelujočih študentov je navedeno v pregledu trendov po predmetih. - Oznaka »--« pomeni, da se predmet v določenem letu ni izvajal ali pa - odgovarjajoči pedagog ni bil vključen med izvajalce. Nadaljnje podrobnosti - so v Metodoloških pojasnilih na koncu poročila. - Osnovna metodološka pojasnila se nahajajo tudi na - \\url{http://ul.1ka.si/metodologija}." - ), - agregat.pojas, - # Ali delamo poročila za habilitacijo ali trende - if (habilitacija == FALSE){ - c(gsub('(continued)', '(nadaljevanje)', tr.ag.izv[[izvajalec]]$pred, fixed = TRUE), - gsub('(continued)', '(nadaljevanje)', tr.ag.izv[[izvajalec]]$po, fixed = TRUE), - tr.ag.izv[[izvajalec]]$kompetence, - tr.ag.izv[[izvajalec]]$KT)}, - tr.ag.izv[[izvajalec]]$IPP, - "\\chapter{Analiza trendov po predmetih}", - paste0("V tabelah so za izbrani predmet prikazane - komponente agregiranih ocen (poglavje 1) predmeta oziroma izvajalca. - V vsaki tabeli je navedeno tudi število študentov, - ki so na anketo odgovarjali (\\textbf{Respondenti}) in - število študentov, ki so predmet vpisali (\\textbf{Vpisani}). - Nizko število enot je označeno z enojnim () oziroma z dvojnim oklepajem (()) - pri čemer so oklepaji zaradi večje preglednosti navedeni le pri skupnem - povprečju komponent, niso pa prikazani pri ocenah posameznih komponent. - Trendi za oceno števila porabljenih ur in za oceno pridobljenih kompetenc so navedeni že v poglavju 1. - Podrobnejši vpogled v kakovost posamezne ocene je v odgovarjajočem letnem poročilu."), - predmeti.tex[[izvajalec]], - praksa.tex, - tex.okvir - ) - #--------------------------------------------- - - - # Update 8.10.2019 # - # K povzetku izvajalca dodamo še interpretacijo v tabelah - tex.report.izvajalec.povzetek <- - c( - tex.report.izvajalec.povzetek, - tex.noga) - - - # Outputs the objects, concatenating the representations. - cat(unlist(tex.report.izvajalec.povzetek), file = paste("Evalvacija/results/",fakulteta,"/Trendi/izvajalec_", gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, trhab,'.tex', sep = ''), sep = '\n') - setwd(paste(Rdirektorij, 'Evalvacija/results',fakulteta, "/Trendi", sep = '/')) - # ZAPIŠEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste('izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, trhab, '.tex', sep = ''), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} - -#--------------------------- //SESTAVLJANJE in KOMPILACIJA .tex datotek// ----------------------------------------# \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/data_trendi_praksa_faculty.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/data_trendi_praksa_faculty.R deleted file mode 100644 index 77ce94af1..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/data_trendi_praksa_faculty.R +++ /dev/null @@ -1,109 +0,0 @@ -# CREATED BY MIHA: 28. 6. 2018 -# In order to run this script the R scripts "kodaOsnovniIzracuni" -# and "KodaPDF_studijska_praksa" need to be run before. - -# Na katerem nivoju želimo, narediti študijsko prakso -praksa.fakulteta <- FALSE # nivo članice: skupna povprečja prak glede na leto -praksa.predmet <- TRUE # nivo predmeta: trendi komponent za posamezen predmet -praksa.UL <- FALSE # nivo UL - -####################################################################################### -###### TRENDI: PODATKI ŠTUDIJSKE PRAKSE NA NIVOJU ČLANICE IN NA NIVOJU UNIVERZE ####### -####################################################################################### - -# We need to prepare data for creating pdf reports TRENDI. In order to do so, every year -# we need to save the averageas of components for PRAKSA. -# SO basically we will calculate means of all courses (PRAKSA) and calculte mean of means -# that will represent FACULTY MEAN FOR PRAKSA -# So first we: -# Create and calculate total average of all "ŠTUDIJSKE PRAKSE" to get average for Faculty -izbor.predmeti.praksa <- izbor.predmeti[izbor.predmeti$PRAKSA==1 ,c("ST_STUD","N_anket", - "sodelujocih.pct", - "zavrnjenih.pct", - "neodzivnih.pct", - paste0(vars.predmet$cont$praksa,"_mean"), - "predmet.ocena.SKUPAJ.praksa", - "predmet.sifra")] -if (praksa.fakulteta == TRUE) { -# If data/averages exist we will write to csv otherwise we will write there is no data -# SOME FACULTIES DO NOT HAVE "PRAKSA" -if(nrow(izbor.predmeti.praksa) > 0) { -izbor.predmeti.praksa$predmet.sifra <- NULL -# We calculate MEANS OF COMPONENTS ACCORDING TO FACULTY -izbor.predmeti.praksa <- round(colMeans(izbor.predmeti.praksa, na.rm=TRUE), 1) -izbor.predmeti.praksa <- as.data.frame(izbor.predmeti.praksa) -# Names each column: We have multiple data because some data might be used in the future -rownames(izbor.predmeti.praksa) <- c("št. vpisanih", "št. odgovorov", "\\% odgovorov", - "\\% zavrnitev", "\\% nesodelujočih", - as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]), - "Skupaj") -# Year to which averages belong -# We will extract year from variable "semester.leto" (see R file navodila_dodatno_UTF-8) -# First split out the "words". Then the ones with a slash are dates -year <- strsplit(semester.leto, " ")[[1]] -year <- grep("/", year, value = TRUE) # dates -colnames(izbor.predmeti.praksa) <- year - - -# Save the data for this year:Multiple csv files according to year -write.csv2(izbor.predmeti.praksa, paste0("Evalvacija/results/praksa/", fakulteta, - ".povprecja.praks.", gsub("/", "_", year, fixed=TRUE),".csv")) - -# We also write TOTAL averages for faculty because we will also generate PDF reports according Univerity -# This report will include faculty average according to components of "STUDIJSKA PRAKSA". -facultymean.UL <- izbor.predmeti.praksa[nrow(izbor.predmeti.praksa),, drop = FALSE] -write.csv2(facultymean.UL, paste0("Evalvacija/results/praksa/", fakulteta, - ".povprecja.praks.UL.", gsub("/", "_", year, fixed=TRUE),".csv")) - -############## -# IMPORTANT!!! -############# -# We save data for the first year but for all next years we want to appeend -# data info file and not creating new csv for every year So for the next year -# we will use data from previous years and combine them into one file -trendipraks <- read.csv2("Evalvacija/results/praksa/povprecja.praks.csv", - stringsAsFactors = FALSE) # In case of FDV we already have data for two years saved -rownames(izbor.predmeti.praksa) <- NULL -# Combine data from previous years from the data with this year -trendipraks <- cbind(trendipraks, izbor.predmeti.praksa) -trendipraks <- cbind(trendipraks, round(rowMeans(trendipraks[2:ncol(trendipraks)], na.rm = TRUE), 1)) -write.table(trendipraks, "Evalvacija/results/praksa/povprecja.praks2016_2018.csv", - sep = ";", col.names = T, dec = ",", row.names = F) - - - -} else { - izbor.predmeti.praksa <- "Ni ocen." - write.csv2(izbor.predmeti.praksa, "Evalvacija/results/praksa/povprecja.praks.csv") -} -} - -########################################################################################################## - - -######################################################## -# TRENDI ŠTUDIJSKIH PRAKS NA NIVOJU POSAMEZNEGA PREDMETA -######################################################## -if (praksa.predmet == TRUE){ - # Dodamo leto - izbor.predmeti.praksa <- cbind(izbor.predmeti.praksa, year) - - if(nrow(izbor.predmeti.praksa) > 0) { - write.csv2(izbor.predmeti.praksa, - paste0("Evalvacija/results/",fakulteta,"/praksa/povprecja.praks.predmet_", - gsub("/", "_", year, fixed=TRUE),".csv")) - } - else { - izbor.predmeti.praksa <- "Ni ocen." - write.csv2(izbor.predmeti.praksa, paste0("Evalvacija/results/",fakulteta,"/praksa/povprecja.praks.predmet_", - gsub("/", "_", year, fixed=TRUE),".csv")) - } - -} - - - - -######################################################### -###### TRENDI: ŠTUDIJSKA PRAKSA NA NIVOJU UNIVERZE ###### -######################################################### \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/01_funkcije.r b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/01_funkcije.r deleted file mode 100644 index caf16e3e2..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/01_funkcije.r +++ /dev/null @@ -1,912 +0,0 @@ -#' Custom function for preparing all data for \Latex tables - - -########### -# minEnot!!!!!!!!!!!!! -########### -#----------------------- IMPORTANT ------------------------# -# Prikaz na prvi strani PDF poročila pod naslovom in v nogi -semester.leto <- "Študijsko leto 2018/19" -# najmanjše število odgovorov, kjer se pokaže rezultat, -# ko ne gre za anlize po skupinah -# Za AG smo na njihovo željo spremenili n = 3 -if (ID != 3000043) { -minEnot <- 4 -} else { - minEnot <- 3 -} -# strings to be used for semester specific calculations in metodology -# (this values present specific semester in sifrant$SEMESTER_IZV) -prvi_semester <- c("zimski", "prvi semester", 1) -drugi_semester <- c("letni", "drugi semester", "celoletni", 2, 3) -#--------------------- //IMPORTANT// ----------------------# - - - -#--------------------------- COLOR AND ROUND MEANS ------------------------------# -# TANKS TO ZMIŠLJEVANJU NAROČNIKA KONSTANTO NEKAJ DODAJAMO IN RATUJE SOLATA! -# Function which will tidy frequency and descrptive statistics -# for the variables course and the lecturer for the LATEX TABLE purposes -# With this function we will also color values according to -# chapter "Metodološko pojasnilo" which is in every PDF report -# we make. -#' @param x data frame we wich to tidy for \LATEX table purposes -#' @param KT Ustreznost kreditnih točk. If is TRUE then we will -#' color values differently compared to other variables -#' @param KTtrend If TRUE we are coloring Krediti for Trend purposes -#' see PDF report for faulty chapter "Trendi komponent predmetov in izvajalca" -#' @Agregati: Updated od 12.9.2019. If we are doing Agregats, some character -#' we dont want to replace with NA when claculating means -#' @return A data.frame. -#' @author MM (mat.miha@@gmail.com) - -# Prikaz decimalnih mest v latex tabeli show trailing zeros 4.0 namesto 4 -trail.0 <- function(x){ - x <- formatC(round(x, 1), format = 'f', digits = 1) - return(x) -} - -formatval <- function(x, KT = FALSE, KTtrend = FALSE, Agregati = FALSE) { - # because we use two different strategies for frequencies (paranthesis) - # and for descriptive statistics (coloring) we will first seperate this two - - # FREQUENCY CHECK # - #=================# - # Extract columns with frequencies - # "\<" is an escape sequence for the beginning of a word, and ">" is used for end - df <- - x[grepl("\\|\\|\\|N_anket|\\", - colnames(x))] - # Then check if there are more tha one column - # which means we also need to add parenthesis - # to percentages Which are threated differently - - # We have only one column which means frequency - if (!is.null(df) & ncol(df) > 0) { - nm <- rownames(df) - # Mutate to numeric - # Because there could be NA in the data - # the function formatval could return - # warning of 1: In (function (x) : NAs introduced by coercion - # Tehrefore we want to surpress that warning - df <- - suppressWarnings(mutate_all(df, function(x) - round(as.numeric(as.character( - x - )), 0))) - df <- - data.frame(lapply(df, function(x) - ifelse(x > 4 & x < 10, paste0("(", x, ")"), - ifelse(x < 5, paste0("((", x, "))"), x))), stringsAsFactors = FALSE) - df[is.na(df)] <- "." - # Add rownames - rownames(df) <- nm - } else { - df <- NULL - } - # PERCENTAHES CHECK # - #===================# - # Extract columns with mean values - # In case of percentages the parenthiesis - # are noly added to columns named - # Odgovoril == sodelujocih.pct and - # Zarrnil == zavrnjenih.pct - df.pct <- x[grepl( - "pct", - colnames(x) - )] - # Check if data are available - if (!is.null(df.pct) & ncol(df.pct) > 0) { - nm <- rownames(df.pct) - # Mutate to numeric - df.pct <- - suppressWarnings(mutate_all(df.pct, function(x) - round(as.numeric(as.character( - x - )), 0))) - # Parenthesis to percentage sof answers - df.pct[grepl("sodelujocih", colnames(df.pct))] <- - data.frame(lapply(df.pct[grepl("sodelujocih", colnames(df.pct))], function(x) - ifelse( - x > 10 & x < 25, paste0("(", x, ")"), - ifelse(x < 10, paste0("((", x, "))"), x) - )), stringsAsFactors = FALSE) - # Also add parenthesis to percentage of rejected - df.pct[grepl("zavrnjenih", colnames(df.pct))] <- - data.frame(lapply(df.pct[grepl("zavrnjenih", colnames(df.pct))], function(x) - ifelse( - x > 50 & x < 75, paste0("(", x, ")"), - ifelse(x > 75, paste0("((", x, "))"), x) - )), stringsAsFactors = FALSE) - # Also add parenthesis to percentage of rejected - df.pct[grepl("neodzivnih", colnames(df.pct))] <- - data.frame(lapply(df.pct[grepl("neodzivnih", colnames(df.pct))], function(x) - ifelse( - x > 50 & x < 75, paste0("(", x, ")"), - ifelse(x > 75, paste0("((", x, "))"), x) - )), stringsAsFactors = FALSE) - - - # For latex table purposes replace NA with "." - df.pct[is.na(df.pct)] <- "." - # Add rownames - rownames(df.pct) <- nm - } else { - df.pct <- NULL - } - - # DESCRIPTIVES CHECK # - #====================# - # Extract columns with mean values - df.m <- x[grepl( - "mean|Skupaj|SKUPAJ", - colnames(x) - )] - # Check if data are available - if (!is.null(df.m) & ncol(df.m) > 0) { - nm <- rownames(df.m) - - if (Agregati == "FALSE") { - # Mutate to numeric - df.m <- - suppressWarnings(mutate_all(df.m, function(x) - round(as.numeric(as.character( - x - )), 1))) - } else { - # V kolikor Delamo Za Agregate, uporabimo Ta del, ker - # manjkajočiv vrednosti ne želimo nadomestiti z NA - # ko podatkovni okvir spremenimo v numeric - df.m <- - suppressWarnings(df.m %>% mutate_all(function(x) - ifelse(x == "a" | - x == "b" | x == "--", x, round(as.numeric(as.character( - x - )), 1)))) - } - #------------------------------------- - - # Check if we data consist of-------------------------------------- - # Ustreznost KT which are in ANKETA PO - # and are colored differently - if (KT == TRUE) { - # Seperate column krediti - kt.l <- -ncol(df.m) - # First we color all other variables - df.m[kt.l] <- - data.frame(lapply(df.m[kt.l], function(x) - ifelse( - x < 3, - paste('{\\color{BrickRed}', trail.0(x), '}', sep = ''), - ifelse( - x > 2.9 & x < 4, - paste0('{\\color{Orange}',trail.0(x), '}'), - ifelse( - x >= 4.5 & x <= 4.7, - paste0('{\\color{Chateau Green}', trail.0(x), '}'), - ifelse(x >= 4.7, - paste0('{\\color{Blue Stone}', trail.0(x), '}'), trail.0(x)) - ) - ) - )), stringsAsFactors = FALSE) - # Second we also color column KREDITI - df.m[as.numeric(gsub("-", "", kt.l))] <- - data.frame(lapply(df.m[as.numeric(gsub("-", "", kt.l))], function(x) - ifelse( - x > 2.3 & x < 2.7, - paste0('{\\color{Orange}', trail.0(x), '}'), - ifelse( - x > 3.3 & x < 3.7, - paste0('{\\color{Orange}', trail.0(x), '}'), - ifelse( - x < 2.4, - paste0('{\\color{BrickRed}', trail.0(x), '}'), - ifelse(x > 3.6, paste0('{\\color{BrickRed}', trail.0(x), '}'), trail.0(x)) - ) - ) - )), stringsAsFactors = FALSE) - } else { - # We dont have data for ANKETA PO ------------------------------------------ - df.m <- - data.frame(lapply(df.m, function(x) - ifelse(x != "--" & - x < 3, - paste('{\\color{BrickRed}', trail.0(x), '}', sep = ''), - ifelse( - x > 2.9 & x < 4, - paste0('{\\color{Orange}', trail.0(x), '}'), - ifelse( - x >= 4.5 & x <= 4.7, - paste0('{\\color{Chateau Green}', trail.0(x), '}'), - ifelse(x >= 4.7, - paste0('{\\color{Blue Stone}', trail.0(x), '}'), trail.0(x)) - ) - ) - )), stringsAsFactors = FALSE) - } - # For latex tables purposes - df.m[is.na(df.m)] <- "." - # Add rownames - rownames(df.m) <- nm - } else { - df.m <- NULL - } - #----------------------------------------------------------------------------# - - # Also check if we have data for standard deviation--- - # Check if data are available - # Extract columns with mean values - df.sd <- x[grepl( - "\\", - colnames(x) - )] - if (!is.null(df.sd) & ncol(df.sd) > 0) { - nm <- rownames(df.sd) - # Mutate to numeric - df.sd <- - suppressWarnings(mutate_all(df.sd, function(x) - round(as.numeric(as.character( - x - )), 1))) - # For latex tables purposes - df.sd[is.na(df.sd)] <- "." - } else { - df.sd <- NULL - } - #------------------------------------------------- - - # TRENDI --------------------------------------- - if (KTtrend == TRUE) { - # Check if we are doing reports for - # Trends for Krediti - # e.g., see report - df.tr <- x[grepl( - "SKUPAJ|Ustreznost|predmet.ocena.krediti_mean", - colnames(x) - )] - if (!is.null(df.tr) & ncol(df.tr) > 0) { - nm <- rownames(df.tr) - # Mutate to numeric - df.tr <- - suppressWarnings(mutate_all(df.tr, function(x) - round(as.numeric(as.character( - x - )), 1))) - # Color KREDITI - df.tr <- - data.frame(lapply(df.tr, function(x) - ifelse( - x > 2.3 & x < 2.7, - paste0('{\\color{Orange}', trail.0(x), '}'), - ifelse( - x > 3.3 & x < 3.7, - paste0('{\\color{Orange}', trail.0(x), '}'), - ifelse( - x < 2.4, - paste0('{\\color{BrickRed}', trail.0(x), '}'), - ifelse(x > 3.6, paste0('{\\color{BrickRed}', trail.0(x), '}'), trail.0(x)) - ) - ) - )), stringsAsFactors = FALSE) - # For latex tables purposes - df.tr[is.na(df.tr)] <- "." - } else { - df.tr <- NULL - } - } - # Insert into final data------------------------ - x[colnames(df)] <- df - x[colnames(df.m)] <- df.m - x[colnames(df.pct)] <- df.pct - x[colnames(df.sd)] <- df.sd - if (KTtrend == TRUE) { - x[colnames(df.tr)] <- df.tr - } - rownames(x) <- nm - #---------------------------------------------- - return(x) -} -#------------------------- //COLOR AND ROUND MEANS// ----------------------------# - - - -#------------------- JOIN PROGGRAMES AND CREATE LATEX TABLES --------------------# -# Function which will join programmes with not enough students -# to programme with the most students and also calcualte -# colmenas, rowmeans, sum of all answers and also create -# \Latex table and output data -# The output of this function is a list with LATEX table -# which coninst ov cours eor lecturer averages where we another -# row with total average of the course ro lecrurer -# and anotger row wirh faculty averages. -# and means fo te programmes for quantile rangs tables - -#' @param data data frame we wich prepare for \LATEX table purposes -#' @param rownam "Rownames we wish to display in latex table". The argument -#' is meant as a rowname of Total averages for lecturer or for the course -#' @param facultym Faculty means for course or lecturer -#' @param Frownam "Rowname of the faculty " -#' @param tablename Caption ot \Latex table -#' @param namen Number fo columns in latex table. IF we are doing -#' \Latex table for anketa PO then number of column is different and -#' namen is "PO", othervise namen is "PRED" -#' @param letnik If is TRUE we are doing tables and averages for -#' @param colnam Columnames for \Latex table -#' students year and not for students programme -#' @author MM (mat.miha@@gmail.com) - -# join programmes with not enough students to programme with the most students -pro.let.c <- function (data, rownam, facultym, Frownam, tablename, namen, letnik = FALSE, colnam) { - # If letnik = TRUE that means that we are interested in program evaluations - # by student year and not by student programme therefore we need to - # ajdust for that (different column name) - if(letnik == TRUE) { - colnames(data)[colnames(data) == "letnik.studentov"] <- "program.studentov.ime" - } - if (nrow(data) > 0) { - # Then we chack if we relly have 4 or more answers or some student - # also answered with -96 which means "nimam dovolj informacij" - if (namen == "IPP") { - if ( max(data[paste0(vars.izvajalec$cont$vars,"_N")]) < 4) { - # Hide mean avalues - data[paste0(vars.izvajalec$cont$vars,"_mean")] <- NA - } - } else if (namen == "PRED") { - if ( max(data[paste0(vars.predmet$cont$pred,"_N")]) < 4) { - # Hide mean avalues - data[paste0(vars.predmet$cont$pred,"_mean")] <- NA - } - } else { - if ( max(data[paste0(vars.predmet$cont$po,"_N")]) < 4) { - # Hide mean avalues - data[c(paste0(vars.predmet$cont$po,"_mean"), "predmet.ocena.krediti_N")] <- NA - } - - } - } - if (nrow(data) > 0 && max(data$N_anket) >= minEnot) { - # Find number of answers that are les than 4 and need to be - # merged - cours.min <- data[which(data$N_anket < minEnot), ] - - # Check if there are any programs that need to be joined - if(nrow(cours.min) > 0) { - # Also find program with the highest number of answers - # If there are multiple programs with the same number - # of answers choose the first one - course.max <- data[which(data$N_anket == max(data$N_anket))[1], ] - # Ime programa za latex tabelo - course.max.lab <- as.character(course.max$program.studentov.ime) - # Extract the components we are calculating the mean for - cours.min.m <- cours.min[grepl("N|mean", colnames(cours.min))] - cours.max.m <- course.max[grepl("N|mean", colnames(course.max))] - # Calculate new Average for the program which we merged with programe with less than 4 students answers - # Multiply mean with total number of answers in order to be able to calculate new mean - # First we do this for programmes with less than 4 answers - premalo.produkt <- - colSums(cours.min.m[, grepl("mean", colnames(cours.min.m))] * cours.min.m[, grepl("_N", colnames(cours.min.m))], na.rm = TRUE) - premalo.produkt[is.na(premalo.produkt)] <- 0 - # Then we do this for programmes with maximum number of answers - najvecja.produkt <- - cours.max.m[, grepl("mean", colnames(cours.max.m))] * cours.max.m[, grepl("_N", colnames(cours.max.m))] - # Summ of all asnwers on the likert scale - vsota.enot <- - colSums(cours.min.m[, grepl("_N", colnames(cours.min.m))], na.rm = T) + cours.max.m[, grepl("_N", colnames(cours.max.m))] - # Before calculating new mean of programme with the highest number of answers we also ned new number - # of valud students answers - cours.max.m[, grepl("mean", colnames(cours.max.m))] <- (premalo.produkt + najvecja.produkt) / vsota.enot - # Replace new values of the course with maximum answers - course.max[colnames(cours.max.m)] <- cours.max.m - # For latex table puproses calculate new row mean - # NOTE!!: Anketa PRED and anketa PO have different number of - # component for which we calculate row means and anekta PO - # Also has some components reorderd therefore we need to account - # for that - if (namen != "PO") { - course.max <- - cbind(course.max, "Skupaj" = round(rowMeans(course.max[, grepl("mean", colnames(cours.min.m))], na.rm = TRUE), 1)) - } else { - course.max <- - cbind(course.max, "Skupaj" = round(rowMeans(course.max[, grepl("vsebine_mean|naloge_mean|kriteriji_mean", - colnames(cours.min.m))], na.rm = TRUE), 1)) - } - # Lets check if there are any other programs that have more than 4 ansewrs in order to calculate total mean - course.othr <- subset( - data, - !(program.studentov.ime %in% course.max$program.studentov.ime) & - !(program.studentov.ime %in% cours.min$program.studentov.ime) - ) - # If we have also other programs with data we first need to calculate total mean - if(nrow(course.othr) > 0) { - course.othr.m <- course.othr[grepl("mean", colnames(course.othr))] - # Check if rowmeans are for anketa PRED or PO - if (namen != "PO") { - course.othr.m <- - cbind(course.othr.m, "Skupaj" = rowMeans(course.othr.m, na.rm = TRUE)) - } else { - course.othr.m <- - cbind(course.othr.m, "Skupaj" = rowMeans(course.othr.m[c(2, 3, 4)], na.rm = TRUE)) - } - # Add new colnames - course.othr[colnames(course.othr.m)] <- course.othr.m - # Programe names - rownames(course.othr) <- course.othr$program.studentov.ime - rownames(course.max) <- course.max$program.studentov.ime - # Rbind with total averages - course.tot <- rbind(course.max, course.othr) - course.tot <- course.tot[grepl("N_anket|mean|Skupaj", colnames(course.tot))] - # Because we will also calculate Qantile ranks we will store the programmes with more than 4 - # answers in another variable - kvant.table <- course.tot - # Add Total column sums of number of answers and averages for the components - # Check if we are calculating column means for ANKETA PRED or PO due to - # the fact in ANEKTA PO has only three components for colmeans - course.tot <- - rbind(course.tot, c( - colSums(course.tot[1], na.rm = TRUE), - colMeans(course.tot[2:ncol(course.tot)], na.rm = TRUE) - )) - # Add data of programes where there were not enough answers - cours.min[, grepl("mean", colnames(cours.min))] <- "." - course.tot <- course.tot %>% rownames_to_column('prog') %>% - mutate_if(is.numeric, round, 1) %>% - column_to_rownames('prog') - # Add rowname: Is is tabel for lecturer or for the course - rownames(course.tot)[nrow(course.tot)] <- rownam - # Add rowname of program with not enough student answers - rownames(cours.min) <- cours.min$program.studentov.ime - course.tot <- - qpcR:::rbind.na(course.tot, cours.min[grepl("N_anket|mean|Skupaj", colnames(cours.min))]) - # Reorder - course.tot <- - course.tot[order(course.tot$N_anket, decreasing = TRUE),] - # Preoblikujemo vrstice - course.tot <- course.tot %>% - rownames_to_column('prog') %>% - arrange(N_anket) %>% - column_to_rownames('prog') - # Izračunamo Novo število Odgovorov - course.tot[rownam, "N_anket"] <- - sum(course.tot$N_anket[1:length(course.tot$N_anket) - 1], na.rm = TRUE) - # Preuredimo vrstice tako, da bo povprecje izvajalca ali predmeta na koncu - dol <- nrow(course.tot)-1 - course.tot <- - rbind(course.tot[1:dol,][order(course.tot[1:dol, "N_anket"], decreasing = TRUE), ], course.tot[nrow(course.tot), ]) - # If data are from ANEKTA PO we need to reorder columns due to - # formatval function when coloring KREDITI - if (namen == "PO") { - # Column Krediti goes to the end - colnames(course.tot)[ncol(course.tot)] <- "Skupaj" - course.tot <- - course.tot %>% dplyr::select(-predmet.ocena.kompetence_mean, - -predmet.ocena.krediti_mean, - everything()) - # Color and add parenthesis if there are small number of answers. See custom function "formatval" - course.tot <- suppressWarnings(formatval(course.tot, KT = TRUE)) - course.tot[is.na(course.tot)] <- "." - - } else { - # Rename last column which is total average - colnames(course.tot)[ncol(course.tot)] <- "Skupaj" - course.tot <- suppressWarnings(formatval(course.tot)) - course.tot[is.na(course.tot)] <- "." - - } - # Dodamo še povprečje celotne fakultete - # Ker je prvi stolpec faktor in v kolikor - # želimo združiti vrstice, moramo factor pretvoriti - # v character, da lahko povprečja izvajalca/predmeta združimo - # s povprečjem celotne fakultete - i <- sapply(course.tot, is.factor) - course.tot[i] <- lapply(course.tot[i], as.character) - if (namen == "PO") { - course.tot <- - rbind(course.tot, c("--", unlist(formatval(data.frame( - t(facultym[c(2:4, length(facultym), 1, 5)]) - ), KT = TRUE)))) - } else { - course.tot <- - rbind(course.tot, c("--", unlist(formatval(data.frame( - t(facultym) - ))))) - } - # Še imena dodane vrstice - rownames(course.tot)[nrow(course.tot)] <- Frownam - course <- course.tot - } else { - rownames(course.max) <- course.max$program.studentov.ime - # Because we will also calculate Qantile ranks we will store the programmes with more than 4 - # answers in another variable - kvant.table <- course.max - # Grepl data we want to tidy - course.max <- course.max[grepl("N_anket|mean|Skupaj", colnames(course.max))] - # Add data of programes where there were not enough answers - cours.min[, grepl("mean", colnames(cours.min))] <- "." - # Add rowname: Is is tabel for lecturer or for the course - # Add rowname of program with not enough student answers - rownames(cours.min) <- cours.min$program.studentov.ime - course.max <- qpcR:::rbind.na(course.max, cours.min[grepl("N_anket|mean|Skupaj", colnames(cours.min))]) - # Dodamo še skupno povprečje izvajalca, ki je - course.max <- rbind(course.max, course.max[1,]) - rownames(course.max)[nrow(course.max)] <- rownam - # Izračunamo Novo število Odgovorov - course.max[rownam, "N_anket"] <- - sum(course.max$N_anket[1:length(course.max$N_anket) - 1], na.rm = TRUE) - # Color and add parenthesis if there are small number of answers. See custom function "formatval" - if (namen == "PO") { - # Column Krediti goes to the end - colnames(course.max)[ncol(course.max)] <- "Skupaj" - course.max <- - course.max %>% dplyr::select(-predmet.ocena.kompetence_mean, - -predmet.ocena.krediti_mean, - everything()) - # Color and add parenthesis if there are small number of answers. See custom function "formatval" - course.max <- suppressWarnings(formatval(course.max, KT = TRUE)) - course.max[is.na(course.max)] <- "." - } else { - colnames(course.max)[ncol(course.max)] <- "Skupaj" - course.max <- suppressWarnings(formatval(course.max)) - course.max[is.na(course.max)] <- "." - } - # Dodamo še povprečje celotne fakultete - # Ker je prvi stolpec faktor in v kolikor - # želimo združiti vrstice, moramo factor pretvoriti - # v character, da lahko povprečja izvajalca/predmeta združimo - # s povprečjem celotne fakultete - i <- sapply(course.max, is.factor) - course.max[i] <- lapply(course.max[i], as.character) - if (namen == "PO") { - course.max <- - rbind(course.max, c("--", unlist( - formatval(data.frame(t(facultym[c(2:4, length(facultym), 1, 5)])), KT = TRUE - )))) - } else { - course.max <- - rbind(course.max, c("--", unlist( - formatval(data.frame(t(facultym))) - ))) - } - # Še imena dodane vrstice, kjer gre za povprečje Fakultete - rownames(course.max)[nrow(course.max)] <- Frownam - course <- course.max - } - # olepšanje slovnice v opombi poda tabelo # - # Slovnica se prilagaja, glede na število programov, ki smo - # jih pridružili - if (minEnot == 2) { - studentText <- "študentoma" - } else { - studentText <- "študenti" - } - if (nrow(cours.min) == 1) { - skupinaText <- "je zaradi varovanja zasebnosti pridružena skupina" - } else if (nrow(cours.min) == 2) { - skupinaText <- "sta zaradi varovanja zasebnosti pridruženi skupini" - } else { - skupinaText <- "so zaradi varovanja zasebnosti pridružene skupine" - } - # /olepšanje slovnice/ # - opomba <- - c( - paste0( - "* Skupini študentov \\guillemotright ", - course.max.lab, - "\\guillemotleft \\ ", - skupinaText, - " z manj kot ", - minEnot, - " ", - studentText, - ": \\guillemotright ", - paste(cours.min$program.studentov.ime, collapse = ",\\guillemotleft \\ \\guillemotright "), - "\\guillemotleft." - ), - if (letnik != TRUE) { - "\\newline** Analize za vse študijske programe, v katerih sodeluje - izvajalec, so v poglavju \\textbf{Sumarne ocene študijskih programov}." - }, - "\\newline -- Podatek je manj pomemben ali težko izračunljiv.", - if (namen == "PO" & letnik == FALSE) { - "\\newline*** Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright število kreditnih točk\\guillemotleft \\ zahteval - podpovprečno število ur, vrednost nad 3.0 pa pomeni nadpovprečno število ur. - {\\color{Orange}Oranžno} so označena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdeče} pa izrazita odstopanja - (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6})." - } else if (namen == "PO" & letnik == TRUE) { - "\\newline** Vrednost pod 3.0 pomeni, da je predmet - glede na \\guillemotright število kreditnih točk\\guillemotleft \\ zahteval - podpovprečno število ur, vrednost nad 3.0 pa pomeni nadpovprečno število ur. - {\\color{Orange}Oranžno} so označena opazna odstopanja - ({\\color{Orange}2.4-2.6}) in ({\\color{Orange}3.4-3.6}), - {\\color{BrickRed}rdeče} pa izrazita odstopanja - (pod {\\color{BrickRed}2.4} in nad {\\color{BrickRed}3.6})." - }, - if (any(course ==".")) { - "\\newline . Podatek ni prikazan zaradi majhnega števila enot." - } - ) - - # K imenu programa, ki smo mu dodali programe z premalo ocenami dodamo *, ki bo v opombi pod latex tabelo - rownames(course)[rownames(course) == course.max.lab] <- paste0(course.max.lab, "*") - # Dodamo še imena stolpcev - colnames(course) <- colnam - - # In Case there is no programm with less than 4 answers we calculate row and column means - } else { - # Because we will also calculate Qantile ranks we will store the programmes with more than 4 - # answers in another variable - kvant.table <- data[grepl("N_anket|mean|program.studentov.ime", colnames(data))] - rownames(kvant.table) <- kvant.table$program.studentov.ime - kvant.table$program.studentov.ime <- NULL - # Extract the components we are calculating the mean for - prog.m <- data[grepl("mean", colnames(data))] - # Calculate means for Latex table - # Check if we have numeric data - prog.m <- rbind(prog.m, colMeans(prog.m, na.rm = TRUE)) - # ANKETA PRED OR ANKETA PO - if (namen != "PO") { - prog.m <- cbind(prog.m, "Skupaj" = rowMeans(prog.m, na.rm = TRUE)) - - } else { - prog.m <- cbind(prog.m, "Skupaj" = rowMeans(prog.m[c(2, 3, 4)], na.rm = TRUE)) - # Reorder columns for latex table purposes - prog.m <- prog.m %>% dplyr::select(-predmet.ocena.kompetence_mean, - -predmet.ocena.krediti_mean, - everything()) - } - # In some cases there are duplicated names of programmes because - # there are new programes and old ones with the same name: eg. Družboslovna informatika - rownames(prog.m) <- make.unique(c(paste0(data$program.studentov.ime), "Skupaj")) - # Nov We allso need data for Number of answers - prog.m <- cbind("N_anket" = c(data$N_anket, sum(data$N_anket, na.rm = TRUE)), prog.m) - # Color and parenthesis - if (namen != "PO") { - prog.m <- formatval(prog.m) - } else { - # Color data - prog.m <- formatval(prog.m, KT = TRUE) - } - # Add new rownames - rownames(prog.m)[nrow(prog.m)] <- rownam - # And also add faculty averages grouped components in ANKETA PO OR ANKETA PRED - if (namen == "PO") { - prog.m <- - rbind(prog.m, c("--", unlist(formatval(data.frame( - t(facultym[c(2:4, length(facultym), 1, 5)]) - ), KT = TRUE)))) - } else { - prog.m <- - rbind(prog.m, c("--", unlist(formatval(data.frame( - t(facultym) - ))))) - } - # Še imena dodane vrstice, kjer gre za povprečje Fakultete - rownames(prog.m)[nrow(prog.m)] <- Frownam - # Add Footnote which will be added at the bottom of LAtex table - opomba <- - c("\\newline** Analize za vse študijske programe, v katerih sodeluje - izvajalec, so v poglavju \\textbf{Sumarne ocene študijskih programov}.", - "\\newline -- Podatek je manj pomemben ali težko izračunljiv." - ) - - # Finnaly sort - course <- prog.m - # Dodamo še imena stolpcev - colnames(course) <- colnam - - } - - # Preverimo ali delamo latex tabelo za predmet PO izpitu ali za izvajalca - if (namen == "PO") { - col.just <- c("c|", "c", "c", "c", "|c|", "c", "c") - } else if (namen == "PRED") { - col.just <- c("c|", "c", "c", "c", "c", "c", "c", "c", "|c") - } else { - col.just <- c("c|", "c", "c", "c", "c", "c", "c", "|c") - - } - - # Create Latex table - tex <- - capture.output( - Hmisc::latex( - course, - caption = tablename, - rowlabel = "", - file = "", - where = "H", - multicol = FALSE, - rowlabel.just = "p{10.2cm}", - col.just = col.just, - insert.bottom = paste("{\\footnotesize \\textit{", opomba, "}}") - ) - ) - -} - else { - # minipage zato da ostane tekst skupaj na 1 strani - # in tudi da ne pride do prazne strani zaradi \\newline - tex <- - c( - "\\begin{minipage}{\\textwidth}", - tablename, - "\\newline", - paste("-- Ni skupine z vsaj", minEnot, "študenti -"), - "\\newline", - "\\newline", - "\\end{minipage}" - ) - kvant.table <- NULL - } - return(list(tabela = kvant.table, tex = tex)) - - } -#----------------- //JOIN PROGGRAMES AND CREATE LATEX TABLES// ------------------# - - - -#-------------------- COLORING VECTOR KREDITNE TOCKE ---------------------# -# Coloring averages (vecotrs) for table -# "Število porabljenih ur (anketa PO izpitu) -# USTREZNOST KT mean for course and for the fauclty -kt.vect.col <- function(x) { - x <- round(x, 1) - x <- ifelse( - x > 2.3 & x < 2.7, - paste0( - '{\\color{Orange}', - trail.0(x), - '}' - ), - ifelse( - x > 3.3 & x < 3.7, - paste0( - '{\\color{Orange}', - trail.0(x), - '}' - ), - ifelse( - x < 2.4, - paste0( - '{\\color{BrickRed}', - trail.0(x), - '}' - ), - ifelse( - x > 3.6, - paste0( - '{\\color{BrickRed}', - trail.0(x), - '}' - ), - trail.0(x) - ) - ) - ) - ) - x[is.na(x)] <- "." - return(x) -} - -require('Hmisc') -#------------------ //COLORING VECTOR KREDITNE TOCKE// -------------------# - - -######################################################## -#### OD TU NAPREJ MORAM ŠE KOZMETIČNO UREDIT ########### -#17.9.2019 -######################################################## - -# kjer so tekstovne spremenljivke je na -# koncu večkratkrat kup nepotrebnih presledkov -trim <- function(x) { - gsub(pattern='^\\s+|\\s+$', replacement='', x=x) -} -#------------------------------------------------ - -# pretvorba imen stolpcev in vrstic tabel za latex znake -toLatex <- function(tabela) { - if (!is.null(colnames(tabela))) { - colnames(tabela) <- Hmisc::latexTranslate(colnames(tabela)) - } - if (!is.null(rownames(tabela))) { - rownames(tabela) <- Hmisc::latexTranslate(rownames(tabela)) - } - return(tabela) -} -#------------------------------------------------------------- - - -# spreminjanje teksta za izvedbo v pravljico :) -oblikujIzvedbo <- function (izvedba, semester) { - if (substr(izvedba,1,1)=='1') { - katera <- 'Prva izvedba' - } else if (substr(izvedba,1,1)=='2') { - katera <- 'Druga izvedba' - } else if (substr(izvedba,1,1)=='3') { - katera <- 'Tretja izvedba' - } else { - katera <- paste('Izvedba', izvedba) - } - return(paste(katera, semester, sep=", ")) -} -#---------------------------------------------# - -# Barvanje kvantilnih rnagov (glej poročilo za izvajalca, tabela 1.4, 1.5, 1.6) -# returns colorized (latex format) quantile rank for a vector of values -kvantRang <- function(dat) { - # quantile ranks - datp <- round((((rank(dat, na.last="keep", ties.method="average")-0.5) / sum(!is.na(dat))) * 100), 0) - - # coloring - datpCol <- datp - datpCol[is.na(datp)] <- "." - datpCol[datp <= 10 & !is.na(datp)] <- paste0("{\\color{BrickRed}", datpCol[datp <= 10 & !is.na(datp)], "}") # values equal or lower are bold red - datpCol[datp >= 11 & datp <= 25 & !is.na(datp)] <- paste0("{\\color{Orange}", datpCol[datp >= 11 & datp <= 25 & !is.na(datp)], "}") # values between (or equal) are red - datpCol[datp >= 75 & datp <= 89 & !is.na(datp)] <- paste0("{\\color{Chateau Green}", datpCol[datp >= 75 & datp <= 89 & !is.na(datp)], "}") # values between (or equal) are blue - datpCol[datp >= 90 & !is.na(datp)] <- paste0("{\\color{Blue Stone}", datpCol[datp >= 90 & !is.na(datp)], "}") # values equal or larger are bold blue - - return(datpCol) -} - -# Komponente: Število vpisanih, Št. odgovorov in % Odgovorov v tabelah 1.4. 1.5 in 1.6 niso obarvani) -kvantRang1 <- function(dat) { - # quantile ranks - datp <- round((((rank(dat, na.last="keep", ties.method="average")-0.5) / sum(!is.na(dat))) * 100), 0) - - datpCol <- datp - datpCol[is.na(datp)] <- "." - datpCol[datp <= 100 & !is.na(datp)] <- paste0(datpCol[datp <= 100 & !is.na(datp)]) # - return(datpCol) - -} - - -# Ker imata komponenti Ustreznost KT in kompetence drugačni merski lestvicu ju tudi drugače barvamo. Glej poročilo izvajalca Tabela 1.5. -kvantRang2 <- function(dat) { - # quantile ranks Update: to je funkcije še iz 2015, ki jo bomo v kraktem (2019) nadomestili z dplyr - #mutate(numbers_per_K_percent_rank = percent_rank(izvajalec.ocena.SKUPAJ)) - datp <- round((((rank(dat, na.last="keep", ties.method="average")-0.5) / sum(!is.na(dat))) * 100), 0) - - datpCol <- datp - datpCol[is.na(datp)] <- "." - datpCol[datp <= 10 & !is.na(datp)] <- paste0("{\\color{Orange}", datpCol[datp <= 10 & !is.na(datp)], "}") # values equal or lower are bold red - datpCol[datp >= 11 & datp <= 25 & !is.na(datp)] <- paste0("{\\color{Orange}", datpCol[datp >= 11 & datp <= 25 & !is.na(datp)], "}") # values between (or equal) are red - datpCol[datp >= 75 & datp <= 89 & !is.na(datp)] <- paste0("{\\color{BrickRed}", datpCol[datp >= 75 & datp <= 89 & !is.na(datp)], "}") # values between (or equal) are blue - datpCol[datp >= 90 & !is.na(datp)] <- paste0("{\\color{BrickRed}", datpCol[datp >= 90 & !is.na(datp)], "}") # values equal or larger are bold blue - return(datpCol) - -} - - -# latex format rotation on inout vector -# Rotiramo imena stolpcev v tabelah za 90 stopinj -latex.rotate <- function(x) { - as.character(lapply(x, function(y) paste('\\rotatebox{90}{', y, '\\,}', sep=''))) -} - - -# programme row names format -# Uporabljamu pri izpisu tabel za poročila za Programe (glej koda-programi).r in poročila za fakulteto (koda-fakulteta.r) -# rownames <- izpis imena izvajalca in njegovega predmeta (glej Poročilo za fakulteto, tabela 1.4: Povprečja izvajalcev pri predmetih) -formatProgImena <- function(imena, rankby) { - imena <- gsub(" (izredna izvedba)", "", imena, fixed=TRUE) - ranking <- rank(-suppressWarnings(rankby), ties="first", na.last="keep") - ranking[is.na(ranking)] <- "" - imena <- paste0("\\makebox[0.75cm][l]{", ranking, ".}", Hmisc::latexTranslate(imena)) - imena <- paste("\\begin{Complement}", imena, "\\end{Complement}") - return(imena) -} - -# remove title form name - this function assumes that the name starts with the first capitalized letter after a period (".") -titula.rm <- function(x) { - pozicija <- unlist(gregexpr("\\. [[:upper:]ČŠ???]", x,""))[1] # in some cases regex didn't find ČŠ? so these are spcified seperatly - if (pozicija != -1) { - ime <- substr(x, pozicija + 2 , nchar(x)) - } else { - ime <- x - } - return(ime) -} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/FDV_imena_programov.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/FDV_imena_programov.R deleted file mode 100644 index 82aa349c9..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/FDV_imena_programov.R +++ /dev/null @@ -1,134 +0,0 @@ -# Created by Miha 30.10.2019 # -#-------------------------- NAROČILO FDV ------------------------------# -# Ker se imena stari hali novih programov podvajajo -# v poročilih ni razvidno za kateri program gre, -# zato bomo le za FDV programe ločil glede na ID, in sicer - # Programe bomo poimenovali v vseh bazah in šifrantu programov - # Družboslovna informatika UNI stari program ima ID = 1000229 - # Družboslovna informatika UNI prenovljeni program ima ID = 1001021 - prenPredh <- function(data, program, idprog) { - # DRUŽBOSLOVNA INFORMATIKA PRENOVLJENI PREDHODNI - data[,program] <- - ifelse( - data[,idprog] == "1000229", - "Družboslovna informatika (predhodni)", - ifelse( - data[,idprog] == "1001021", - "Družboslovna informatika (prenovljeni)", - #------------------------------# - # KOMUNIKOLOGIJA - MEDIJSKE IN KOMUNIKACIJSKE ŠTUDIJE - ifelse( - data[,idprog] == "1000237", - "Komunikologija - medijske in komunikacijske študije (predhodni)", - ifelse( - data[,idprog] == "1001023", - "Komunikologija - medijske in komunikacijske študije (prenovljeni)", - #--------------------------------- - # KOMUNIKOLOGIJA - TRŽNO KOMUNICIRANJE IN ODNOSI Z JAVNOSTMI - ifelse( - data[,idprog] == "1000238", - "Komunikologija - tržno komuniciranje in odnosi z javnostmi (predhodni)", - ifelse( - data[,idprog] == "1001022", - "Komunikologija - Tržno komuniciranje in odnosi z javnostmi (prenovljeni)", - #--------------------------------- - # KULTUROLOGIJA - ifelse( - data[,idprog] == "1001024", - "Kulturologija - Študije kultur in ustvarjalnosti (prenovljeni)", - ifelse( - data[,idprog] == "1000232", - "Kulturologija (predhodni)", - #--------------------------------- - # MEDNAORDNI ODNOSI - ifelse( - data[,idprog] == "1000233", - "Mednarodni odnosi (predhodni)", - ifelse( - data[,idprog] == "1001026", - "Mednarodni odnosi (prenovljeni)", - #--------------------------------- - # NOVINARSTVO - ifelse( - data[,idprog] == "1000234", - "Novinarstvo (predhodni)", - ifelse( - data[,idprog] == "1001025", - "Novinarstvo (prenovljeni)", - #--------------------------------- - # POLITOLOGIJA - OBRAMBOSLOVJE - ifelse( - data[,idprog] == "1000239", - "Politologija - obramboslovje (predhodni)", - ifelse( - data[,idprog] == "1001029", - "Obramboslovje (prenovljeni)", - #--------------------------------- - # Politologija - Javne politike in uprava - ifelse( - data[,idprog] == "1000235", - "Politologija - študije demokracije in upravljanja (predhodni)", - ifelse( - data[,idprog] == "1001031", - "Politologija - Javne politike in uprava (prenovljeni)", - #--------------------------------- - # Politologija - študije politike in države - ifelse( - data[,idprog] == "1000230", - "Politologija – študije politike in države (predhodni)", - ifelse ( - data[,idprog] == "1001030", - "Politologija – študije politike in države (prenovljeni)", - #--------------------------------- - # Sociologija - analitska sociologija - ifelse ( - data[,idprog] == "1000231", - "Analitska sociologija (predhodni)", - ifelse( - data[,idprog] == "1001027", - "Sociologija (prenovljeni)", - #--------------------------------- - # Sociologija -kadrovski medžment - ifelse ( - data[,idprog] == "1000240", - "Sociologija - upravljanje organizacij, človeških virov in znanja (predhodni)", - ifelse ( - data[,idprog] == "1001028", - "Sociologija - kadrovski menedžment (prenovljeni)", - #--------------------------------- - ifelse ( - data[,idprog] == "1000236", - "Evropske študije - družboslovni vidiki (predhodni)", - ifelse ( - data[,idprog] == "1000241", - "Družboslovna informatika (predhodni)", - data[,program] - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - return(data) - } - #-------------------------- NAROČILO FDV ------------------------------# - - \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/agregati.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/agregati.R deleted file mode 100644 index a63fdba00..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/agregati.R +++ /dev/null @@ -1,274 +0,0 @@ -# Created by Miha 3.9.2019 - -########################## -# AGREGAT OCEN KOMPONENT # -########################## -#------------------- DESCRIPTION --------------------# -# Ker imamo v primeru Trendov, veliko predmetov, kjer -# pri predmetu v določenem študijskem letu ni bilo -# dovolj odgovor (manj kot štiri), bomo naredili -# AGREGATE, to pomeni, da bomo za vsako zaporedje -# študijskih let, kjer je število odgovorov večje -# kot 4, naredili dodatni stolpec, ki bo agregat -# povprečja skupneg aštevila odgovor za zaporedni -# študijski leti, kjer je vsota odgovorov enaka ali -# večja 4. -# Agegati nastopajo povsod tam, kjer so TRENDI -#----------------- //DESCRIPTION// ------------------# - - -# Priprava podatkov za tabele (barvanje, računanje, okelpaji) -source("Evalvacija/R/funkcije/agregati_funkcije.R", encoding = "UTF-8") -#---------------------------------------------------------------------# - -#------------------------ IMPORT DATA "BREZ CENZURE" -----------------------------# -#' @IMPORTANT!!! iz prejšnjih študijsih let imamo v bazi PRED tudi podatke za -#' # anketo PO, ki pa jih ignoriramo, saj smo naredili ločen izvoz za PO razen -#' za študijsko leto 14/15 ko smo delali še testno. - - -# Agregati za IZVAJALCA (podatki po letih) ------------------------ -ag.izv <- list.files(path = "../../Agregati/FDV", pattern = "izv") - -# Agregati za PREDMET (Anketa PRED, podatki po letih) ------------- -ag.pred <- list.files(path = "../../Agregati/FDV", pattern = "pred") - -# Agregati za PREDMET (Anketa PO, podatki po letih) ------------- -ag.po <- list.files(path = "../../Agregati/FDV", pattern = "po") - - -# PREVERI!!!!!!!!!!! -#-------------------- SET WORKING DIREKTORY -----------------------# -# Check which PC we are working from: WORk OR HOME -fpath <- file.path("C:/MIHA DELO/FDV PROJEKT EVALVACIJE UL/EVALVACIJE 2018_2019 PREDELAVA/AVGUST UPDATE KODE/Agregati/FDV") - -if (!dir.exists(fpath)){ - output_dir <- "E:/Work/Vasja Vehovar/EVALVACIJE 2018_2019 PREDELAVA/AVGUST UPDATE KODE/Agregati/FDV" - setwd(output_dir) -} else { - setwd(fpath) -} -#------------------ //SET WORKING DIREKTORY// ---------------------# - - -# Agregat za Izvajalce # -#=====================# -agr.izv <- - lapply(ag.izv, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - -# Agregat za predmete (PRED) # -#============================# -agr.pred <- - lapply(ag.pred, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - -# Agregat za predmete (PO, KT, KOMEPTENCE IN PRAKSO) # -#====================================================# -agr.po <- - lapply(ag.po, function(x) - read.csv2(x, stringsAsFactors = FALSE, header = TRUE)) - -#---------------------- //IMPORT DATA "BREZ CENZURE"// ---------------------------# - - -#------------------ GET DATA FOR AGREGAT PURPOSES -------------------# -# Means, number os answers and ID of all lecturers or courses -# which will be implemented as AGREGATI - -# PRED ------------ -agreg.pred <- lapply(agr.pred, function(x) agregat(x, namen = "PRED")) - - -# PO (inlcuding kompetence, praksa, KT) ----- -agreg.po <- lapply(agr.po, function(x) agregat(x, namen = "PO")) - - -# IPP -------------- -agreg.ipp <- lapply(agr.izv, function(x) agregat(x, namen = "IPP")) -agreg.ipp <- lapply(agreg.ipp, function(x) { - x$NAZIV.PEDAGOGA <- odstNaziv(x$NAZIV.PEDAGOGA) - return(x) -}) - -agreg.ipp <- lapply(agreg.ipp, function(x) { - x$IPP <- paste0(x$NAZIV.PEDAGOGA, " (",x$ime.predmeta ,")") - return(x) -}) - -# IZV ------------- -agreg.izv <- lapply(agr.izv, function(x) agregat(x, namen = "IZV")) -#---------------- //GET DATA FOR AGREGAT PURPOSES// -----------------# - - -#------------------ EXPORT DATA FOR ARHIV -----------------# -# Export into excel according to year -# For Arhiv pruposes and for Latex tables purposes -#' @Update: Now (9.9.2019) we will use this data for -#' trends -library(xlsx) -files <- list(agreg.ipp, agreg.izv, agreg.pred, agreg.po) -name <- c("IPP_agregat", "IZV_agregat", "PRED_agregat", "PO_agregat") -for (i in 1:unique(sapply(files, length))) { - for (ii in 1: length(files)) { - write.xlsx( - x = files[[ii]][[i]], - file = paste0("Agregati data/",name[ii], ".xlsx"), - sheetName = gsub("\\/", "_", unique(files[[ii]][[i]]$leto)), - append = TRUE - ) - } -} -#---------------- //EXPORT DATA FOR ARHIV// ---------------# - - -imen.c <- function(x) { - ifelse( - !"N_anket_po_izpitu" %in% colnames(x), - colnames(x)[colnames(x) == "N_anket"] <- - "N_anket_po_izpitu", - colnames(x) - ) - return(x) - -} - -agreg.po <- lapply(agreg.po, imen.c) - -#------------------- PRAPARE DATA FOR AGREGATION -------------------# -out.pred <- NULL -out.po <- NULL -out.ipp <- NULL -out.izv <- NULL - -# Načeloma imamo za vse namene (PRED, PO, IPP) podatke -# za enako število let, zato v loopu vzamemo kar -# seq_along(agreg.pred) -for (i in seq_along(agreg.pred)) { # Testno delamo za štiri leta, ker imamo trenutno 5 let le za FDV in FGG - # Prepare data for ANKETA PRED --------------------------- - df.pred <- - agreg.pred[[i]][grepl( - "zadovoljstvo_mean|usklajenost_mean|samostojnost_mean|literatura_mean|obvescenost_mean|informiranost_mean|znanje_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime", - colnames(agreg.pred[[i]]) - )] - # Write data - out.pred[[i]] <- df.pred - # Rbind in data frame with years - agregati.pred <- do.call("rbind", out.pred) - - # Prepare data for ANKETA PO --------------------------- - df.po <- - agreg.po[[i]][grepl( - "vsebine_mean|naloge_mean|kriteriji_mean|kompetence_mean|krediti_mean|\\|ime.predmeta|leto|program.studentov|program.studentov.ime", - colnames(agreg.po[[i]]) - )] - # Write data - out.po[[i]] <- df.po - # Rbind in data frame with years - agregati.po <- do.call("rbind", out.po) - - # Prepare data for ANKETA PRED IPP --------------------------- - df.ipp <- - agreg.ipp[[i]][grepl( - "kakovost_mean|pripravljenost_mean|razumljivost_mean|zanimivost_mean|kriticnost_mean|korektnost_mean|znanje_mean|\\|ime.predmeta|NAZIV.PEDAGOGA|izvajalec.sifra|leto|IPP", - colnames(agreg.ipp[[i]]) - )] - # Write data - out.ipp[[i]] <- df.ipp - # Rbind in data frame with years - agregati.ipp <- do.call("rbind", out.ipp) - - # Prepare data for ANKETA PRED IZVAJALEC --------------------------- - df.izv <- - agreg.izv[[i]][grepl( - "kakovost_mean|pripravljenost_mean|razumljivost_mean|zanimivost_mean|kriticnost_mean|korektnost_mean|znanje_mean|\\|ime.predmeta|predmet.sifra|NAZIV.PEDAGOGA|izvajalec.sifra|leto", - colnames(agreg.izv[[i]]) - )] - # Write data - out.izv[[i]] <- df.izv - # Rbind in data frame with years - agregati.izv <- do.call("rbind", out.izv) -} - -#----------------- //PRAPARE DATA FOR AGREGATION// -----------------# - - -# x <- agregati.pred %>% -# split(agregati.pred$ime.predmeta, agregati.pred$leto) -# x <- x[["BP Zgodovina mednarodnih odnosov"]] - -# Split evaluations for courses/elcturer by predmet šifra - -# x <- x[["BP Retorika javnih diskurzov"]] -# x <- x[["BP Televizijsko novinarstvo in novi mediji"]] -# x <- agregati.pred %>% -# split(agregati.pred$ime.predmeta, agregati.pred$leto) -# x <- x[["BD Drugi tuji strokovni jezik I: angleščina"]] - - -# Podatke v listu bomo za potrebe trendov -# najprej ločili glede na šifro predmeta in/ali šifro izvajalca -#' na ločenih podatkih naredili kombinacijo (glej funkcijo @kolone) -# in nato vse skupaj združili. -#' Funkcija @kolone poleg podatkovneg okvirja vrne tudi -# stolpec oz. column po imenu "stolpec", kjer -# vrednost "Stolpec 1" pomeni, da bomo v lateh naredili -# nov stolpec, kamor bomo zapisali vrednost povprečja ter -# "Stolpec 2" pomeni, da bomo naerdili ŠE en dodaten stolpec -# v latex tabeli. -# Če je verdnost NA, pomeni, da bomo predmet zapisali samo v en stolpec - -# Anketa RPED -agregati.pred <- agregati.pred %>% - split(agregati.pred$ime.predmeta, agregati.pred$leto) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -# Anketa PO -agregati.kom <- agregati.po[grepl("predmet.ocena.kompetence_mean|N_anket_po_izpitu|ime.predmeta|leto", colnames(agregati.po))] -agregati.KT <- agregati.po[grepl("predmet.ocena.krediti_mean|N_anket_po_izpitu|ime.predmeta|leto", colnames(agregati.po))] - -agregati.po <- agregati.po %>% - # V anketi Po se skupno povprečje računa brez kompetenc in kT - select(-c('predmet.ocena.kompetence_mean',"predmet.ocena.krediti_mean")) %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.po$ime.predmeta, agregati.po$leto) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -# Agregati Kopmetence -agregati.kom <- agregati.kom %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.kom$ime.predmeta, agregati.kom$leto) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - - -# Agregati Kreditne točke -agregati.KT <- agregati.KT %>% - rename(N_anket = "N_anket_po_izpitu") %>% - split(agregati.KT$ime.predmeta, agregati.KT$leto) %>% - lapply(., function(x) kolone(x, KTtrend = TRUE)) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - - -# Anketa IPP -agregati.ipp <- agregati.ipp %>% - split(agregati.ipp$IPP, agregati.po$leto) %>% - .[sapply(., nrow) > 0] %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - -# Anketa IZV -agregati.izv <- agregati.izv %>% - split(agregati.izv$izvajalec.sifra) %>% - lapply(kolone) %>% - do.call(plyr::rbind.fill, .) %>% - oklepaj(., agregati = TRUE) - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/agregati_funkcije.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/agregati_funkcije.R deleted file mode 100644 index 61c2ce84a..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/agregati_funkcije.R +++ /dev/null @@ -1,625 +0,0 @@ -# Created on 17.9.2019 - -# Funkcija, ki pripravi trende, agregate in latex tabele - -#------------------- DESCRIPTION --------------------# -# Ker imamo v primeru Trendov, veliko predmetov, kjer -# pri predmetu v določenem študijskem letu ni bilo -# dovolj odgovor (manj kot štiri), bomo naredili -# AGREGATE, to pomeni, da bomo za vsako zaporedje -# študijskih let, kjer je število odgovorov večje -# kot 4, naredili dodatni stolpec, ki bo agregat -# povprečja skupnega števila odgovor za zaporedni -# študijski leti, kjer je vsota odgovorov enaka ali -# večja 4. -# Agegati nastopajo povsod tam, kjer so TRENDI -# main koda je poimenovana "agregati.r" -# Za potrebe računanja in izdelave novih stolpvec pa -# bomo napisali novo skripto, ki -# bo skrbela, da bodo izpisi v skripti "agregati.r" -# in slirpit "kodaPDF_fakulteta" delovali -# pravilno, kar pomeni, da se bodo povprečja -# obarvala v skladu z metodologijo, v primeru -# majhenga števila odgovorov bodo povprečja v oklepajih -# prav tako pa bodo agregati zračunani po kombinaciji, -# kjer bomo dodali stolpec a in stolpec b. -# Poleg novih stolpvec je potrebno podatke najprej -#----------------- //DESCRIPTION// ------------------# - - -#--------------------------- AGREGATI ------------------------------# -# Function which will take data for multiple years (TRENDI) -# and get all evaluation for the courses and the lecturer -# that had less than four answer for students -#' @PURPOSE: the main prupose of this is that a lot of courses or -#' lecturers are without evaluation due to not enough data -#' therefore in all reports that include trends we will do -#' agregates for different students year and show two new columns -#' in \Latex tables. -#' @IMPORTANT TALE FUNKCIJA NE BI BILA POTREBNA SAJ BI LAHKO -#' PODATKE O PREDMETIH DOBILI TUDI IZ povprecja.izvajalca -#' in povprecja.predmeti A SE MI JE DALO KOMPLICIRATI :) -#' FUNCKIJA PA JE POTREBNA; KER SEM TRENDE ZAPISAL GLEDE -#' NA ŠTUDIJSKI PROGRAM, KI PA GA BOMO TUDI POTREBOVALI :) -# Because we have evaluations -# for different student programs -# we need to calculate total average -# for the IPP and the same -# goes for the course and lecturer -#' @param x data frame we wich to tidy for \LATEX table purposes -#' @param namen grouping variables we will calculate mean and -#' number of answers for -#' @return A data.frame. -#' @author MM (mat.miha@@gmail.com) -agregat <- function(x, namen = "IPP") { - # Filter -------------------------------- - # Check if TRENDS are for - if (namen == "IPP"){ # IPP - group_var <- c("ime.predmeta", - "izvajalec.sifra") - } else if (namen == "IZV"){ #IZVAJALEC - group_var <-"izvajalec.sifra" - } else if (namen == "PRED" | namen == "PO"){ - group_var <-"ime.predmeta" - } - # Define vector also globally for export - # purposes - namen <<- namen - #----------------------------------------- - - # Group calculate mean and return data --- - x <- x %>% - group_by_at(vars(group_var)) %>% - # Get only courses where there wer less - # than 4 answers according to lecturer - #' @NOTE: ker smo v študijskem letu 14/15 in 15/16 ocene - #' za anekto PRED in PO izpitu zapisali v skupno bazo - #' je število anket za anketo PO izpitu v stolpcu - #' N_anket_po_izpitu. Za preostala leta pa je tt - #' stolpec poimenovan "N_anket", ker imamo ločeni - #' bazi za anekto PRED in PO - filter({ - if ("N_anket_po_izpitu" %in% names(.) & namen == "PO") - sum(N_anket_po_izpitu) < 4 - else - sum(N_anket) < 4 - }) %>% - # Dont need courses or lecturers - # without answers - filter({ - if ("N_anket_po_izpitu" %in% names(.) & namen == "PO") - N_anket_po_izpitu > 0 - else - N_anket > 0 - }) %>% - mutate_at(vars(contains("_mean")), funs(. * N_anket)) %>% - # Total Course average - mutate_at(vars(contains("_mean")), funs(sum(., na.rm = TRUE) / sum(N_anket, na.rm = TRUE))) %>% - # Total course number of answers - mutate(N_anket = sum(N_anket, na.rm = TRUE)) %>% - # Omit duplicated courses and/or lecturers - filter( - if (namen != "PRED" && namen != "PO") - !duplicated(izvajalec.sifra) & - !duplicated(predmet.sifra) - else !duplicated(predmet.sifra) - ) %>% - as.data.frame() - #--------------------------------------- - return(x) -} -#------------------------- //AGREGATI// ----------------------------# - - -#------------------ CALCULATE MEAN AND NEW NUMBER OF ANSEWRS ---------------------# -agregatMean <- function(x) { - x <- x %>% - mutate_at(vars(contains("_mean")), funs(. * N_anket)) %>% - # Total Course average - mutate_at(vars(contains("_mean")), funs(sum(., na.rm = TRUE) / sum(N_anket, na.rm = TRUE))) %>% - # Total course number of answers - mutate(N_anket = sum(N_anket, na.rm = TRUE)) %>% - # Get years whit not enough data latex table purposes - mutate(leto = paste(leto, collapse=", ")) %>% - # Remove duplicated names - filter(!duplicated(ime.predmeta)) %>% - # Calculate Total Mean - mutate(SKUPAJ.ag = round(rowMeans(select(., contains("_mean")), na.rm = TRUE),1)) - - return(x) -} -#---------------- //CALCULATE MEAN AND NEW NUMBER OF ANSEWRS// -------------------# - - -#----------------------- NI POUČEVAL, OKLEPAJI IN BARVANJA -----------------------------# -# Ker nekaterih izvajalcev prejšnjih letih še ni bilo imamo nekje manjkajoče vredosti -# ko podatke iz različnih let združimo skupaj. Zato najprej vsa imena glede na ID -# pedagoga uredimo in združimo v enem stolpcu, ki bo v Latex tabeli -# Manjkajoče podatke nato ločimo na dva načina: -# 1) ".", kjer ni dovolj odgovorov -# 2) "-", če pedagog takrat še ni poučeval - -# Na ta način bomo lahko zapisali oklepaja string številom -# Funkcija nastopa v funkciji oklepaj, glej sppodaj -num <- function(x) { - x <- as.numeric(gsub("\\D", "", x)) - return(x) -} - -# Dvojni oklepaji pri trendih (glej skripto kodaPDF_fakulteta.r) -oklepaj <- function(x, agregati = FALSE, KT = FALSE) { - # Preverimo, ali bomo oklepaje zapisali - # za agregate. V tem primeru so povprečja že obarvana - # in potrebujemo samo dodati oklepaje kjer os potrebni - if (agregati == TRUE) { - x.df <- x[grepl("N_anket", colnames(x))] - x.tot <- x[grepl("SKUPAJ", colnames(x))] - x.tot[, 1] <- - ifelse( - num(x.df[, 1]) < 5 & !is.na(num(x.df[, 1])), - paste0("((", x.tot[, 1], "))"), - ifelse( - num(x.df[, 1]) > 4 & - num(x.df[, 1]) < 10, - paste0("(", x.tot[, 1], ")"), - x.tot[, 1] - ) - ) - - x[colnames(x.tot)] <- x.tot - return(x) - } else { - # Če ne delamo za agregate ampak za izvajalce ali predmete - # Najprej povprečja pobarvamo nato pa k povprečjem, - # dodamo še oklepaje, ki bodo predstavljali število - # odgovorov - x.mean <- x[grepl("SKUPAJ|Skupaj", colnames(x))] - x.mean <- formatval(x.mean, KTtrend = KT) - # Check if there were less than 10 or 4 ansers so we will - # also add parenthesis - x.df <- - x[grepl("št. odgovorov|Skupaj|SKUPAJ", colnames(x))] - x.df[, 2] <- x.mean - # Add parenthesis to total mean where number of - # answers is less than 4 (()) or les than 10 () - # If column is flass numeric for calculating purposes - x.df[, 2] <- - ifelse( - num(x.df[, 1]) < 5 & !is.na(num(x.df[, 2])), - paste0("((", x.df[, 2], "))"), - ifelse(num(x.df[, 1]) > 4 & - num(x.df[, 1]) < 10, paste0("(", x.df[, 2], ")"), x.df[, 2]) - ) - x[colnames(x.df)[2]] <- x.df[, 2] - return(x) - } -} - -# Funkcija oklepaj pa nastopa v funkciji poucNIpouc -# Funkcija, ki bo ločila premajhno -# stevilo odgovorov od nepoucevanja -# namen: Izvajalec id|Izvajalec|Predmet id -poucNIpouc <- function(x, namen = "Izvajalec", krediti = FALSE) { - # Podatki za izvajalca za posamezno leto - # vedno sestojijo iz 10-hi stolpcev (šifre izvajalca - # ne upoštevamo predstavlja pa dodaten stolpec) Zato - # preverimo, za koliko let imamo podatke - # Načeloma v 2019/2020 to nb bo več igralo vlogo - # ker bodo vse članice imele podatke za 5 let - # trende pa prikazujemo za 5 let - # Torej bomo imeli 50 stolpcev. - # Prvi stolpec so šifre izvajalcev - # ki so unikatne - colnames(x) <- make.unique(colnames(x)) - # Preverimo za koliko let imamo podatke - st.col <- length(x[grepl("SKUPAJ|Skupaj", colnames(x))]) - # Letos imamo še štiri leta - # Data - x1 <- oklepaj(x[grepl("\\.x$", colnames(x))], KT = krediti) - x2 <- oklepaj(x[grepl("\\.y$", colnames(x))], KT = krediti) - x3 <- oklepaj(x[grepl("\\.x.1$", colnames(x))], KT = krediti) - x4 <- oklepaj(x[grepl("\\.y.1$", colnames(x))], KT = krediti) - if (st.col == 5) { - x5 <- oklepaj(x[!grepl("\\.x$|\\.y$|\\.x.1$|\\.y.1$|Predmeti|Izvajalec id", colnames(x))], KT = krediti) - } - # V kolikor ime izvajalca/predmeta v določenem - # letu manjka, to pomeni, da ga ni bilo - # zato NA nadomestimo z "-" - x1[is.na(x1[grepl(paste0(namen), colnames(x1))]), 2:ncol(x1)] <- "--" - x2[is.na(x2[grepl(paste0(namen), colnames(x2))]), 2:ncol(x2)] <- "--" - x3[is.na(x3[grepl(paste0(namen), colnames(x3))]), 2:ncol(x3)] <- "--" - x4[is.na(x4[grepl(paste0(namen), colnames(x4))]), 2:ncol(x4)] <- "--" - if (st.col == 5) { - x5[is.na(x5[grepl(paste0(namen), colnames(x5))]), 2:ncol(x5)] <- "--" - } - # Cbind into final data frame - if (st.col == 4) { - x.out <- cbind(x1, x2, x3, x4) - } else { - x.out <- cbind(x1, x2, x3, x4, x5) - } - # Finalize data - x[colnames(x.out)] <- x.out - return(x) -} -#--------------------- //NI POUČEVAL, OKLEPAJI IN BARVANJA// ---------------------------# - - -# Prepare each data frame for Latex tables -# FDV ima za isto šifro predmeta različne izvedbe in imena. Tako je enkrat -# Tak predmeet izredna izvedba spet drugič (drugo leto) je to redna izvedba -# Tako je težko povezati izvajalce pri predmetu. -# Krr podtke mrgamo po imenih IPP, bomo prepone nazive po posaemznih letih -# izvajalcev odstranili. -odstNaziv <- function(x) { - x <- x %>% - gsub("prof. ddr. ", "", ., fixed = TRUE) %>% - gsub("doc. dr. in lekt. dr. ", "", ., fixed = TRUE) %>% - gsub("red. prof. dr. ", "", ., fixed = TRUE) %>% - gsub("zn. svet. dr. ", "", ., fixed = TRUE) %>% - gsub("le. mag. ", "", ., fixed = TRUE) %>% - gsub("le. ", "", ., fixed = TRUE) %>% - gsub("izr. ", "", ., fixed = TRUE) %>% - gsub("izr. prof. ddr. ", "", ., fixed = TRUE) %>% - gsub("izr. prof. dr. ", "", ., fixed = TRUE) %>% - gsub("dr. ", "", ., fixed = TRUE) %>% - gsub("doc. dr. ", "", ., fixed = TRUE) %>% - gsub("asist. ", "", ., fixed = TRUE) %>% - gsub("akad. prof. dr. ", "", ., fixed = TRUE) %>% - gsub("asist. dr. ", "", ., fixed = TRUE) %>% - gsub("pred. mag. ", "", ., fixed = TRUE) %>% - gsub("mag. ", "", ., fixed = TRUE) %>% - gsub("izr. prof. ", "", ., fixed = TRUE) %>% - gsub("doc. ", "", ., fixed = TRUE) %>% - gsub("akad. prof. ", "", ., fixed = TRUE) %>% - gsub("prof. ", "", ., fixed = TRUE) %>% - gsub("viš. ", "", ., fixed = TRUE) %>% - gsub("pred. ", "", ., fixed = TRUE) %>% - gsub("zasl. ", "", ., fixed = TRUE) %>% - gsub("strok. sod. ", "", ., fixed = TRUE) %>% - gsub("spec. ", "", ., fixed = TRUE) %>% - gsub("znan. sod. ", "", ., fixed = TRUE) %>% - gsub("lekt. ", "", ., fixed = TRUE) - - return(x) -} - -# x <- agregati.izv[agregati.izv$ime.predmeta =="SJ1 Zgodovinsko jezikoslovje 1",] -# -# t <- agregati.izv %>% -# split(agregati.izv$izvajalec.sifra) -# -# x <- t[["3000018_FF_285"]] -# KOLONA -kolone <- function(x, KTtrend = FALSE) { - # Ker KT barvamo posebej oz drugače - # jih je ptorebno ločiti: - if (KTtrend == FALSE) { - KTtrend = FALSE - } else { - KTtrend = TRUE - - } - # Preverimo ali imamo podatke - # za 5 let. V letu 2018/19 - # Imamo podatke za 5 let le - # za FDV in FGG. V Letu 2020 - # Pa bomo imeli za vse clanice - # Check if we have data for 5 years - # UPDATE 18.9.2019: !!!!!! - # FDV ima ista imena predmetov za razliÄŤne izvedbe (P in Z) - # zato prihaja do podvajanj let. Ker ima fdv tudi iste sifre - # in po nekaterih letih razlicna imena predmetov ne moremo - # narediti merge na ostnovi ID predmeta ampak imena - # Ker pa prihaja do podvajanj v nekaterih primerih bomo - # podvojene verdnsoti odstranili. Sicer to ni pravilno - # a zaradi narave sifer predmetov FDV drugace ne gre. - if(length(x$leto) >= 5){ - x <- x[!duplicated(x[c("leto")]), ] - } - # Preverimo za koliko let je bilo premalo odgovorov - if (length(x$leto) == 5) { - if (sum(x$N_anket[1:2]) >= 4 & sum(x$N_anket[3:5]) >= 4) { - kolon.first <- x[1:2, ] - kolon.first <- agregatMean(kolon.first) - kolon.first <- formatval(kolon.first, KTtrend = KTtrend, Agregati = TRUE) - - kolon.second <- x[3:5, ] - kolon.second <- agregatMean(kolon.second) - kolon.second <- formatval(kolon.second, KTtrend = KTtrend, Agregati = TRUE) - - kolona <- rbind(kolon.first, kolon.second) - kolona$stolpec <- c("Stolpec 1", "Stolpec 2") - - - } else if (sum(x$N_anket[1:3]) >= 4 & - sum(x$N_anket[4:5]) >= 4) { - kolon.first <- x[1:3, ] - # Mean and n - kolon.first <- agregatMean(kolon.first) - kolon.first <- formatval(kolon.first, KTtrend = KTtrend, Agregati = TRUE) - - kolon.second <- x[4:5, ] - kolon.second <- agregatMean(kolon.second) - kolon.second <- formatval(kolon.second, KTtrend = KTtrend, Agregati = TRUE) - - kolona <- rbind(kolon.first, kolon.second) - #kolona <- kolona[!is.na(kolona$izvajalec.sifra),] - kolona$stolpec <- c("Stolpec 1", "Stolpec 2") - } else { - kolona <- agregatMean(x) - kolona <- formatval(kolona, KTtrend = KTtrend, Agregati = TRUE) - } - - } else if (length(x$leto) == 4) { - if (sum(x$N_anket[1:2]) >= 4 & sum(x$N_anket[3:4]) >= 4) { - kolon.first <- x[1:2, ] - kolon.first <- agregatMean(kolon.first) - kolon.first <- formatval(kolon.first, KTtrend = KTtrend, Agregati = TRUE) - - kolon.second <- x[3:4, ] - kolon.second <- agregatMean(kolon.second) - kolon.second <- formatval(kolon.second, KTtrend = KTtrend, Agregati = TRUE) - - kolona <- rbind(kolon.first, kolon.second) - - # V primer FF so bili v špifrantu napačni podatki - # zato naredimo to - kolona <- kolona[1:2,] - kolona$stolpec <- c("Stolpec 1", "Stolpec 2") - - } else { - kolona <- agregatMean(x) - kolona <- formatval(kolona, KTtrend = KTtrend, Agregati = TRUE) - } - - } else if (length(x$leto) == 3) { - if (sum(x$N_anket) >= 4) { - kolona <- agregatMean(x) - kolona <- formatval(kolona, KTtrend = KTtrend, Agregati = TRUE) - } else{ - kolona <- NULL - } - } else if (length(x$leto) == 2) { - if (sum(x$N_anket) >= 4) { - kolona <- agregatMean(x) - kolona <- formatval(kolona, KTtrend = KTtrend, Agregati = TRUE) - - } else { - kolona <- NULL - } - } else if (length(x$leto) == 1) { - kolona <- x - kolona[] <- "." - #kolona <- NULL - } - - return(kolona) - -} - - - -# Če obstajajo agregati želimo v Latex tabeli trendov -# to primerno označiti, in sicer v kolikor so agregati -# za en stolpec, bomo to označili z "a" v kolikor gre za dva stolpca -# bomo to označili z "b". Torej vse "NA-je" bomo zamenjali z "a" ali "b" -# Ko bodo stolpci ustrezno zamenjani in novi stolpci agregatov dodani -# bomo tudi obarvali povprečja in znotraj funkcije naredili tudi latex tabelo -# Update 11.10.2019 Po novem bomo funkcijo uporabili tudi za pripravo -# podatkov za indivudualne trende in habilitacijsko komisijo, ker -# Obsobje: PRVA STRAN PDFJA:pride v upoštev pri trendih izvajalca in habilitacijske -# ko na prvi strani zapišemo obdobje podatkov (študijska leta) -# moramo vstavit agregate - -prepare.agregati <- function(x, agregTip = "izvajalci", imetabele = "", habiliTrend = FALSE, obdobje = FALSE) { - # Najprej pridobimo za koliko let imamo podatke - df <- x[!grepl(pattern = paste0(agregTip,"|SKUPAJ.ag|leto|stolpec"), colnames(x))] - leto <- x[grepl("leto", colnames(x))] - - # NAto Preverimo ali imamo eno ali dve leti, - # Torej ali imamo agregat za dve leti - if ("stolpec" %in% colnames(x)) { - # Če stolpec obstaja pomeni, da - # moramo v latex tabeli dodatni dva - # nova stolpca, ki bosta predstavljala - # povprečji za predmete, kjer v preteklosti - # posamezen predmet ni imel dovolj ocen - # Nato pripravimo dodatna stolpca, ki bosta vsebovala povprečje in leto - # na podlagi katerega bomo v stolpec ocen zapisali ali "a" ali "b" - data <- x[grepl(paste0(agregTip,"|SKUPAJ|leto|stolpec"), colnames(x))] - # Preuredimo leto, in povprečja: En predmet je ena vrstica - data$leto1[grepl("Stolpec 1", data$stolpec)] <- - data$leto[grepl("Stolpec 2", data$stolpec)] - # Še povprečje - data$SKUPAJ.ag.1[grepl("Stolpec 1", data$stolpec)] <- - data$SKUPAJ.ag[grepl("Stolpec 2", data$stolpec)] - # ODstranimo vse vrstice, kjer se nahaja string "Stolpec 2", kar pomeni, da gre za podvojene vrednosti - data <- data[!grepl("Stolpec 2", data$stolpec),] - # V stolpce na ustrezna mesta namesto NA dodamo "a" ali "b" glede na leto - data <- - data[grepl( - paste0(agregTip, "|kompetence\\.|Ustreznost KT|SKUPAJ|leto|stolpec"), - colnames(data) - )] - } - # Preverimo ali je fakulteta FDV/FGG ali Katera Druga - # In ustrezno poimenujemo stolpce - # Če delamo za FDV ali FGG imamo v letu 2018/2019 - # podatke že za pet let, prvo leto pa je bilo - # 2014/15. Če delamo za ostale članice imamo - # podatke za štiri leta, prvo pa je bilo - # 2015/16 - if (ID != "3000021" && ID != "3000026") { - year1 <- 14 - year2 <- 15 - } else { - year1 <- 13 - year2 <- 14 - } - col.names <- - unlist(lapply(1:ncol(df), function (i) - paste0(year1 + i, "/", year2 + i, sep = ""))) - - # Imean stolpcev dodamo k Podatkov - if (!"stolpec" %in% colnames(x)) { - data <- - x[grepl(pattern = paste0(agregTip, "|kompetence\\.|Ustreznost KT|SKUPAJ|leto"), - colnames(x))] - } - # Dodamo nova imena stolpcev (agregTip, študijska leta in agregate) - colnames(data)[colnames(data) %in% colnames(df)] <- col.names - - # Preverimo za katero študijsko leto imamo premalo podatkov in to zapišemo - # Preverimo ali obstaja oz imamo podatke za 14/15 - if ("14/15" %in% colnames(data)) { - - data$`14/15` <- ifelse(grepl("2014/2015|2014/15|14/15", data$leto), "a", data$`14/15`) - - if ("leto1" %in% colnames(data)) { - data$`14/15` <- ifelse(grepl("2014/2015|2014/15|14/15", data$leto1), "b", data$`14/15`) - } - } - # Preverimo ali obstaja oz imamo podatke za 15/16 - if ("15/16" %in% colnames(data)) { - - data$`15/16` <- ifelse(grepl("2015/2016|2015/16|15/16", data$leto), "a", data$`15/16`) - - if ("leto1" %in% colnames(data)) { - data$`15/16` <- ifelse(grepl("2015/2016|2015/16|15/16", data$leto1), "b", data$`15/16`) - } - } - # Preverimo ali obstaja oz imamo podatke za 16/17 - if ("16/17" %in% colnames(data)) { - - data$`16/17` <- ifelse(grepl("2016/2017|2016/17|16/17", data$leto), "a", data$`16/17`) - - if ("leto1" %in% colnames(data)) { - data$`16/17` <- ifelse(grepl("2016/2017|2016/17|16/17", data$leto1), "b", data$`16/17`) - } - } - # Preverimo ali obstaja oz imamo podatke za 17/18 - if ("17/18" %in% colnames(data)) { - - data$`17/18` <- ifelse(grepl("2017/2018|2017/18|17/18", data$leto), "a", data$`17/18`) - - if ("leto1" %in% colnames(data)) { - data$`17/18` <- ifelse(grepl("2017/2018|2017/18|17/18", data$leto1), "b", data$`17/18`) - } - } - # Preverimo ali obstaja oz imamo podatke za 18/19 - if ("18/19" %in% colnames(data)) { - - data$`18/19` <- ifelse(grepl("2018/2019|2018/19|18/19", data$leto), "a", data$`18/19`) - - if ("leto1" %in% colnames(data)) { - data$`18/19` <- ifelse(grepl("2018/2019|2018/19|18/19", data$leto1), "b", data$`18/19`) - } - } - # Preverimo ali obstaja oz imamo podatke za 19/20 - if ("19/20" %in% colnames(data)) { - - data$`19/20` <- ifelse(grepl("2019/2020|2019/20|19/20", data$leto), "a", data$`19/20`) - - if ("leto1" %in% colnames(data)) { - data$`19/20` <- ifelse(grepl("2019/2020|2019/20|19/20", data$leto1), "b", data$`19/20`) - } - } - - # Preverimo ali obstaja oz imamo podatke za 20/21 - if ("20/21" %in% colnames(data)) { - - data$`20/21` <- ifelse(grepl("2020/2021|2020/21|20/21", data$leto), "a", data$`20/21`) - - if ("leto1" %in% colnames(data)) { - data$`20/21` <- ifelse(grepl("2020/2021|2020/21|20/21", data$leto1), "b", data$`20/21`) - } - } - - - - - # Subset in priprava za Latex tabelo - data <- data[!grepl("leto|stolpec", colnames(data))] - # Preverimo ali imamo dva dodatna stolpca ali samo enega - if (length(df) + 2 == length(data[2:ncol(data)])) { - colnames(data)[c(ncol(data) - 1):ncol(data)] <- c("Povp. a", "Povp. b") - # Update 17.9.2019 - # V kolikor se v stolpcu pojavi a ali b želimo to kot - # zapisati kot superscript oziroma na potenco - data$`Povp. a` <- - ifelse( - !is.na(data$`Povp. a`), - paste0(data$`Povp. a`, "\\textsuperscript{a}"), - data$`Povp. a` - ) - data$`Povp. b` <- - ifelse( - !is.na(data$`Povp. b`), - paste0(data$`Povp. b`, "\\textsuperscript{b}"), - data$`Povp. b` - ) - } else { - colnames(data)[ncol(data)] <- c("Povp. a") - data$`Povp. a` <- - ifelse( - !is.na(data$`Povp. a`), - paste0(data$`Povp. a`, "\\textsuperscript{a}"), - data$`Povp. a` - ) - } - - # Add rownames - rownames(data) <- make.unique(data[,1]) - data[,1] <- NULL - # Za potrebe računanja povprečij oz zaradi funkcije - # formatval bomo stara imena stolpcev shranili - # in jih nadomestili s "Skupaj", nato pa jih (stara imena) - # bomo za potrebe latex tabele zopet zapisali - # nazaj - # old.col <- colnames(data) - # colnames(data) <- rep(paste0("Skupaj", 1:ncol(data))) - # # Tidy data (coloring averages) - # data[1:length(df)] <- - # formatval(data[1:length(df)], Agregati = TRUE) - # colnames(data) <- old.col - # # NA nadomestimo z ".", kar pomeni, da ni podatka - data[is.na(data)] <- "." - # Dodamo še morebitne opombe, ki se bodo izpisale pod - # Latex tabelo - opomba <- "" - # V kolikor ni podatkov za agregatov, torej - # stolpec Povp. a ali Povp. b povsod == "." - # potem dodatnega stolpca v latex tabeli ne - # želimo prikazati - if(all(data$`Povp. a` == ".")) { - data$`Povp. a` <- NULL - } - - # V kolikor ne delamo za potrebe trendov - # in habilitacijske - if (habiliTrend == FALSE) { - #' Create \Latex Table - data.tex <- tb.lat( - data, - tabname = imetabele, - "A{8cm}", - namen = "TRENDI", - Agregati = TRUE - ) - } else { - data.tex <- data - - } - - # Če nas zanima samo obdobje podatkov - # torej ta koliko študijskih let imamo - # pri trendih izvajalca podatke - # data.tex prepišemo - if (obdobje == TRUE){ - data.tex <- col.names - } - # Vrni latex tabelo - return(data.tex) -} - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/errorCheck.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/errorCheck.R deleted file mode 100644 index 4007b5ea0..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/errorCheck.R +++ /dev/null @@ -1,76 +0,0 @@ -# ERROR CHECK # - - -# CHECK FOR ERRORS ---------------------- -#-------------------------- MOREBITNE NESKLADNOSTI Z 1KA BAZO IN ŠIFRANTOM X1 -----------------------------# -# Preverimo ali so v bazi kakšni odgovori tistih izvajalcev, ki manjkajo v šifrantu X1. Npr izvajalec ima -# v bazi (anketa PRED izpitom) odgovore za predmet, ki v šifrantu X1 ni naveden oz. manjka -# Slednje lahko pivede do erorjev pri generiranju PDF poročil in časovne zamude, kar želimo preprečiti -library(tidyverse) -# ANKETA PRED -podatki.1KA.baza.PRED <- data_pred_izpitom %>% - gather(contains("sifizv"), - key = "sifizv", - value = "ID" - ) %>% - select_("predmet","sifpredm","ID") %>% - unique() - -# Kateri izvajalci so v 1KA bazi (imajo odgovore) a niso v šifrantu X1 -output.pred <- anti_join(podatki.1KA.baza.PRED, sifrant , by = c("sifpredm" ="IDP","ID"="IDPEDAGOGA")) -# Izločimo vse manjkajoče oz. nevsebinske vrednosti respondenta (-1, -2, -5, itd) -junk.komentar <- - c( - NA, - "-1", - "-2", - "-3", - "-4", - "-5", - "-97", - "-98", - "-99", - "-", - "/", - "\\", - ".", - "", - "-1: Ni odgovoril", - "-2: Preskok (if)", - "-3: Prekinjeno", - "#NAME?" - ) -output.pred <- output.pred[! output.pred$ID %in% junk.komentar, ] - - -# PREVERI # -if (nrow(output.pred) >= 1) { - # Če je output.pred < 1 to pomeni, da sta bazi 1KA odgovorov (anketa PRED) in šifrant X1 skladni zato lahko nadaljujemo z izračuni - cat( - "V bazi 1KA (anketa PRED izpitom) se nahaja izvajalec z ID-jem", - paste(output.pred$ID, collapse = ' , '), "ki ga v šifrantu X1 ni - ALI pa ima v bazi odgovore za predmet, ki v šifrantu X1 ni zaveden, da ga poučuje!!!!!" - ) - warning("Izvajalci ki so v 1KA bazi, manjkajo v šifrantu X1") -} -# PREVERI # -#------------------------- //MOREBITNE NESKLADNOSTI Z 1KA BAZO IN ŠIFRANTOM X1// ---------------------------# - - -#----------------------------- PODVOJENE ŠIFRE IZVAJALCEV PRI ISTEM PREDMETU --------------------------------# -# preverba če ni kakšna šifra predmeta * šifra izvajalca v šifrantu podvojena -# npr. izvajalec je imel napačno šifro in dve izvedbi (redna/izredna) nista imeli različnih šifer -podvojeniID <- table(paste(sifrant$IDP, sifrant$IDPEDAGOGA, sep = '*')) -if (max(podvojeniID) > 1) { - sumljivci <- paste(names(podvojeniID[which(podvojeniID > 1)]), collapse = '\n') - warning("All course*lecturer ID's in sifrant should be unique!!\nThese are not:\n", sumljivci) - - # V primeru filozofske se je zgodilo, da je bi pri nekaterih predmetih podvojen izvajalec, in sicer je - # bil enkrat naveden kot izvajalec predmeta in drugič kot soizvajalec, zato vse take podvojene odstranimo oziroma - # pustimo samo unikatne (nosilce) - sifrant <- sifrant %>% # Sifrant - group_by(IDPEDAGOGA, IDP) %>% # grouped by lecturer ID and course ID - filter(NOSILEC == max(NOSILEC)) %>% # filtriramo samo tam kjer je podvojeni izvajalec naveden kot nosilec (1) - as.data.frame() # convert list to dataframe -} -#--------------------------- //PODVOJENE ŠIFRE IZVAJALCEV PRI ISTEM PREDMETU// ------------------------------# diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/habilitacija_komentarji.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/habilitacija_komentarji.R deleted file mode 100644 index a03431be6..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/habilitacija_komentarji.R +++ /dev/null @@ -1,182 +0,0 @@ -# Odprti odgovori Habilitacijska komisija - -# Podatke, ki jih preberemo pridobimo iz leta 2017/18 ko smo -# vse komentarje iz prenšnjih elt združili v eno bazo -# V tej bazi se torej nahajajo vsi komentarji do študijskega -# leta 2017/18 -# Za letošnje študijsko leto 18/19 pa bomo za vsako -# članico komentarje zapisali v svojo bazo. -# Na koncu pa bomo obe bazi združili glede na izvajalca in predmet. - -# Vsi komentarji izvajalca do 17/18 -izv.koment <- - read.csv2( - paste0( - "Evalvacija/results/", - fakulteta, - "/Trendi/zdruzeno.izvajalci.csv" - ), - header = TRUE, - stringsAsFactors = FALSE - ) - - -# Komentarji 18/19 - - - -dd_izv_komentarji <- subset(izv.koment, PREDMET == imena & izvajalec.sifra == izvajalec) - - -desired.cols <- c("izvajalec.komentar.dobro|izvajalec.komentar.slabo|leto") -dd_izv_komentarji <- dd_izv_komentarji[grepl(desired.cols, colnames(dd_izv_komentarji))] - - - -## KOMENTARJI ?tudentov ZA IZVAJALCA PRI PREDMETU -# kjer so tekstovne spremenljivke je na koncu ve?kratkrat kup nepotrebnih presledkov -trim <- function(x) { - gsub(pattern = '^\\s+|\\s+$', - replacement = '', - x = x) -} -# what should be excluded from student comments -junk.komentar <- - c( - NA, - "-1", - "-2", - "-3", - "-4", - "-5", - "-97", - "-98", - "-99", - "-", - "/", - "\\", - ".", - "", - "-1: Ni odgovoril", - "-2: Preskok (if)", - "-3: Prekinjeno" - ) - -text.komentar <- - structure( - c( - "Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih z delom izvajalca/ke pri izvedbi predmeta.", - "Prosimo, naštejte nekaj pomanjkljivosti in predlagajte izboljšave, povezane z delom izvajalca/ke pri izvedbi predmeta." - ), - .Names = c("izvajalec.komentar.dobro", "izvajalec.komentar.slabo" -)) - - -izvajalec.komentarji.2015 <- subset(dd_izv_komentarji, leto == "2014-15") - -# Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" -data.text.2015 <- lapply(izvajalec.komentarji.2015[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2015 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) -for (textvar in names(data.text.2015)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2015[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2015[[textvar]][!data.text.2015[[textvar]] %in% junk.komentar]) -} - -tex.text.2015 <- NULL -for (textvar in names(data.text.2015)) { - komentarji <- data.text.2015[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2015 <- append(tex.text.2015 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2015 <- append(tex.text.2015 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } -} - -tex.text.2015 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2014/2015}} \\newline \\newline",tex.text.2015) - - -izvajalec.komentarji.2016 <- subset(dd_izv_komentarji, leto == "2015-16") - -# Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" -data.text.2016 <- lapply(izvajalec.komentarji.2016[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2016 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) -for (textvar in names(data.text.2016)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2016[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2016[[textvar]][!data.text.2016[[textvar]] %in% junk.komentar]) -} - -tex.text.2016 <- NULL -for (textvar in names(data.text.2016)) { - komentarji <- data.text.2016[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2016 <- append(tex.text.2016 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2016 <- append(tex.text.2016 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } -} - -tex.text.2016 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2015/2016}} \\newline \\newline",tex.text.2016) - - -izvajalec.komentarji.2017 <- subset(dd_izv_komentarji, leto == "2016-17") - -# Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" -data.text.2017 <- lapply(izvajalec.komentarji.2017[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2017 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) -for (textvar in names(data.text.2017)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2017[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2017[[textvar]][!data.text.2017[[textvar]] %in% junk.komentar]) -} - -tex.text.2017 <- NULL -for (textvar in names(data.text.2017)) { - komentarji <- data.text.2017[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2017 <- append(tex.text.2017 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2017 <- append(tex.text.2017 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } -} - -tex.text.2017 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2016/2017}} \\newline \\newline",tex.text.2017) - - - -izvajalec.komentarji.2018 <- subset(dd_izv_komentarji, leto == "2017-18") - -# Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpra?anja" -data.text.2018 <- lapply(izvajalec.komentarji.2018[c("izvajalec.komentar.dobro","izvajalec.komentar.slabo")], trim) #data.text.2018 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) -for (textvar in names(data.text.2018)){ - # odstranimo neza?elene stringe pri komentarjih - # backslashi v komentarjih so hudo nadle?ni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2018[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2018[[textvar]][!data.text.2018[[textvar]] %in% junk.komentar]) -} - -tex.text.2018 <- NULL -for (textvar in names(data.text.2018)) { - komentarji <- data.text.2018[[textvar]] - if (length(komentarji) > 0) { # ?e je kak?en komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo o?tevil?eni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - tex.text.2018 <- append(tex.text.2018 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2018 <- append(tex.text.2018 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } -} - -tex.text.2018 <- c("\\textbf{\\large {Komentarji študentov za študijsko leto 2017/2018}} \\newline \\newline",tex.text.2018) - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/nova_imena_programov.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/nova_imena_programov.R deleted file mode 100644 index 24faa0c16..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/funkcije/nova_imena_programov.R +++ /dev/null @@ -1,160 +0,0 @@ -# Created by Miha 30.10.2019 # -#-------------------------- NAROČILO FDV ------------------------------# -# Ker se imena stari hali novih programov podvajajo -# v poročilih ni razvidno za kateri program gre, -# zato bomo le za FDV programe ločil glede na ID, in sicer - # Programe bomo poimenovali v vseh bazah in šifrantu programov - # Družboslovna informatika UNI stari program ima ID = 1000229 - # Družboslovna informatika UNI prenovljeni program ima ID = 1001021 - prenPredh <- function(data, program, idprog) { - # DRUŽBOSLOVNA INFORMATIKA PRENOVLJENI PREDHODNI - data[,program] <- - ifelse( - data[,idprog] == "1000229", - "Družboslovna informatika (predhodni)", - ifelse( - data[,idprog] == "1001021", - "Družboslovna informatika (prenovljeni)", - #------------------------------# - # KOMUNIKOLOGIJA - MEDIJSKE IN KOMUNIKACIJSKE ŠTUDIJE - ifelse( - data[,idprog] == "1000237", - "Komunikologija - medijske in komunikacijske študije (predhodni)", - ifelse( - data[,idprog] == "1001023", - "Komunikologija - medijske in komunikacijske študije (prenovljeni)", - #--------------------------------- - # KOMUNIKOLOGIJA - TRŽNO KOMUNICIRANJE IN ODNOSI Z JAVNOSTMI - ifelse( - data[,idprog] == "1000238", - "Komunikologija - tržno komuniciranje in odnosi z javnostmi (predhodni)", - ifelse( - data[,idprog] == "1001022", - "Komunikologija - Tržno komuniciranje in odnosi z javnostmi (prenovljeni)", - #--------------------------------- - # KULTUROLOGIJA - ifelse( - data[,idprog] == "1001024", - "Kulturologija - Študije kultur in ustvarjalnosti (prenovljeni)", - ifelse( - data[,idprog] == "1000232", - "Kulturologija (predhodni)", - #--------------------------------- - # MEDNAORDNI ODNOSI - ifelse( - data[,idprog] == "1000233", - "Mednarodni odnosi (predhodni)", - ifelse( - data[,idprog] == "1001026", - "Mednarodni odnosi (prenovljeni)", - #--------------------------------- - # NOVINARSTVO - ifelse( - data[,idprog] == "1000234", - "Novinarstvo (predhodni)", - ifelse( - data[,idprog] == "1001025", - "Novinarstvo (prenovljeni)", - #--------------------------------- - # POLITOLOGIJA - OBRAMBOSLOVJE - ifelse( - data[,idprog] == "1000239", - "Politologija - obramboslovje (predhodni)", - ifelse( - data[,idprog] == "1001029", - "Obramboslovje (prenovljeni)", - #--------------------------------- - # Politologija - Javne politike in uprava - ifelse( - data[,idprog] == "1000235", - "Politologija - študije demokracije in upravljanja (predhodni)", - ifelse( - data[,idprog] == "1001031", - "Politologija - Javne politike in uprava (prenovljeni)", - #--------------------------------- - # Politologija - študije politike in države - ifelse( - data[,idprog] == "1000230", - "Politologija – študije politike in države (predhodni)", - ifelse ( - data[,idprog] == "1001030", - "Politologija – študije politike in države (prenovljeni)", - #--------------------------------- - # Sociologija - analitska sociologija - ifelse ( - data[,idprog] == "1000231", - "Analitska sociologija (predhodni)", - ifelse( - data[,idprog] == "1001027", - "Sociologija (prenovljeni)", - #--------------------------------- - # Sociologija -kadrovski medžment - ifelse ( - data[,idprog] == "1000240", - "Sociologija - upravljanje organizacij, človeških virov in znanja (predhodni)", - ifelse ( - data[,idprog] == "1001028", - "Sociologija - kadrovski menedžment (prenovljeni)", - #--------------------------------- - ifelse ( - data[,idprog] == "1000236", - "Evropske študije - družboslovni vidiki (predhodni)", - ifelse ( - data[,idprog] == "1000241", - "Družboslovna informatika (predhodni)", - data[,program] - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - ) - return(data) - } - #-------------------------- NAROČILO FDV ------------------------------# - - - - #------------------- OZNAKE OSTALIH STALIH PROGRMOV ČLANIC --------------------# - # UPDATE 2.11.2019: Vasja želi da se v vseh poročilih, kjer nastopajo - # študijski programi pred programom izpiše tudi oznake BD, BP, B1 ali B2 - # BD oziroma BP pomenijo bolonjski dodiplomski oziroma podiplomski študij. - # Podobno se oznake B1 in B2 nanašajo na (morebitni) prenovljeni - # študij na prvi/dodiplomski in drugi/podiplomski stopnji. - # # Iz imena predmetov vzamemo podatke o tem ali gre za novi ali stari predmet - # prog.othr <- function(data) { - # # Stari ali nohi programi glede na ime predmeta - # pred.time <- substr(data$predmet, 1, 3) - # # Odstranimo nepotrebne pike ".BD" - # pred.time <- gsub("\\.", "", pred.time) - # # In nepotrebne presledke - # pred.time <- gsub(" ", "", pred.time, fixed = TRUE) - # #K imenom (pred) programov dodamo nove oznake - # data$program <- - # paste(pred.time, data$program, sep = " ") - # - # return(data) - # } - # prog.othr(data_po_izpitu) - #----------------- //OZNAKE OSTALIH STALIH PROGRMOV ČLANIC// ------------------# - - - \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/navodila_dodatno-UTF-8.r b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/navodila_dodatno-UTF-8.r deleted file mode 100644 index 66c26f3ec..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/navodila_dodatno-UTF-8.r +++ /dev/null @@ -1,49 +0,0 @@ -semester.leto <- "Študijsko leto 2018/19" # Prikaz na prvi strani PDF poro?ila pod naslovom in v nogi - -# V primeru, da v poro?ilu za izvajalca nosilec predmeta ?eli videti tudi ocene soizvajalca -nosilci_soizvajalcev <- TRUE - -omejeniIzvajalci <- TRUE # ali naj omeji poro?ila samo na dolo?ene izvajalce. Uporabmo v primeru testiranja poro?il -omejeniIzvajalciSifre <- c("3000021_FDV_321") # katere glede na vrstico zgoraj - -minEnot <- 4 # najmanj?e ?tevilo odgovorov, kjer se poka?e rezultat, ko ne gre za anlize po skupinah - -izvedba_v_imenu <- FALSE # na koncu imena predmeta doda ?e 1Z, 2P ipd. Da se lo?ijo tisti ki so v obeh semestrih. (sifrant$IZVEDBA) -oblikovanje_izvedbe <- FALSE # should first page have izvedba, semester text - - -#Barvanje st. studentov, ?t.odgovorov, % odgovorov, itd, v tabelah za povpre?ja komponent -#FDVstopnjaPobarvanka <- list(dodiplomski="NE", podiplomski="NE", skupaj="NE") -FDVstopnjaPobarvanka <- list(dodiplomski="30,40,Inf,Inf", podiplomski="30,40,Inf,Inf", skupaj="30,40,Inf,Inf", - st.stud="5,10,Inf,Inf", n.anket="5,10,Inf,Inf", sodelu.pct="10,25,Inf,Inf", zavr.pct="0,0,50,75") - -#za 3,4,Inf,Inf -> manj kot 3 je bold rede?e, 3 ali ve? in manj kot 4 je samo rde?e, Inf, Inf pomeni da ni zgornje meje za barvanja. -#za 2.4,2.7,3.3,3.6 -> manj kot 2.4 je bold rede?e, 2.4 ali ve? in manj kot 2.7 je samo rde?e, 3.3 ali ve? in manj?e kot 3.6 je samo rde?e, ve? kot 3.6 je bold rde?e -#Vrednosti 3,4,Inf,Inf so definirane v navodila_dodatno-UTF-8.r, vrednosti 2.4,2.7,3.3,3.6 pa v excelovi datoteki Navodila. - -pobarvankaPredmSkupaj <- "3,4,Inf,Inf" -pobarvankaIzvSkupaj <- "3,4,Inf,Inf" -# Zaokro?evanje povpre?ij v tabelah -decimalkePredmSkupaj <- 1 # zaokro?imo na eno decimalko -decimalkeIzvSkupaj <- 1 # zaokro?imo na eno decimalko - -# what should be excluded from student comments -junk.komentar <- c(NA,"-1","-2","-3","-4","-5","-97","-98","-99","-","/","\\",".","","-1: Ni odgovoril","-2: Preskok (if)","-3: Prekinjeno", "#NAME?") - -# strings to be used for semester specific calculations in metodology (this values present specific semester in sifrant$SEMESTER_IZV) -prvi_semester <- c("zimski", "prvi semester", 1) -drugi_semester <- c("letni", "drugi semester", "celoletni", 2, 3) - -# NOT USING THIS NOW # -# evaluations start/end dates for methodology (T1 1st semester start, T2 end; T3 2nd semester start, T4 end) -metod_T1 <- "T1" -metod_T2 <- "T2" -metod_T3 <- "T3" -metod_T4 <- "T4" -# //NOT USING THIS NOW// # - - -#ZA PORO?ILA ZA KATEDRE -#katedre <- read.csv2("Evalvacija/temp/miha_test.csv",sep=";", header=T, fill=T,stringsAsFactors=FALSE) -#katedre <- katedre[-which(katedre$Katedra == ""), ] -#katedre<-katedre[!is.na(katedre$Katedra),] \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/zdruzevanje_predmetov_AG.R b/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/zdruzevanje_predmetov_AG.R deleted file mode 100644 index d611bc3a6..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija I in II stopnja/zdruzevanje_predmetov_AG.R +++ /dev/null @@ -1,115 +0,0 @@ -# Created by Miha, 24. 1. 2019 -# ZDRUŽEVANJE PREDMETOV AG # -# Na željo AG bomo predmete, ki so nam jih poslali v -# bazi "predmeti_za zdruzit_AG.csv" združili zaradi -# majhnega števila študentov in odgovorov, posledično pa -# izvajalci ne dobijo poročil. Ravno tako smo# -# minimalno število odgovorov (4), da izpišemo povprečja zmanjšali -# na 3 - - -library(dplyr) -# Preberemo trenutni šifrant predmetov -sifrantAG <- read.csv2("Evalvacija/temp/sifrant_AG.csv", header = TRUE, stringsAsFactors = FALSE) -# Preberemo šifrant predmetov, kjer so predmeti, ki ji bom združili -# To datoteko smo dobili s strani AG -novaImena <- read.csv2("Evalvacija/temp/AG_zdruzeno.csv", header = TRUE, stringsAsFactors = FALSE) -# Uredimo še IDP (šifr epredmetov, ki mi jih Peter posebej pripravi) -novaImena$IDP <- - ifelse(novaImena$NACIN_STUDIJA == "1", - paste0(novaImena$IDP, "_1"), - paste0(novaImena$IDP, "_2")) - - - -# Oba šifranta združimo, da dobimo nova imena predmetov -novsifrant <- merge(sifrantAG, novaImena, by = "IDP", sort = FALSE) -# Preuredimo stolpce -novsifrant <- novsifrant[,c(1:11, 23)] -colnames(novsifrant) <- gsub(".x","", colnames(novsifrant)) -# Odstrani podvojene vrednosti (podvojene predmete in izvajalce, ki jih izvajajo) -novsifrant <- dplyr::distinct(novsifrant) -novsifrant <- novsifrant[!duplicated(novsifrant[c("IDP", "IDPEDAGOGA")]),] - - -# Kjer so polja stolpca "Nova_imena_predmetov" prazna pomeni, da ne gre za predmete, -# ki jih je potrebno združit -novsifrant$Nova_imena_predmetov[novsifrant$Nova_imena_predmetov == ""] <- NA -# Pogledamo, kateri so to -novsifrant$novaimena <- ifelse(is.na(novsifrant$Nova_imena_predmetov), novsifrant$PREDMET, novsifrant$Nova_imena_predmetov) - -# za vse predmete, ki jih je potrebno združit bomo naredili novo podnmnožico, saj jim -# bomo pripisali tudi ustrezno število študentov, nove ID-je, nov način študija in tudi novo -# stopnjo študija (ker gre za za predmete, ki se izvajajo tako na I kot na II stopnji, ji je potrebno -# zaradi združitve v en sam predmet poenotiti) -novi.predm <- subset(novsifrant, !is.na(Nova_imena_predmetov)) -# Izračunamo število študentov za agregirane predmete (grupiramo po imenih in unikatnih IDP) - -studenti <- novi.predm %>% - filter(!duplicated(IDP)) %>% - group_by(novaimena) %>% - summarise(count = sum(ST_STUD)) %>% - as.data.frame() - - -# Zdruzimo nov sifrant in novo stevilo studentov -zdruzeno <- merge(novsifrant, studenti, by = "novaimena", sort = FALSE, all = TRUE ) -# Zapišemo novo število študentov -zdruzeno$ST_STUD <- ifelse(!is.na(zdruzeno$count), zdruzeno$count, zdruzeno$ST_STUD) -zdruzeno$PREDMET <- zdruzeno$novaimena -zdruzeno$novaimena <- NULL -zdruzeno$NACIN_STUDIJA <- ifelse(!is.na(zdruzeno$count), 1, zdruzeno$NACIN_STUDIJA) -zdruzeno$ST_KT <- ifelse(!is.na(zdruzeno$count), 5, zdruzeno$ST_KT) -zdruzeno$STOPNJA <- ifelse(!is.na(zdruzeno$count), 1, zdruzeno$STOPNJA) -zdruzeno$SEMESTER_IZV <- ifelse(!is.na(zdruzeno$count), 3, zdruzeno$SEMESTER_IZV) -zdruzeno <- zdruzeno[!duplicated(zdruzeno[c("NAZIV.PEDAGOGA", "count")]),] - -# Predmetom dodamo nove ID-je glede na IMENA -# Vzeli bomo ID-je, ki se nanašajo na združene predmete ostlai bodo ostali nespremenjeni -zdruzeno <- zdruzeno %>% - mutate(IDP1 = group_indices_(zdruzeno, .dots=c("PREDMET"))) - - -# Združeno bazo povežemo še z bazama: ANKETA PRED IZPITOM IN ANKETA PO IZPITU -# v TEH DVEH BAZAM MORAMO ZAMENJATI ŠE IMENA IN ŠIFRE PREDMETOV DA BODO USTREZLAI NAŠI -# NOVI BAZI -# Preberemo podatke -anketa.pred <- read.csv2("Evalvacija/temp/anketa_pred_izp_AG.csv", header = TRUE, stringsAsFactors = FALSE) -anketa.po <- read.csv2("Evalvacija/temp/anketa_po_izpitu_AG.csv", header = TRUE, stringsAsFactors = FALSE) - -# Združimo z novo bazo "zdruzeno" -anketaPRED <- merge(anketa.pred, zdruzeno, by.x = "sifpredm", by.y = "IDP", sort = FALSE) -# V bazo ANKETA PRED dodamo nove šifre predmetov -anketaPRED$sifpredm <- ifelse(is.na(anketaPRED$count), anketaPRED$sifpredm, anketaPRED$IDP1) -# Združene predmete tudi enotno poimenujemo -anketaPRED$predmet <- anketaPRED$PREDMET -# Poenotimo način študija, da bo povsod enak, v nasprotnem primeru, bo združen predmet tretiran -# kot dva predmeta -anketaPRED$nacinstud <- ifelse(!is.na(anketaPRED$count), 1, anketaPRED$nacinstud) -# poenotimo tudi število kreditnih točk -anketaPRED$stkt <- ifelse(!is.na(anketaPRED$count), 5, anketaPRED$stkt) -# Bazo shranimo v direktorij, kjer imamo shranjene podatke za analize -write.csv2(anketaPRED,"Evalvacija/temp/anketaPRED.csv") - -# Na enak nači naredimo še za ANKETO PO izpitu -anketaPO <- merge(anketa.po, zdruzeno, by.x = "sifpredm", by.y = "IDP", sort = FALSE) -anketaPO$sifpredm <- ifelse(is.na(anketaPO$count), anketaPO$sifpredm, anketaPO$IDP1) -anketaPO$predmet <- anketaPO$PREDMET -anketaPO$nacinstud <- ifelse(!is.na(anketaPO$count), 1, anketaPO$nacinstud) -anketaPO$stkt <- ifelse(!is.na(anketaPO$count), 5, anketaPO$stkt) -write.csv2(anketaPO,"Evalvacija/temp/anketaPO.csv") - -# V nov šifrant Dodamo še nove šifre predmetov in jo zapišemo -zdruzeno$IDP <- ifelse(is.na(zdruzeno$count), zdruzeno$IDP, zdruzeno$IDP1) -# Na tem mestu je še pomembno, da v kolikor gre za združene predmete, naredimo, kot -# da so vsi izvajalci nosilci, tako bodo vsi dobili svoje poročilo. Ker nismo določili -# kdo je nosilec -zdruzeno$NOSILEC <- ifelse(!is.na(zdruzeno$count), 1, zdruzeno$NOSILEC) -# Zapišemo bazo. -write.csv2(zdruzeno,"Evalvacija/temp/sifrantAG.csv") - - -# Prepišemo baze in šifrant za potrebe računanja -sifrant <- zdruzeno -data_pred_izpitom <- anketaPRED -data_po_izpitu <- anketaPO diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda-ID_predmetov.r b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda-ID_predmetov.r deleted file mode 100644 index e0aaa04b8..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda-ID_predmetov.r +++ /dev/null @@ -1,89 +0,0 @@ -# Generiramo csv datoteki za izvajalce in predmete, kjer so povpre?ja komponent po ?tudijskih letih # - - -library(plyr) -# Save pdf outputs -dir.create('output', showWarnings=FALSE) - -################## -#predmeti -################## - -imena.datotek <- c('povprecja.predmeti_2016.csv', 'povprecja.predmeti_2017.csv') -# kaj doda v prvo vrstico glede na vrstni red zgoraj podanih datotek -letnice <- c('2015-16','2016-17') - -tabele <- NULL -stevec <- 0 -for (tabela in imena.datotek) { - stevec <- stevec + 1 - temp.tabela <- read.csv2(tabela, header=TRUE, sep=';', stringsAsFactors=FALSE, dec=',') - temp.tabela <- temp.tabela[2:ncol(temp.tabela)] # prva kolona so zaporedne ?tevilke - tabele[[tabela]] <- cbind(leto=letnice[stevec], temp.tabela) -} - -imena <- NULL -zdruzeno <- NULL -for (tabela in names(tabele)) { - imena <- c(imena, tabele[[tabela]]$ime) - stetje <- table(tabele[[tabela]]$ime) - pojavitve.imena.v.letu <- as.numeric(stetje[match(tabele[[tabela]]$ime, names(stetje))]) - tabele[[tabela]] <- cbind(tabele[[tabela]], pojavitve.imena.v.letu) - write.csv2(tabele[[tabela]], file=paste('output/', tabela, sep='')) - if (is.null(zdruzeno)) {zdruzeno <- tabele[[tabela]] - } else {zdruzeno <- rbind.fill(zdruzeno, tabele[[tabela]])} -} - -imena.sifre <- data.frame(cbind(unique(imena), 1001:(1000+length(unique(imena))))) -colnames(imena.sifre) <- c('ime.predmeta', 'nova.sifra') -write.csv2(imena.sifre, file='output/imena+nove.sifre.csv', row.names=FALSE) - -nova.sifra <- imena.sifre$nova.sifra[match(zdruzeno$ime, imena.sifre$ime.predmeta)] -zdruzeno <- cbind(zdruzeno, nova.sifra) - -#write.csv2(zdruzeno, file='output/zdruzeno.csv', row.names=FALSE) - -# ?e ?t. let in izvedb -frekvence <- t(table(zdruzeno$leto, zdruzeno$nova.sifra)) -st.let <- as.numeric(rowSums(frekvence>0)) -st.izvedb <- as.numeric(rowSums(frekvence)) -st.let.izvedb <- cbind(as.numeric(rownames(frekvence)), st.let, st.izvedb) -st.let.izvedb <- st.let.izvedb[match(zdruzeno$nova.sifra, st.let.izvedb[,1]),2:3] -st.let.izvedb <- cbind(zdruzeno, st.let.izvedb) -write.csv2(st.let.izvedb, file='output/zdruzeno.predmeti.csv', row.names=FALSE) - - -####### -# frekvence predmetov po letih -frekvence <- t(table(zdruzeno$leto, zdruzeno$nova.sifra)) -vsota <- as.numeric(rowSums(frekvence)) -imena <- zdruzeno$ime[match(as.numeric(rownames(frekvence)), zdruzeno$nova.sifra)] -frekvence <- cbind(frekvence, vsota, imena) - -write.csv2(frekvence, file='output/frekvence.predmeti.csv') - - - -################## -#izvajalci -################## - -imena.datotek <- c('povprecja.izvajalci_2016.csv','povprecja.izvajalci_2017.csv') -letnice <- c('2015-16','2016-17') -predmeti <- read.csv2('output/zdruzeno.predmeti.csv', header=TRUE, sep=';', stringsAsFactors=FALSE, dec=',') - -izvajalci <- NULL -stevec <- 0 -for (tabela in imena.datotek) { - stevec <- stevec + 1 - temp.tabela <- read.csv2(tabela, header=TRUE, sep=';', stringsAsFactors=FALSE, dec=',') - temp.tabela <- temp.tabela[2:ncol(temp.tabela)] # prva kolona so zaporedne številke - temp.tabela <- cbind(leto=letnice[stevec], temp.tabela) - izvajalci <- rbind.fill(izvajalci, temp.tabela) -} - -nova.sifra.predmeta <- predmeti$nova.sifra[match(izvajalci$predmet.sifra, predmeti$predmet.sifra)] - -izvajalci <- cbind(izvajalci, nova.sifra.predmeta) - -write.csv2(izvajalci, file='output/zdruzeno.izvajalci.csv', row.names=FALSE) diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaOsnovnoIzracuni.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaOsnovnoIzracuni.R deleted file mode 100644 index 6fc61bf35..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaOsnovnoIzracuni.R +++ /dev/null @@ -1,2236 +0,0 @@ -################################# -# KRATEK OPIS STRUKTURE POROIL # -################################# -# Poroilo je sestavljeno na podlagi R kode (izrauni) in latex kode (.tex, struktura poroil) -# Vhodne datoteke se nahajajo v mapi "temp", kjer sta dve loeni datoteki s podatki za + -# ANKETO PRED IZPITOM in ANKETO PO IZPITU -# V mapi se nahajajo tudi ifranti (ki sluijo opredelitvi izvajalcev fakultete, predmetov, + -# naina tudija, tudijskih programov), itd: + -# Podrobno preberi: http://ul.1ka.si/index.php?fl=2&lact=1&bid=40&parent=3 -# V poroilu so ocenjene, obarvane in v tabelah predstavljene vrednosti komponent za izvajalca, + -# vrednosti komponent predmetov PRED izpitom in vrednosti komponent PO izpitu. -# Komponente za izvajalca so: Kakovost, Pripravljenost, Razumljivost, Zanimivost, Kritinost, Korektnost -# Komponente predmeta (ANKETA PRED): Zadovoljstvo, Usklajenost, Samostojnost, Literatura, Obveenost, Info. na spletu, Preverjanje -# Komponente predmeta (ANKETA PO):Vsebine, naloge, Ocenjevanje, Kompetence, Ustreznost Kreditnih tok -######## -# skripta: koda.r je osnova (ki jo vedno najprej poenemo) in je namenjena opredelitvi + -# spremenljivk, vektorjev, podatkovnih okvirjev in izraunu povpreij, kvantilnih rangov, + -# obarvanju, itd. -# Obarvanja povpreij komponent in kvantilnih rangov opredelimo v skkripti funkcije.R -# Skripto tabelaBy.r pa uporabimo samo pri izpisu PDF za izvajalca. Pri izpisu za programe, fakulteto tega ne uporabljamo. -# Ko smo pognali skrpto kodo.r, lahko generiramo poroilo za izvajalce, tako da poenemo + -# skirpto koda-izvajalec_predmet.r. -# Skripta koda-fakulteta.r slui generiranju poroila za fakulteto. -# Skripta koda-programi pa generira poroila za tudijske programe. -######## -# Glavo dokumenta, obarvanje vrednosti, irino tabel, rotiranje stolpcev, + -# nove strani, poglavja, kazalo itd. generiramo s pomojo latex kode, ki je + -# prenesena v R. -# V mapi latexkosi so denifirane tex. datoteke, ki so namenjene generiranju + -# glave (prva stran, kazalo) in noge (zakljuek) poroila -### Poroilo za izvajalca: glavno dokumenta definira tex datoteka a-glava.tex, + -# ki jo preberemo v skripti koda-izvajalec_predmet.r -### Poroilo za fakulteto: glavo dokumenta definira tex datoteka -# a-glava-program.tex (glej skripto koda-fakulteta.r) -### Excel datoteka "navodila" je narejena s strani programerja in + -# slui opredelitvi anketnih vpraanj za izvajalca, ter predmete (ANKETA PRED IN PO IZPITU) + -# oz. komponent, po katerih raunamo povpreja, kvantilne range, itd. -# Vsebuje tudi mejne vrednosti posameznih obarvanj (stolpec: pobarvanka), zaokroevanje + -# izraunanih povpreij v tabelah na eno decimalko (stolpec: decimalke), itd. - -## //KRATEK OPIS STRUKTURE POROIL// ## - - -## 1KA strenik ## -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo za posamezno fakulteto na streniku -# Tega ne poganjamo -#params <- commandArgs(trailingOnly = TRUE) -#ID <- params[1] -## //1KA strenik// ## - - -# Potrebne knjinice # -libraries <- c('tools', 'psych', 'Hmisc', 'reports', 'fmsb','car','Cairo','openxlsx','qpcR') -lapply(libraries, FUN = function(y) { - do.call('require', list(y))}) -# //Potrebne knjinice// # - - -# Naloimo dodatne funkcije (obarvanje povpreja + generiranje tabel v poglavju Analiza predmeta po programih in letnikih: -# glej poroilo za izvajalca ) -# e elimo spremeniti barvo, moramo novo barvo defnirati v skripti funkcije.r in v tex. datotekah (npr za izvajalca: a-glava.tex) -# !preveri! # -source('Evalvacija/R/funkcije/funkcije.r') # Barvanje povprenih ocnen komponent, kvantilnig rangov, rotiranje imena stolpcev v tabelah, itd. -source('Evalvacija/R/funkcije/tabelaBy.r') # Generiranje nekaterih tabel (Glej poroilo za izvajalca: Analiza predmeta po programih in letnikih) - -options(nwarnings = 10000) -# ignore these warnings: -# "[DATA NOT ENOUGH] at 3 NA" <- fmsb::radarchart ne more naredit radar grafa predmeta ker ni vsaj 3 vrednosti za ocene komponent predmeta -# "In FUN(newX[, i], ...) : no non-missing arguments to min; returning Inf/-Inf" <- ne more izraunat min in max ker je n=0 - - -# Ustvarimo mapo, kjer se bodo shranjevale slike (grafi, histogrami, barploti) -dir.create('Evalvacija/results/part-izvajalec-slike', showWarnings = FALSE) # Slike za izvajalca -dir.create('Evalvacija/results/part-predmet-slike', showWarnings = FALSE) # Slike za predmet - -# Opredelimo ID fakultete, ki skrbi za to da se v poroilu (kjer je dogovorjeno) izpie kratice fakultete, -# ime fakultete ter izrie logo fakultete. -# (glej poroilo za izvajalca, ki ga generira R. skripta koda-izvajalec_predmet) -# ID skrbi tudi, da preberemo ustrezne CSV datoteke za ustrezno Fakulteto. -ID <- 3000023 # Ko se koda prenese na strenik ID zakomentiramo, saj ga Peter ne Potrebuje -fakulteta <- "" -ime.fakultete <- "" -if (ID == 3000001) { # here - fakulteta <- "PEF" # Purpose: Read CSV file which has "PEF" in the end of the file. - studijska.praksa <- "Prakse PEF" # V primeru ko/e ima izvajalec tudijsko prasko, se v izpisu za izvajalca ustvari poglavje: TUDIJSKA PRAKSA, kjer se pri izrisu barplotov, namesto izpisa "Povpreje PEF", izpie: "Prakse PEF" - ime.fakultete <- "Pedagoka fakulteta" # na prvi strani PDF poroila pod sliko - logo <- "logo_PEF" # na prvi strani PDF poroila doda usterzno sliko fakultete (logo uporabimo pri generiranju poroil glej koda-izvajalec_predmet.r) -} else if (ID == 3000004){ - fakulteta <- "FU" # Purpose: Read CSV file which has "FU" in the end of the file. - studijska.praksa <- "Prakse FU" - ime.fakultete <- "Fakulteta za upravo" - logo <- "logo_FU" # Logoi se nahajajo : latexkosi/logo/ -} else if (ID == 3000006){ - fakulteta <- "FSD" - studijska.praksa <- "Prakse FSD" - ime.fakultete <- "Fakulteta za socialno delo" - logo <- "logo_FSD" -} else if (ID == 3000009){ - fakulteta <- "FPP" - studijska.praksa <- "Prakse FPP" - ime.fakultete <- "Fakulteta za pomorstvo in promet" - logo <- "logo_FPP" -} else if (ID == 3000011){ - fakulteta <- "ZF" - studijska.praksa <- "Prakse ZF" - ime.fakultete <- "Zdravstvena fakulteta" - logo <- "logo_ZF" -} else if (ID == 3000018){ - fakulteta <- "FF" - studijska.praksa <- "Prakse FF" - ime.fakultete <- "Filozofska fakulteta" - logo <- "logo_FF" -} else if (ID == 3000019){ - fakulteta <- "EF" - studijska.praksa <- "Prakse EF" - ime.fakultete <- "Ekonomska fakulteta" - logo <- "logo_EF" -} else if (ID == 3000020){ - fakulteta <- "PF" - studijska.praksa <- "Prakse PF" - ime.fakultete <-"Pravna fakulteta" - logo <- "logo_PF" -} else if (ID == 3000021){ - fakulteta <- "FDV" - studijska.praksa <- "Prakse FDV" - ime.fakultete <- "Fakulteta za drubene vede" - logo <- "logo_FDV" -} else if (ID == 3000022){ - fakulteta <- "FSSS" - studijska.praksa <- "Prakse FSSS" - ime.fakultete <- "Fakulteta za port" - logo <- "logo_FSSS" -} else if (ID == 3000023){ - fakulteta <- "FS" - studijska.praksa <- "Prakse FSTR" - ime.fakultete <- "Fakulteta za strojnitvo" - logo <- "logo_FSTR" -} else if (ID == 3000025){ - fakulteta <- "FA" - studijska.praksa <- "Prakse FA" - ime.fakultete <- "Fakulteta za arhitekturo" - logo <- "logo_FA" -} else if (ID == 3000026){ - fakulteta <- "FGG" - studijska.praksa <- "Prakse FGG" - ime.fakultete <- "Fakulteta za gradbenitvo in geodezijo" - logo <- "logo_FGG" -} else if (ID == 3000027){ - fakulteta <- "FMF" - studijska.praksa <- "Prakse FMF" - ime.fakultete <- "Fakulteta za matematiko in fiziko" - logo <- "logo_FMF" -} else if (ID == 3000029){ - fakulteta <- "NTF" - studijska.praksa <- "Prakse NTF" - ime.fakultete <- "Naravoslovnotehnika fakulteta" - logo <- "logo_NTF" -} else if (ID == 3000030){ - fakulteta <- "FKKT" - studijska.praksa <- "Prakse FKKT" - ime.fakultete <- "Fakulteta za kemijo in kemijsko tehnologijo" - logo <- "logo_FKKT" -} else if (ID == 3000031){ - fakulteta <- "FFA" - studijska.praksa <- "Prakse FFARM" - ime.fakultete <- "Fakulteta za farmacijo" - logo <- "logo_FFARM" -} else if (ID == 3000037){ - fakulteta <- "VF" - studijska.praksa <- "Prakse VF" - ime.fakultete <- "Veterinarska fakulteta" - logo <- "logo_VF" -} else if (ID == 3000041){ - fakulteta <- "MF" - studijska.praksa <- "Prakse MF" - ime.fakultete <- "Medicinska fakulteta" - logo <- "logo_MF" -} else if (ID == 3000042){ - fakulteta <- "ALUO" - studijska.praksa <- "Prakse ALUO" - ime.fakultete <- "Akademija za likovno umetnost in oblikovanje" - logo <- "logo_ALU" -} else if (ID == 3000043){ - fakulteta <- "AG" - studijska.praksa <- "Prakse AG" - ime.fakultete <- "Akademija za glasbo" - logo <- "logo_AG" -} else if (ID == 3000044){ - fakulteta <- "AGRFT" - studijska.praksa <- "Prakse AGRFT" - ime.fakultete <- "Akademija za gledalie, radio, film in televizijo" - logo <- "logo_AGRFT" -} else if (ID == 3000050){ - fakulteta <- "TEOF" - studijska.praksa <- "Prakse TEOF" - ime.fakultete <- "Teoloka fakulteta" - logo <- "logo_TEOF" -} else if (ID == 3000063){ - fakulteta <- "FRI" - studijska.praksa <- "Prakse FRI" - ime.fakultete <- "Fakulteta za raunalnitvo in informatiko" - logo <- "logo_FRI" -} else if (ID == 3000064){ - fakulteta <- "FE" - studijska.praksa <- "Prakse FE" - ime.fakultete <- "Fakulteta za elektrotehniko" - logo <- "logo_FE" -} else if (ID == 3000071){ - fakulteta <- "BF" - studijska.praksa <- "Prakse BF" - ime.fakultete <- "Biotehnika fakulteta" - logo <- "logo_BF" -} else { - fakulteta <- "" - studijska.praksa <- "" - ime.fakultete <- "" -} -## //Opredelimo ID// ## - - -## //Preberemo vhodne datoteke// ## - -# Preberemo vhodne datoteke glede na ID, ki so ga opredelili ## -# V navodilih so opredeljene komponente in definirana imena vpraanj + -# ankete 1KA za izvajalca (npr. IZPOUC1) in za predmet (npr. IZPREDa) -# Vrstice predstavljajo komponente za izvajalca in za predmete. -# Definirana so tudi imena komponent, ki jih zapiemo v latex tabelah + -# (stolpec: ime.kratko) ter celotna imena komponent oz. anketnih vpraanj -# (glej stolpec: ime.dolgo) -# V navodilih so opredeljene spremenljivke, ki se nanaajo na spremenljivke v bazi (anketa pred in anketa po izpitu) ter -# dodana nova imena teh spremenljivk, ki smo jih generirali sami zaradi lajega in hitrejega pisanja nadalnje kode -# (klicanje teh spremenljivk, ki se raunajo) -navodila <- openxlsx::read.xlsx(xlsxFile = "Evalvacija/temp/navodila.xlsx", colNames = TRUE, rowNames = TRUE) # Glej excel navodila! - -#Podatki za: Anketa PRED izpitom -data_pred_izpitom <- read.csv2(paste0("Evalvacija/temp/anketa_pred_izp_", fakulteta, ".csv"), sep=";", header = T, fill = T, stringsAsFactors = FALSE) -if (data_pred_izpitom[1,1] == "Ustreznost") {data_pred_izpitom <- data_pred_izpitom[2:nrow(data_pred_izpitom), ]} - -# Ker je v ifrantu ifra tudenta z velikimi rkami, v csv datotekah (anketa PRED in PO) pa z malimi, to ustrezno preoblikujemo (da se ujema) -# large font -#data_pred_izpitom$sifstud <- toupper(data_pred_izpitom$sifstud) -# Umetno generiramo ifre tudentov, zato da lahko navidezno zrduimo podatke pred izpitom in po izpitu -#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -# V letu 2017 je prilo do spremembe v ifrantih, in sicer v obeh bazah odgovorov tudentov -# 1KA (anketa pred izpitom in anketa PO izpitu) ne sem biti ve IFER TUDENTOV, ki pa je v -# prejnjih leti bila. Ker smo dve loeni bazi (anketa pred in po izpitu) -# zdruevali na podlagi ifre tudentov to ve ni mogoe. Zato imamo dve reitvi: -# 1) Celotno kodo preuredimo tako, da bomo podatke vlekli iz dveh razlinih baz (data_pred_izpitom, data_po_izpitu) -# 2) Umetno geneiramo ifre tudentov le zato, da bazi lahko zdruimo in ni potrebno preurejati kode na novo. -# Zaradi velikeha prihranka asa smo izbrali drugo monost!!!!!!!!!!! -# Umetno generirani ID tudentov so uporabljeni le zaradi zdruevanja baz, in se jih ne upoteva nikjer drugje (npr raunanje povpreij) -# Zdruimo torej zato, da ni potrebno razbijati in na novo urejati cele kode -# Sami generiramo id tudentov, ki se bodo zaeli z A1 in konali z An (odbisno od tevila vrstic) -data_pred_izpitom$sifstud <- sort(sample(paste0("A", seq(1:nrow(data_pred_izpitom))), replace = FALSE), decreasing = TRUE) - -# Sortiramo po velikosti oz. A1, A2, A3,..... -data_pred_izpitom$sifstud <- data_pred_izpitom$sifstud[order(gsub("([A-Z]+)([0-9]+)", "\\1", data_pred_izpitom$sifstud), - as.numeric(gsub("([A-Z]+)([0-9]+)", "\\2", data_pred_izpitom$sifstud )))] -# Podatki za: Anketa PO izpitu -data_po_izpitu <- read.csv2(paste0("Evalvacija/temp/anketa_po_izpitu_", fakulteta, ".csv"), sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -if (data_po_izpitu[1,1]=="Ustreznost") {data_po_izpitu <- data_po_izpitu[2:nrow(data_po_izpitu), ]} - -# large font -#data_po_izpitu$sifstud <- toupper(data_po_izpitu$sifstud) - -# Enako naredimo e za anketo PO izpitu -data_po_izpitu$sifstud <- sort(sample(paste0("A", seq(1:nrow(data_po_izpitu))), replace = FALSE), decreasing = FALSE) - -# Sortiramo po velikosti oz. A1, A2, A3,..... -data_po_izpitu$sifstud <- data_po_izpitu$sifstud [order(gsub("([A-Z]+)([0-9]+)", "\\1", data_po_izpitu$sifstud ), - as.numeric(gsub("([A-Z]+)([0-9]+)", "\\2", data_po_izpitu$sifstud)))] -# ifrant X1 -# my_data <- read.delim("FGG.txt", sep="#" , header=F, stringsAsFactors = FALSE) -# my_data <- my_data[,2:ncol(my_data)] -# colnames(my_data) <- c("IDP", "PREDMET", "IDPEDAGOGA", "NAZIV PEDAGOGA", "NACIN_STUDIJA", -# "SEMESTER_IZV", "ST_KT", "ST_STUD", "NOSILEC", "STOPNJA", "PRAKSA", "IZVEDBA") -# -# my_data["IZVEDBA"] <- NULL -# my_data["ST_STUD"] <- NULL -# my_data$IDP <- ifelse(my_data$NACIN_STUDIJA == 1, paste0(my_data$IDP,"_1"), paste0(my_data$IDP,"_2")) -# -# my_data$IDP <- as.character(my_data$IDP) -# -# sifrant <- read.csv2("sifrant_FGG.csv", sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -# sifrant["IZVEDBA"] <- NULL -# -# sifrantFDV <- merge(my_data, sifrant[c("IDP","IDPEDAGOGA","ST_STUD")], by = c("IDP","IDPEDAGOGA"), all = TRUE, sort = FALSE) -# -# sifrantFDV <- sifrantFDV[c("IDP", "PREDMET", "IDPEDAGOGA", "NAZIV PEDAGOGA", "NACIN_STUDIJA", -# "SEMESTER_IZV", "ST_KT", "ST_STUD", "STOPNJA", "NOSILEC", "PRAKSA")] -# -# sifrantFDV <- subset(sifrantFDV, !is.na(PREDMET)) -# -# -# write.csv2(sifrantFDV, "sifrant_FGG.csv", row.names = FALSE) - -sifrant <- read.csv2(paste0("Evalvacija/temp/sifrant_", fakulteta, ".csv"), sep = ";", header = T, fill = T, stringsAsFactors = FALSE) - -# 7.10.2017 nov sifrant X1, ki se bo uporabil za anlize. -# za anlize se ne sme uporabiti novega stevila studentov, ker ni realno - -# tako da lahko se uporabi posodobljene podatke za pedagoge, stevilo studentov pa staro, -# kot je bilo v prejsnjem sifrantu. -# Zato moramo tevilo tudentov novega ifranta zdruiti, a ker so lahko nekateri pedagogi v novem -# ufrantu dodani bo to pominlo da bodo imeli pri T tudenov vrednost NA. Zato v kolikor ima -St.stud.NA.<- list() -for (i in sifrant$IDP) { - St.stud.NA.[[i]] <- subset(sifrant, IDP==i) - if(any(duplicated(St.stud.NA.[[i]]$IDP))){ - if(!all(is.na(St.stud.NA.[[i]]$ST_STUD))){ - St.stud.NA.[[i]]$ST_STUD <- as.numeric(St.stud.NA.[[i]]$ST_STUD) - St.stud.NA.[[i]]$ST_STUD <- max(St.stud.NA.[[i]]$ST_STUD, na.rm=T) - } - } -} -sifrant <- do.call(rbind, lapply(St.stud.NA., data.frame, stringsAsFactors=FALSE)) - - -# ifrant X2 -studenti <- read.csv2(paste0("Evalvacija/temp/studenti_", fakulteta, ".csv"), sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -# // !!!!!!! // # -# Remove duplicated rows (remove diplucated students) from data frame tudenti. -# Delamo samo takrat ko generiramo poroila za: Izvajalca, fakulteto in predmet!! -# Ko generiramo poroila za posamezne PROGRAME, KATEDRE tega ne uporabimo! -# Podvojeni tudenti so zaradi nekaterih fakultet, kjer so dvopredmetni programi -# (npr. Filozofska fakulteta, Teoloka fakulteta, itd.). -studenti <- studenti[!duplicated(studenti$ID_studenta_.MD5.), ] -# // !!!!!!! // # - -# ifrant X3 -programi.imena <- read.csv2(paste0("Evalvacija/temp/programi_", fakulteta, ".csv"), fill = TRUE, sep = ";",header = T, stringsAsFactors = FALSE) -# Encoding(programi.imena$Naziv ) <- "UTF-8" # e so pokvarjeni Ȏ-ji zaradi napanega encodinga v ifrantih to ustrezno popravimo -# Loimo univerzitetne in visokoolske programe z vrsto tudija, ker so drugae podvojena imena (npr. Druboslovna informatika (uni)) -programi.imena$Naziv <- paste0(programi.imena$Naziv, " (",programi.imena$Vrsta,")") # Imenu programa prilepimo vrsto tudija (npr. uni ali vs) - -## //Preberemo vhodne datoteke// ## - - -# Naloimo dodatna navodila, ki imajo ve nalog: (glej skripto navodila_dodatno-UTF-8.r) -source('Evalvacija/R/navodila_dodatno-UTF-8.r') - - -#-------------------------- MOREBITNE NESKLADNOSTI Z 1KA BAZO IN IFRANTOM X1 -----------------------------# -# Preverimo ali so v bazi kakni odgovori tistih izvajalcev, ki manjkajo v ifrantu X1. Npr izvajalec ima -# v bazi (anketa PRED izpitom) odgovore za predmet, ki v ifrantu X1 ni naveden oz. manjka -# Slednje lahko pivede do erorjev pri generiranju PDF poroil in asovne zamude, kar elimo prepreiti -library(tidyverse) -# ANKETA PRED -podatki.1KA.baza.PRED <- data_pred_izpitom %>% - gather(contains("sifizv"), - key = "sifizv", - value = "ID" - ) %>% - select_("predmet","sifpredm","ID") %>% - unique() - -# Kateri izvajalci so v 1KA bazi (imajo odgovore) a niso v ifrantu X1 -output.pred <- anti_join(podatki.1KA.baza.PRED, sifrant , by = c("sifpredm" ="IDP","ID"="IDPEDAGOGA")) -# Izloimo vse manjkajoe oz. nevsebinske vrednosti respondenta (-1, -2, -5, itd) -output.pred <- output.pred[! output.pred$ID %in% junk.komentar, ] - - -# PREVERI # -if (nrow(output.pred) >= 1) { # e je output.pred < 1 to pomeni, da sta bazi 1KA odgovorov (anketa PRED) in ifrant X1 skladni zato lahko nadaljujemo z izrauni - cat("V bazi 1KA (anketa PRED izpitom) se nahaja izvajalec z ID-jem",paste(output.pred$ID, collapse = ' , '), "ki ga v ifrantu X1 ni!!!!!") - warning("Izvajalci ki so v 1KA bazi, manjkajo v ifrantu X1") -} -# PREVERI # - -#------------------------- //MOREBITNE NESKLADNOSTI Z 1KA BAZO IN IFRANTOM X1// ---------------------------# - - -#--------------------------------------- AGREGAT SUMARNIH PREDMETOV -----------------------------------------# -if (ID == 3000043){ # e je ID == Fakulteta za Glasbo zdruimo doloene predmete iz ifranta x7 v meta predmet -source('Evalvacija/R/metapredmeti.r') -} -#------------------------------------ //AGREGAT SUMARNIH PREDMETOV// ----------------------------------------# - - -# Urejanje -sifrant$PREDMET <- trim(sifrant$PREDMET) # remove extra spaces # trim funkcija je definirana v funkcije.r -sifrant$PREDMET <- sub("^\\.", "", sifrant$PREDMET) # remove dots in front of course names (FDV!) -sifrant$NAZIV.PEDAGOGA <- trim(sifrant$NAZIV.PEDAGOGA) # remove extra spaces - - -# preverba e ni kakna ifra predmeta * ifra izvajalca v ifrantu podvojena -# npr. izvajalec je imel napano ifro in dve izvedbi (redna/izredna) nista imeli razlinih ifer -podvojeniID <- table(paste(sifrant$IDP, sifrant$IDPEDAGOGA, sep = '*')) -if (max(podvojeniID) > 1) { - sumljivci <- paste(names(podvojeniID[which(podvojeniID > 1)]), collapse = '\n') - warning("All course*lecturer ID's in sifrant should be unique!!\nThese are not:\n", sumljivci) -} - -# V excel datoteki navodila poiemo vzorec "izvajalec" in zajamemo vse vrstice, -# kjer se pojavlja. Enako naredimo e za predmet in tudenta. -# saj gre za komponente, po katerih raunamo povpreja, kvantile za izvajalce ali predmete. -# Kaj komponente? Glej excel datoteko navodila -navI <- navodila[grepl(pattern='izvajalec.*', rownames(navodila)), ] -navP <- navodila[grepl(pattern='predmet.*', rownames(navodila)), ] -navS <- navodila[grepl(pattern='student.*', rownames(navodila)), ] - -lokacije.izvajalci <- navI[, grepl(pattern='izvajalec.\\d', colnames(navodila))] -lokacije.predmet <- navP[, 'lokacije.predmet', drop = FALSE] # drop = False, ker elimo ohraniti podatkovni okvir -lokacije.student <- navS[, 'lokacije.student', drop = FALSE] - - -## ZDRUEVANJE SPREMENLJIVK V VARS.IZVAJALEC in VARS.PREDMET ## -# Spremenljivke oz komponente po katerih raunamo posamezna povpreja bi se dalo tudi neposredno raunati z -# navajanjem imen posameznih sprmenljivk v bazih anketa pred in anketa po izpitu. Npr namesto izvajalec ocena kakovost -# bi generirali vector s spremenljivko IZMNE1a. Ta spremenljivka je tako poimenovana v bazi. -# Zdruimo spremenljivke oz komponente za izvajalca v EXCEL DATOTEKI NAVODILA # -# Zdruimo zato, da ni potrebno navajati (npr. raunanje) imen posameznih spremenljivk, ki se nahajajo v anketi pred in po. -# Komponente, ki se bodo raunale oz. stolpce zdruimo v list, katerega nato kliemo pri raunanju in pri generiranju tabel -vars.izvajalec <- list( - cont = list(vars = rownames(navI)[navI$tip == 'CONT' & !is.na(navI$tip)]), # "CONT" pomeni, da gre za zaprto vpraanje - text = list(vars = rownames(navI)[navI$tip == 'TEXT' & !is.na(navI$tip)])) # "TEXT" pomeni, da gre za odprto vpraanje (glej npr 26 vrstico v excel datoteki navodila) - -vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'ime.kratko'] # ime.kratko (glej navodila) in tabele pri poroilu izvajalca. Npr ime.kratko se pojavlja v Tabeli 1.1: Poroilo izvajalca -vars.izvajalec$text$ime.kratko[vars.izvajalec$text$vars] <- navI[vars.izvajalec$text$vars, 'ime.kratko'] -vars.izvajalec$cont$ime.dolgo[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'ime.dolgo'] # Celoten tekst zaprtih vpraanj za tabele (glej izpis izvajalca) -vars.izvajalec$text$ime.dolgo[vars.izvajalec$text$vars] <- navI[vars.izvajalec$text$vars, 'ime.dolgo'] # Celoten tekst odprtih vpraanj za tabele (glej izpis izvajalca) -vars.izvajalec$cont$pobarvanka[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'pobarvanka'] # V excel datoteki opredelimo -# meje barvanja za posamezno komponento (glej stolpec pobarvanka). -# Te meje potem zapiemo v funkcijo s katero barvamo povpreja (glej skripto funkcije.r) -vars.izvajalec$cont$decimalke[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'decimalke.tabele'] # zaokroevanje obarvanih vrednosti na 1 decimalko (glej funkcije.r) - - -# Zdruimo spremenljivke oz komponente za PREDMETE (PRED IN PO) v EXCEL DATOTEKI navodila# -# Stolpce oz spremenljivke, ki se raunajo zdruimo v list -vars.predmet <- list( - cont=list(vars=c(rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRED"], # Komponente PRED izpitom - rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PO"], # Komponente PO izpitu - rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRAKSA"])), # Komponente, ki vsebujejo oceno za tudijsko prakso - text=list(vars=rownames(navP)[navP$tip == 'TEXT' & !is.na(navP$tip)]), - krediti=list(vars=rownames(navP["predmet.ocena.krediti", ])), - kompetence1=list(vars=rownames(navP["predmet.ocena.kompetence1", ]))) - -# Loimo kompponente po katerih raunamo povpreja za predmete, -# in sicer komponente PRED IZPITOM, komponente PO IZPITU IN komponente za tudijsko PRAKSO (zaradi raunanja vrednosti in izpisa poroil) -vars.predmet$cont$pred <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRED"] -vars.predmet$cont$po <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PO"] -vars.predmet$cont$praksa <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRAKSA"] - -vars.predmet$cont$ime.kratko[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'ime.kratko'] -vars.predmet$text$ime.kratko[vars.predmet$text$vars] <- navP[vars.predmet$text$vars, 'ime.kratko'] -vars.predmet$krediti$ime.kratko[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'ime.kratko'] -vars.predmet$kompetence1$ime.kratko[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'ime.kratko'] -vars.predmet$cont$ime.dolgo[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'ime.dolgo'] -vars.predmet$text$ime.dolgo[vars.predmet$text$vars] <- navP[vars.predmet$text$vars, 'ime.dolgo'] -vars.predmet$krediti$ime.dolgo[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'ime.dolgo'] -vars.predmet$kompetence1$ime.dolgo[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'ime.dolgo'] - -# Labele za komponenti Porabljeno tevilo ur in za kompetence (glej poroilo za izvajalca, poglavje: tevilo porabljenih ur (anketa PO izpitu)) -# Labele: "1 - Veliko manj" "2 - Nekoliko manj" "3 - Predvideno" "4 - Nekoliko ve" "5 - Veliko ve" -vars.predmet$krediti$labele[vars.predmet$krediti$vars] <- strsplit(navP["predmet.ocena.krediti","labele"], split = ",") -vars.predmet$kompetence1$labele[vars.predmet$kompetence1$vars] <- strsplit(navP["predmet.ocena.kompetence1","labele"], split = ",") - -# we don't use whole wording for graph labels -# Labele (graf) za komponento "Ustreznost KT" oz tevilo porabljenih ur (anketa PO izpitu) <- glej poroilo za izvajalca slika: -# Frekvenna porazdelitev za tevilo porabljenih ur (anketa PO izpitu) -vars.predmet$krediti$labele.graf <- vars.predmet$krediti$labele[vars.predmet$krediti$vars] -vars.predmet$krediti$labele.graf[[vars.predmet$krediti$vars]][c(2,4)] <- c("2", "4") - -# Labele za komponento "kompetence" <-glej poroilo za izvajalca -vars.predmet$kompetence1$labele.graf <- vars.predmet$kompetence1$labele[vars.predmet$kompetence1$vars] -vars.predmet$kompetence1$labele.graf[[vars.predmet$kompetence1$vars]][c(2,4)] <- c("2", "4") - -# "3,4,Inf,Inf" So meje barvanja, ki smo jih doloili v excel datoteki navodila, in sicer stolpec "pobarvanka" -# za 3,4,Inf,Inf -> manj kot 3 je bold redee, 3 ali ve in manj kot 4 je samo rdee, Inf, Inf pomeni da ni zgornje meje za barvanja. -# Katera barva pripada posamezni vrednosti v tabelah definiramo v skripti funkcije.r -vars.predmet$cont$pobarvanka[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'pobarvanka'] -vars.predmet$krediti$pobarvanka[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'pobarvanka'] -vars.predmet$kompetence1$pobarvanka[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'pobarvanka'] - -# Vse vrednosti bodo v tabelah zaokroene na eno decimalno mesto. Temu slui stolpec "decimalke.tabele" v excel datoteki navodila -vars.predmet$cont$decimalke[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'decimalke.tabele'] -vars.predmet$krediti$decimalke[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'decimalke.tabele'] -vars.predmet$kompetence1$decimalke[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'decimalke.tabele'] -#################### - -# Kot smo e omenili elimo zdruiti bazi, kar naredimo na podlagi ifer predmetov in ifer tudentov, ki smo -# jih za leto 2016/2017 simulirali. -# merging data from before and after exam databases - each student must have only 1 row for each course -data <- merge(data_pred_izpitom, data_po_izpitu, by = c(navodila["student.sifra","lokacije.student"], - navodila["predmet.sifra","lokacije.predmet"]), all = TRUE) - -####################################################################################### -# premetavanje -####################################################################################### - -###################### -# PODATKI ZA IZVAJALCE (premetavanje po anketah -> po izvajalcih) -##################### -# tevilo izvajalcev v bazi -lokacije.izvajalci.names <- names(data)[grepl( "izvajalec." , names(data))] -lokacije.izvajalci <- lokacije.izvajalci[,1:length(lokacije.izvajalci.names)] -data.izvajalci <- NULL -for (i in names(lokacije.izvajalci)){ # lokacije.izvajalci in lokacije.predmet <- v excel datoteki Navodila - data.temp <- data[c(lokacije.predmet[, 1], as.vector(lokacije.izvajalci[[i]]),"idprog.x","letnik.x","program.x","lurker.x")] # spremenljivke ki smo jih doloili glede na predavatelje v csv uvoeni tabeli - names(data.temp) <- c(rownames(lokacije.predmet), rownames(lokacije.izvajalci), "ID_vrsta_studija","Letnik","Naziv","lurker") - data.temp <- subset(data.temp, izvajalec.sifra > 0) # samo kjer je naveden izvajalec - if (is.null(data.izvajalci)) { - data.izvajalci <- data.temp - } else { - data.izvajalci <- rbind(data.izvajalci,data.temp) - } -} - -# Izloimo vse manjkajoe vrednosti -# setting missing values and keeping some (defined in navodila.xlsx in column missing.table) for frequency tables -someMissVars <- rownames(navodila[!is.na(navodila$missings.table), ]) -data.izvajalci.someMiss <- data.izvajalci[c("predmet.sifra","izvajalec.sifra",someMissVars)] -for (var in c(vars.predmet$cont$vars,vars.predmet$text$vars,vars.predmet$krediti$vars, - vars.predmet$kompetence1$vars,vars.izvajalec$cont$vars,vars.izvajalec$text$vars)) { - miss <- unlist(strsplit(navodila[var,]$missings, ",")) - data.izvajalci[, var][data.izvajalci[, var] %in% miss] <- NA - if (var %in% c(vars.predmet$cont$vars,vars.predmet$krediti$vars, - vars.predmet$kompetence1$vars,vars.izvajalec$cont$vars)) { - data.izvajalci[, var] <- as.numeric(data.izvajalci[, var]) - } - if (var %in% someMissVars) { - someMissVals <- matrix(unlist(strsplit(unlist(strsplit(navodila[var,]$missings.table, ",")), "=")), ncol = 2, byrow = TRUE) - miss <- miss[!(miss %in% someMissVals[, 1])] - data.izvajalci.someMiss[, var][data.izvajalci.someMiss[, var] %in% miss] <- NA - for (missVar in 1:nrow(someMissVals)) { - data.izvajalci.someMiss[, var][data.izvajalci.someMiss[, var] == someMissVals[missVar,1] & - !is.na(data.izvajalci.someMiss[, var])] <- someMissVals[missVar,2] - } - } -} -# all values with some miss for tables -# Glej tabelo Povpreja in delei kategorij odgovorov za komponente pedagokega dela izvajalca pri predmetu (anketa PRED izpitom)" -izvajalec.someMiss <- sort(unique(as.vector(as.matrix(data.izvajalci.someMiss[,vars.izvajalec$cont$vars])))) - -# Check if values are missing. We need column_name for table making -# V poroilu za izvajalca glej podpoglavje: Frekvenna porazdelitev ocen komponent pedagokega dela izvajalca -# V primeru, da kakna vrednost manjka jo ustvarimo, sicer ko poenemo koda-izvajalec_predmet ne generira tabel -column_name <- c("1","2","3","4","5","Ne elim odgovoriti","Nimam dovolj informacij") - -if (length(which(izvajalec.someMiss %in% column_name)) < 7) { - # e so kakne manjkajoe vrednosti, ki se dodajajo v tabele kot imena stolpcev za izvajalca - Missing <- setdiff(column_name, izvajalec.someMiss) # Find names of missing columns - izvajalec.someMiss <- c(Missing,izvajalec.someMiss) - izvajalec.someMiss <- sort(izvajalec.someMiss) -} -# //column_name// # - - -data.izvajalci <- data.izvajalci[order(data.izvajalci$izvajalec.sifra, data.izvajalci$predmet.sifra), ] -# tevilo vseh odgovorov. To so odgovori na predmet in izvajalca -# '-1' neodgovorjeno vpraanje, '-2' preskok zaradi pogoja (IF) -data.izvajalci$veljavna.vsiodgovori <- data.izvajalci$predmet.izpolnjeval.pred == -1 & (data.izvajalci$izvajalec.jepouceval == 1 | data.izvajalci$izvajalec.jepouceval == 2 | data.izvajalci$izvajalec.jepouceval == -2) -# tevilo odgovorov izvajalca -# ali je anketa veljavna za izvajalca; ali je student ni izpolnjeval (je pa zael anketo) -data.izvajalci$veljavna <- data.izvajalci$predmet.izpolnjeval.pred == -1 & (data.izvajalci$izvajalec.jepouceval == 1 | data.izvajalci$izvajalec.jepouceval == -2) -data.izvajalci$zavrnjena <- (!data.izvajalci$veljavna & !is.na(data.izvajalci$predmet.izpolnjeval.pred) & !is.na(data.izvajalci$izvajalec.jepouceval) & !(data.izvajalci$izvajalec.jepouceval == 2)) -data.izvajalci$nipouceval <- data.izvajalci$izvajalec.jepouceval == 2 # e je tudent v anketi pred izpitom odgovoril, da ga izvajalec pri tem predmetu ni poueval -# adding student data (year and programme) -data.izvajalci <- merge(data.izvajalci, programi.imena[,c("ID", "Naziv")], by.x = "ID_vrsta_studija", by.y = "ID", all.x = TRUE, sort = FALSE) -names(data.izvajalci)[match(c("ID_vrsta_studija","Letnik","Naziv.y"), names(data.izvajalci))] <- c("student.program.sifra","student.letnik","student.program.ime") - - -# if (ID == "3000025") { -# sifre <- c("317_1","317_2","326_1","337_1","436_1","472_1","335_1","345_1","354_1") -# -# r <- with(data.izvajalci, which(data.izvajalci$predmet.sifra %in% sifre & data.izvajalci$izvajalec.jepouceval !="1"), arr.ind=TRUE) -# -# newd <- data.izvajalci[-r, ] -# -# data.izvajalci <- newd -# } - -##################### -# PODATKI ZA PREDMETE -##################### -data.predmeti <- data[c(lokacije.predmet[, 1], lokacije.student[, 1],"idprog.x","letnik.x","program.x", "lurker.x")] # Zdruimo spremenljivke v lokacije.predmet[, 1] in ifro tudentov -names(data.predmeti) <- c(rownames(lokacije.predmet), rownames(lokacije.student),"ID_vrsta_studija","Letnik","Naziv","lurker") -someMissVars <- rownames(navP[!is.na(navP$missings.table), ]) -data.predmeti.someMiss <- data.predmeti[c("predmet.sifra", someMissVars)] -# setting missing values and keeping some (defined in navodila.xlsx in column missing.table) for frequency tables -for (var in c(vars.predmet$cont$vars,vars.predmet$text$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - miss <- unlist(strsplit(navodila[var,]$missings, ",")) - data.predmeti[, var][data.predmeti[, var] %in% miss] <- NA - if (var %in% c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - data.predmeti[, var] <- as.numeric(data.predmeti[, var]) - } - if (var %in% someMissVars) { - someMissVals <- matrix(unlist(strsplit(unlist(strsplit(navodila[var,]$missings.table, ",")), "=")), ncol = 2, byrow = TRUE) - miss <- miss[!(miss %in% someMissVals[, 1])] - data.predmeti.someMiss[, var][data.predmeti.someMiss[, var] %in% miss] <- NA - for (missVar in 1:nrow(someMissVals)) { - data.predmeti.someMiss[, var][data.predmeti.someMiss[, var] == someMissVals[missVar, 1] & - !is.na(data.predmeti.someMiss[, var])] <- someMissVals[missVar, 2] - } - } -} -# all values with some miss for tables -predmet.someMiss <- sort(unique(as.vector(as.matrix(data.predmeti.someMiss[, vars.predmet$cont$vars])))) -if(any(predmet.someMiss=="")) { - predmet.someMiss <- predmet.someMiss[predmet.someMiss != ""] - -} - -# data.predmeti$predmet.sifra <- as.numeric(data.predmeti$predmet.sifra) -data.predmeti <- data.predmeti[order(data.predmeti$predmet.sifra),] -# ali je anketa veljavna za predmet; ali je student ni izpolnjeval (je pa zael anketo) -# '-1' neodgovorjeno vpraanje -data.predmeti$veljavna <- data.predmeti$predmet.izpolnjeval.pred == -1 & !is.na(data.predmeti$predmet.izpolnjeval.pred) -data.predmeti$veljavna_po_izpitu <- data.predmeti$predmet.izpolnjeval.po == -1 & !is.na(data.predmeti$predmet.izpolnjeval.po) -data.predmeti$zavrnjena <- (!data.predmeti$veljavna & !is.na(data.predmeti$predmet.izpolnjeval.pred)) -data.predmeti$zavrnjena_po_izpitu <- (!data.predmeti$veljavna_po_izpitu & !is.na(data.predmeti$predmet.izpolnjeval.po)) -# adding student data (year and programme) -data.predmeti <- merge(data.predmeti, programi.imena[,c("ID", "Naziv")], by.x="ID_vrsta_studija", by.y="ID", all.x=TRUE, sort=FALSE) -names(data.predmeti)[match(c("ID_vrsta_studija","Letnik","Naziv.y"), names(data.predmeti))] <- c("student.program.sifra","student.letnik","student.program.ime") - -# ali so v bazi kakni predmeti ki jih ni v ifrantu -test2 <- unique(data.predmeti$predmet.sifra)[!(unique(data.predmeti$predmet.sifra) %in% unique(sifrant$IDP))] -if (length(test2) > 0) { - test2 <- paste(test2, collapse='\n') - warning('V ifrantu ni predmetov, ki pa so v bazi:\n', test2) -} - -# zapis obeh baz na katerih se dela naprej -#write.csv2(data.izvajalci, paste0("results/data.izvajalci_", fakulteta, ".csv")) -# #write.csv2(data.predmeti, paste0("results/data.predmeti_", fakulteta, ".csv")) - -# e je output.pred > 1 to pomeni, da sta bazi 1KA odgovorov (anketa PRED) in ifrant X1 neskladni -if (nrow(output.pred) > 0) { - # data.izvajalci <- data.izvajalci[!(data.izvajalci$predmet.sifra %in% output.pred$sifpredm & - # data.izvajalci$izvajalec.sifra %in% output.pred$ID), ] - data.izvajalci <- data.izvajalci[! paste(data.izvajalci$predmet.sifra, data.izvajalci$izvajalec.sifra) %in% - paste(output.pred$sifpredm, output.pred$ID), ] -} - -####################################################################################### -# izrauni opisnih statistik -####################################################################################### - -############### -## IZVAJALCI ## -############### -# povpreja -izvMean <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = mean, na.rm = TRUE) -colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - -# mediane -izvMedian <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = median, na.rm = TRUE) -colnames(izvMedian)[3:ncol(izvMedian)] <- paste0(vars.izvajalec$cont$vars,"_median") - -# sd -izvSd <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sd, na.rm = TRUE) -colnames(izvSd)[3:ncol(izvSd)] <- paste0(vars.izvajalec$cont$vars,"_sd") - -# min -izvMin <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = min, na.rm = TRUE) -colnames(izvMin)[3:ncol(izvMin)] <- paste0(vars.izvajalec$cont$vars,"_min") -izvMin[izvMin==Inf] <- NA - -# max -izvMax <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = max, na.rm = TRUE) -colnames(izvMax)[3:ncol(izvMax)] <- paste0(vars.izvajalec$cont$vars,"_max") -izvMax[izvMax==-Inf] <- NA - -# N posamezne spremenljivke -izvN <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) -colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - -# N anket -izvNanket <- aggregate(data.izvajalci$veljavna,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNanket)[3] <- "N_anket" - -# N vseh odgovorov -izvNanketvsiodgovori <- aggregate(data.izvajalci$veljavna.vsiodgovori,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNanketvsiodgovori)[3] <- "N_anketSkupaj" - -# N zavrnjenih anket -izvNzavrnjenih <- aggregate(data.izvajalci$zavrnjena,by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNzavrnjenih)[3] <- "N_zavrnjenih" - - -# N Lurkerjev PRED izpitom -data.izvajalci$lurker[data.izvajalci$lurker==0] <- NA -izvNLurkerji <- aggregate(as.numeric(data.izvajalci$lurker), by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")],FUN=function(x) sum(!is.na(x))) -colnames(izvNLurkerji)[3] <- "N_lurkerjev_ivz" - -# N anket: Izvajalec ni poueval -izvNipouceval <- aggregate(data.izvajalci$nipouceval,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNipouceval)[3] <- "Ni_pouceval" - -# Prvi kvartil Q1 -izvQ1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.25),na.rm=T) -colnames(izvQ1)[3:ncol(izvQ1)] <- paste0(vars.izvajalec$cont$vars,"_Q1") - -# Tretji kvartil -izvQ3 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.75),na.rm=T) -colnames(izvQ3)[3:ncol(izvQ3)] <- paste0(vars.izvajalec$cont$vars,"_Q3") - -# Prvi decil -izvD1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.1), type=5,na.rm=T) -colnames(izvD1)[3:ncol(izvD1)] <- paste0(vars.izvajalec$cont$vars,"_D1") - -# Deveti decil -izvD9 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.9), type=5,na.rm=T) -colnames(izvD9)[3:ncol(izvD9)] <- paste0(vars.izvajalec$cont$vars,"_D9") - -# Zduimo opisne statistike izvajalcev -povprecja.izvajalci <- merge(izvMean, izvSd, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvMin,by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvMax, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvN, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNanket, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNanketvsiodgovori, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNzavrnjenih, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNipouceval, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvQ1, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvQ3, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvMedian , by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvD1, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvD9, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNLurkerji, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - - -# zdruit s ifrantom -povprecja.izvajalci <- merge(povprecja.izvajalci, sifrant, - by.x = c("izvajalec.sifra", "predmet.sifra"), - by.y = c("IDPEDAGOGA", "IDP"), all.x = TRUE, sort = FALSE) - -# write.csv2(povprecja.izvajalci, paste0("results/povprecja.izvajalci_", fakulteta, ".csv")) - - -# zakrivanje vrednosti kjer ni dovolj enot -premalo <- povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_sd")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_min")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_max")][premalo] <- NA - - -# Kjer je negativno tevilo pomeni, da gre za ve vpisanih tudentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.izvajalci$ST_STUD <- ifelse(povprecja.izvajalci$ST_STUD < as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih), - as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih),povprecja.izvajalci$ST_STUD) - -# povpreje vseh komponent izvajalca -povprecja.izvajalci$izvajalec.ocena.SKUPAJ <- rowMeans(povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_mean")], na.rm = T) - -# % sodelujocih -povprecja.izvajalci$sodelujocih.pct <- povprecja.izvajalci$N_anket / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % zavrnjenih -povprecja.izvajalci$zavrnjenih.pct <- povprecja.izvajalci$N_zavrnjenih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % Ni pouceval -povprecja.izvajalci$nipouceval.pct <- povprecja.izvajalci$Ni_pouceval / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -## N in % neodzivnih -#intersect(as, povprecja.izvajalci$ST_STUD) -povprecja.izvajalci$N_neodzivnih <- as.numeric(povprecja.izvajalci$ST_STUD) - povprecja.izvajalci$N_anketSkupaj - povprecja.izvajalci$N_zavrnjenih -povprecja.izvajalci$neodzivnih.pct <- povprecja.izvajalci$N_neodzivnih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 -## //IZVAJALCI// ## - -############## -## PREDMETI ## -############## -# povpreja -predMean <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN = mean, na.rm = TRUE) -colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - -# Mediane -predMedian <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN = median, na.rm = TRUE) -colnames(predMedian)[2:ncol(predMedian)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_median") - -# sd -predSd <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN = sd, na.rm = TRUE) -colnames(predSd)[2:ncol(predSd)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_sd") - -# min -predMin <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars)], by = data.predmeti["predmet.sifra"], FUN = min, na.rm = TRUE) -colnames(predMin)[2:ncol(predMin)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars),"_min") -predMin[predMin==Inf] <- NA - -# max -predMax <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars)], by = data.predmeti["predmet.sifra"], FUN = max, na.rm = TRUE) -colnames(predMax)[2:ncol(predMax)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars),"_max") -predMax[predMax==-Inf] <- NA - -# N posamezne spremenljivke -predN <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN=function(x) sum(!is.na(x))) -colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - -# N answering before and after exam -predNanket <- aggregate(data.predmeti$veljavna, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNanket)[2] <- "N_anket" -predNanket_po_izpitu <- aggregate(data.predmeti$veljavna_po_izpitu, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - -# N didn't want to answer before and after exam -predNzavrnjenih <- aggregate(data.predmeti$zavrnjena, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih)[2] <- "N_zavrnjenih" - -# N Lurkerjev PRED izpitom -data.predmeti$lurker[data.predmeti$lurker==0] <- NA -predNLurkerji <- aggregate(as.numeric(data.predmeti$lurker), by = data.predmeti["predmet.sifra"],FUN=function(x) sum(!is.na(x))) -colnames(predNLurkerji)[2] <- "N_lurkerjev_pred" - - -predNzavrnjenih_po_izpitu <- aggregate(data.predmeti$zavrnjena_po_izpitu, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih_po_izpitu)[2] <- "N_zavrnjenih_po_izpitu" - -# razporejanje ocen za kreditne toke (n & %) # Ustreznost KT -krediti_razporejanje_n <- table(data.predmeti$predmet.sifra, data.predmeti$predmet.ocena.krediti) -krediti_razporejanje_pct <- prop.table(krediti_razporejanje_n, 1) * 100 -if (!is.null(dimnames(krediti_razporejanje_n)[[2]])) { - colnames(krediti_razporejanje_n) <- paste0("krediti_razporejanje_n_", colnames(krediti_razporejanje_n)) - colnames(krediti_razporejanje_pct) <- paste0("krediti_razporejanje_pct_", colnames(krediti_razporejanje_pct)) - krediti_razporejanje_n <- cbind(as.data.frame.matrix(krediti_razporejanje_n), predmet.sifra=rownames(krediti_razporejanje_n)) - krediti_razporejanje_pct <- cbind(as.data.frame.matrix(krediti_razporejanje_pct), predmet.sifra=rownames(krediti_razporejanje_pct)) -} else {krediti_razporejanje_n <- NULL -krediti_razporejanje_pct <- NULL} - -# razporejanje ocen za kompetence1 (n & %) -kompetence1_razporejanje_n <- table(data.predmeti$predmet.sifra, data.predmeti$predmet.ocena.kompetence1) -kompetence1_razporejanje_pct <- prop.table(kompetence1_razporejanje_n, 1) * 100 -if (!is.null(dimnames(kompetence1_razporejanje_n)[[2]])) { - colnames(kompetence1_razporejanje_n) <- paste0("kompetence1_razporejanje_n_", colnames(kompetence1_razporejanje_n)) - colnames(kompetence1_razporejanje_pct) <- paste0("kompetence1_razporejanje_pct_", colnames(kompetence1_razporejanje_pct)) - kompetence1_razporejanje_n <- cbind(as.data.frame.matrix(kompetence1_razporejanje_n), predmet.sifra=rownames(kompetence1_razporejanje_n)) - kompetence1_razporejanje_pct <- cbind(as.data.frame.matrix(kompetence1_razporejanje_pct), predmet.sifra=rownames(kompetence1_razporejanje_pct)) -} else {kompetence1_razporejanje_n <- NULL -kompetence1_razporejanje_pct <- NULL} - - -# Prvi kvartil -predQ1 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.25),na.rm=T) -colnames(predQ1)[2:ncol(predQ1)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_Q1") - -# Tretji kvartil -predQ3 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.75),na.rm=T) -colnames(predQ3)[2:ncol(predQ3)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_Q3") - -# Prvi decil -predD1 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.1), type=5,na.rm=T) -colnames(predD1)[2:ncol(predD1)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_D1") - -# Deveti decil -predD9 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.9), type=5,na.rm=T) -colnames(predD9)[2:ncol(predD9)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_D9") - - -# Zdruimo izraunane statistike za predmete -povprecja.predmeti <- merge(predMean, predSd, by="predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predMin, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predMax, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predQ1, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predQ3, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predMedian, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predD1, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predD9, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNLurkerji, by = "predmet.sifra", all = TRUE, sort = FALSE) - - - - -# e spremenljivka krediti_razporejanje_n ni NULL, jo zdruimo v popvrecja.predmeti sicer ne. -if (!is.null(krediti_razporejanje_n)) { - povprecja.predmeti <- merge(povprecja.predmeti, krediti_razporejanje_n, by = "predmet.sifra", all = TRUE, sort = FALSE) - povprecja.predmeti <- merge(povprecja.predmeti, krediti_razporejanje_pct, by = "predmet.sifra", all = TRUE, sort = FALSE) -} -if (!is.null(kompetence1_razporejanje_n)) { - povprecja.predmeti <- merge(povprecja.predmeti, kompetence1_razporejanje_n, by = "predmet.sifra", all = TRUE, sort = FALSE) - povprecja.predmeti <- merge(povprecja.predmeti, kompetence1_razporejanje_pct, by = "predmet.sifra", all = TRUE, sort = FALSE) -} - -povprecja.predmeti <- merge(povprecja.predmeti, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNzavrnjenih, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNzavrnjenih_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - -# zdruit s ifrantom -povprecja.predmeti <- merge(povprecja.predmeti, unique(sifrant[!(colnames(sifrant) %in% c("IDPEDAGOGA", "NAZIV.PEDAGOGA", "ST_KT", "ST_UR", "NOSILEC"))]), - by.x = "predmet.sifra", by.y = "IDP", all.x = TRUE, sort = FALSE) - - -# write.csv2(povprecja.predmeti, paste0("results/povprecja.predmeti_", fakulteta, ".csv")) - -# zakrivanje vrednosti kjer ni dovolj enot -premalo <- povprecja.predmeti[paste0(vars.predmet$cont$vars,"_N")] < minEnot -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_mean")][premalo] <- NA -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_sd")][premalo] <- NA -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_min")][premalo] <- NA -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_max")][premalo] <- NA -# e za kredite -premalo <- povprecja.predmeti[paste0("predmet.ocena.krediti_N")] < minEnot -povprecja.predmeti["predmet.ocena.krediti_mean"][premalo] <- NA - - -# e so manjkajoe vrednosti (1:5) in eden izmed stolpcev od 1:5 manjka, poglej kateri manjka ga definiraj in mu pripii vrednost 0. -# Manjkajoe vrednosti nastanejo, ker gre za vpraanje na lestvici od 1:5, in npr. vrednost 1 ni oznail nihe -# Definirane stolpce od 1:5 potrebujemo pri poroilu za izvajalca, in sicer pri generiranju tabel: poroilo za izvajalca -# Glej npr tabelo: Frekvenna porazdelitev za tevilo porabljenih ur* (anketa PO izpitu) -if (any(paste0("krediti_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # povprecja.predmeti = data.frame - missing <- paste0("krediti_razporejanje_n_",1:5)[paste0("krediti_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0, nrow(povprecja.predmeti)) - } -} - -# e je tevilo odogovorov manje od 4, mu pripiemo NA -povprecja.predmeti[paste0("krediti_razporejanje_n_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - -# e so manjkajoe vrednosti in eden izmed stolpcev od 1:5 manjka, poglej kateri manjka in ga definiraj -if (any(paste0("krediti_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # x = data.frame - missing <- paste0("krediti_razporejanje_pct_",1:5)[paste0("krediti_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0,nrow(povprecja.predmeti)) - } -} -povprecja.predmeti[paste0("krediti_razporejanje_pct_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - -# In za kompetence -premalo <- povprecja.predmeti[paste0("predmet.ocena.kompetence1_N")] < minEnot -povprecja.predmeti["predmet.ocena.kompetence1_mean"][premalo] <- NA - - -if (any(paste0("kompetence1_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # x = data.frame - missing <- paste0("kompetence1_razporejanje_n_",1:5)[paste0("kompetence1_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0,nrow(povprecja.predmeti)) - } -} -povprecja.predmeti[paste0("kompetence1_razporejanje_n_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - - -# e so manjkajoe vrednosti in eden izmed stolpcev od 1:5 manjka, poglej kateri manjka in ga definiraj -if (any(paste0("kompetence1_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # x = data.frame - missing <- paste0("kompetence1_razporejanje_pct_",1:5)[paste0("kompetence1_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0,nrow(povprecja.predmeti)) - } -} -povprecja.predmeti[paste0("kompetence1_razporejanje_pct_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - -# average of components - all, before, after exam -povprecja.predmeti$predmet.ocena.SKUPAJ <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$vars,"_mean")], na.rm = T) -povprecja.predmeti$predmet.ocena.SKUPAJ.pred <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$pred,"_mean")], na.rm = T) -# Ker je v NAKETI PO IPZITU komponenta "kompetence" merjena na drugani lestvici od komponent:Vsebine, Naloge, Ocenjevanje, je ne upotevamo -# Pri izraunu skupnega povpreja in zato je skupno povpreje sestavljeno iz vseh spremenljivk - 1 oz. vars.predmet$cont$po[-1] -povprecja.predmeti$predmet.ocena.SKUPAJ.po <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$po[-1],"_mean")], na.rm = T) -povprecja.predmeti$predmet.ocena.SKUPAJ.praksa <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - -# tevilo tudentov pri posameznem predmetu: Spremenimo iz character v numeric -povprecja.predmeti$ST_STUD <- as.numeric(povprecja.predmeti$ST_STUD) - -# Kjer je negativno tevilo pomeni, da gre za ve vpisanih tudentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.predmeti$ST_STUD <- ifelse(povprecja.predmeti$ST_STUD < as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), - as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), povprecja.predmeti$ST_STUD) - -# % odgovora -povprecja.predmeti$sodelujocih.pct <- povprecja.predmeti$N_anket / povprecja.predmeti$ST_STUD * 100 -povprecja.predmeti$sodelujocih.pct_po_izpitu <- povprecja.predmeti$N_anket_po_izpitu / povprecja.predmeti$ST_STUD * 100 -# % zavrnjenih -povprecja.predmeti$zavrnjenih.pct <- povprecja.predmeti$N_zavrnjenih / povprecja.predmeti$ST_STUD * 100 -povprecja.predmeti$zavrnjenih.pct_po_izpitu <- povprecja.predmeti$N_zavrnjenih_po_izpitu / povprecja.predmeti$ST_STUD * 100 -# N in % neodzivnih (ni pristopilo k anketi) -povprecja.predmeti$N_neodzivnih <- povprecja.predmeti$ST_STUD - povprecja.predmeti$N_anket - povprecja.predmeti$N_zavrnjenih -povprecja.predmeti$neodzivnih.pct <- povprecja.predmeti$N_neodzivnih / povprecja.predmeti$ST_STUD * 100 -# Po izpitu -povprecja.predmeti$N_neodzivnih_po_izpitu <- povprecja.predmeti$ST_STUD - povprecja.predmeti$N_anket_po_izpitu - povprecja.predmeti$N_zavrnjenih_po_izpitu -povprecja.predmeti$neodzivnih.pct_po_izpitu <- povprecja.predmeti$N_neodzivnih_po_izpitu / povprecja.predmeti$ST_STUD * 100 -## //average of components - all, before, after exam// ## - -# preurejeno ime predmeta -povprecja.predmeti$ime.predmeta <- povprecja.predmeti$PREDMET - -# IZREDNi TUDIJ -izredni <- povprecja.predmeti$NACIN=="2" # e je izredni predmet mora biti to v oklepaju -izredni <- izredni[!is.na(izredni) ] -povprecja.predmeti$ime.predmeta[izredni] <- paste(povprecja.predmeti$ime.predmeta[izredni], "(izredna izvedba)") -# //IZREDNi TUDIJ// # - -# nova imena predmetov e k povprejem izvajalcev[] -povprecja.izvajalci <- merge(povprecja.izvajalci, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], by = "predmet.sifra", sort = FALSE) - -######################## -## TUDIJSKI PROGRAMI ## -######################## -# tevilo ocen po programih (za poroila in povpreja po programih) -programi <- unique(data.predmeti[c("student.program.sifra", "student.program.ime")]) -programi <- subset(programi, !is.na(student.program.sifra)) -programi <- subset(programi, student.program.ime != "NA") -programi <- programi[order(programi$student.program.ime), ] - -## izvajalec: tudijski program ## -povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.izv.temp <- subset(data.izvajalci, veljavna) -programi.studentov <- as.data.frame.matrix(table(paste(data.izv.temp$izvajalec.sifra, data.izv.temp$predmet.sifra, sep = "_"), data.izv.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.izvajalci[match(rownames(programi.studentov), paste(povprecja.izvajalci$izvajalec.sifra, povprecja.izvajalci$predmet.sifra, sep = "_")), names(programi.studentov)] <- programi.studentov - -## predmet: tudijski program ## -povprecja.predmeti[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.prog.temp <- subset(data.predmeti, veljavna) -programi.studentov <- as.data.frame.matrix(table(data.prog.temp$predmet.sifra, data.prog.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.predmeti[match(rownames(programi.studentov), povprecja.predmeti$predmet.sifra), names(programi.studentov)] <- programi.studentov - -# sort by name -povprecja.izvajalci <- povprecja.izvajalci[order(povprecja.izvajalci$NAZIV.PEDAGOGA, povprecja.izvajalci$PREDMET), ] -povprecja.predmeti <- povprecja.predmeti[order(povprecja.predmeti$PREDMET),] - -# Uporabimo, ko delamo izpis za TRENDE ali za HABILITACIJSKO KOMISIJO -#write.csv2(povprecja.izvajalci, paste0("results/povprecja.izvajalci-minEnot_", fakulteta, ".csv") -#write.csv2(povprecja.predmeti, paste0("results/povprecja.predmeti-minEnot_", fakulteta, ".csv") - -# are there any courses with too many answers in the database according to sifrant.xlsx -premalo_vpisanih <- povprecja.predmeti$N_neodzivnih < 0 -premalo_vpisanih <- !is.na(premalo_vpisanih) -if (any(premalo_vpisanih)) { - warning(c("Some courses have more students in the database than number of students that are attending the course according to sifrant.xlsx", - paste("\n",povprecja.predmeti$predmet.sifra[premalo_vpisanih], povprecja.predmeti$PREDMET[premalo_vpisanih],paste0("(",abs(povprecja.predmeti$N_neodzivnih[premalo_vpisanih]), " more students)")))) -} - -# skupna povpreja izvajalcev (povpreja ocen pri vseh predmetih) -povprecja.izvajalci.skupaj <- aggregate(povprecja.izvajalci[, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct", paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by = povprecja.izvajalci[,"izvajalec.sifra", drop = FALSE], - FUN = mean, na.rm = TRUE) - -# number of evaluations from different programmes -vsota.ocen.programov <- aggregate(povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)], - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], FUN = sum, na.rm = TRUE) -povprecja.izvajalci.skupaj <- merge(povprecja.izvajalci.skupaj, vsota.ocen.programov, by = "izvajalec.sifra", all.x = TRUE) - -# number of courses with at least minimun nuber of answers -st.ocen <- aggregate(list(st.ocen=povprecja.izvajalci$N_anket >= minEnot), - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], FUN = sum, na.rm = TRUE) -povprecja.izvajalci.skupaj <- merge(povprecja.izvajalci.skupaj, st.ocen, by = "izvajalec.sifra", all.x = TRUE) - -# e imena izvajalcev -povprecja.izvajalci.skupaj <- merge(povprecja.izvajalci.skupaj, unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]), - by = "izvajalec.sifra", all.x = TRUE) - -# da izraunamo povpreja vseh predmetov doloenega izvajalca rabimo ocene predmetov po izvajalcih (podvojene vrstice z razlinimi iframi izvajalcev) -povprecja.predmeti.vsi.izvajalci <- merge(povprecja.izvajalci[,c("izvajalec.sifra","predmet.sifra")], povprecja.predmeti, - by = "predmet.sifra", all.x = TRUE, sort = FALSE) -povprecja.predmetov.izvajalca.skupaj <- aggregate(povprecja.predmeti.vsi.izvajalci[, c("ST_STUD","N_anket","N_anket_po_izpitu", - "sodelujocih.pct","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$vars,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa", - "predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")], - by = povprecja.predmeti.vsi.izvajalci[,"izvajalec.sifra", drop = FALSE], - FUN = mean, na.rm = TRUE) -# e imena izvajalcev -povprecja.predmetov.izvajalca.skupaj <- merge(povprecja.predmetov.izvajalca.skupaj, - unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]), - by = "izvajalec.sifra", all.x = TRUE) - -# povpreja vseh izvajalecv pri vsakem predmetu -povprecja.predmet.izvajalci.skupaj <- aggregate(povprecja.izvajalci[, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")], - by = povprecja.izvajalci[,"predmet.sifra",drop = FALSE], - FUN = mean, na.rm = TRUE) -# e imena predmetov -povprecja.predmet.izvajalci.skupaj <- merge(povprecja.predmet.izvajalci.skupaj, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], - by = "predmet.sifra", all.x = TRUE) - -# sort -povprecja.izvajalci.skupaj <- povprecja.izvajalci.skupaj[order(povprecja.izvajalci.skupaj$NAZIV.PEDAGOGA),] -povprecja.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[order(povprecja.predmetov.izvajalca.skupaj$NAZIV.PEDAGOGA),] -povprecja.predmet.izvajalci.skupaj <- povprecja.predmet.izvajalci.skupaj[order(povprecja.predmet.izvajalci.skupaj$ime.predmeta),] - -#write.csv2(povprecja.izvajalci.skupaj, file='results/povprecja.izvajalci.skupaj-minEnot.csv') -#write.csv2(povprecja.predmetov.izvajalca.skupaj, file='results/povprecja.predmetov.izvajalca.skupaj-minEnot.csv') -#write.csv2(povprecja.predmet.izvajalci.skupaj, file='results/povprecja.predmet.izvajalci.skupaj-minEnot.csv') - - -################# -## Quantiles ## -################# -# for every lecturer/course -# S funkcijo kvantRang in kvantRang1 izraunamo in barvamo kvantilne range, ki se pokaejo v posameznih tabelah (glej skirpto funkcije.r) -# Kvantilni rangi za izvajalce pri predmetih (IPP) -kvantili.izvajalci <- povprecja.izvajalci[c("izvajalec.sifra","NAZIV.PEDAGOGA","predmet.sifra","ime.predmeta","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci[[var]] <- kvantRang(kvantili.izvajalci[[var]]) - -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci[[var]] <- kvantRang1(kvantili.izvajalci[[var]]) - -} -# //Kvantilni rangi za izvajalce pri predmetih (IPP)// # - - -# Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu -kvantili.predmeti <- povprecja.predmeti[c("predmet.sifra","ime.predmeta","ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu",paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa", - "predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")] -for (var in c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po", - "predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti[[var]] <- kvantRang(kvantili.predmeti[[var]]) -} - -for (var in c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct","sodelujocih.pct_po_izpitu")) { - kvantili.predmeti[[var]] <- kvantRang1(kvantili.predmeti[[var]]) - -} - -for (var in c("predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")) { - kvantili.predmeti[[var]] <- kvantRang2(kvantili.predmeti[[var]]) - -} -# //Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu// # - -## lecturer averages ## -kvantili.izvajalci.skupaj <- povprecja.izvajalci.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang(kvantili.izvajalci.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang1(kvantili.izvajalci.skupaj[[var]]) - -} - -kvantili.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD", - "N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu",paste0(vars.predmet$cont$vars,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa", - "predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")] -for (var in c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa","predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang(kvantili.predmetov.izvajalca.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct","sodelujocih.pct_po_izpitu")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang1(kvantili.predmetov.izvajalca.skupaj[[var]]) - -} - -## for table names (izpis izvajalca, programov, fakultete) ## -kvantili.izvajalci.st <- sum(kvantili.izvajalci$izvajalec.ocena.SKUPAJ != ".") # tevilo vseh ocenjenih izvajalcev fakultete - -# Glej npr izpis izvajalca, Tabela 1.1 (vrstico Povpreje FDV), -# kjer se izpie tevilo predmetov v anketi PRED izpitom -kvantili.predmeti.st.pred <- sum(kvantili.predmeti$predmet.ocena.SKUPAJ.pred != ".") # tevilo vseh ocenjenih predmetov: anketa PRED -kvantili.predmeti.st.po <- sum(kvantili.predmeti$predmet.ocena.SKUPAJ.po != ".") # tevilo vseh ocenjenih predmetov: anketa PO - -kvantili.izvajalci.skupaj.st <- sum(kvantili.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") # tevilo vseh ocenjenih IPP (izvajalcev pri) -kvantili.predmetov.izvajalca.skupaj.st.pred <- sum(kvantili.predmetov.izvajalca.skupaj$predmet.ocena.SKUPAJ.pred != ".") -kvantili.predmetov.izvajalca.skupaj.st.po <- sum(kvantili.predmetov.izvajalca.skupaj$predmet.ocena.SKUPAJ.po != ".") - -kvantili.ustreznotsKT <- sum(kvantili.predmeti$predmet.ocena.krediti_mean != ".") # tevilo vseh ocen za ustreznost KT (anketa PO) -kvantili.zadovoljstvo <- sum(kvantili.predmeti$predmet.ocena.zadovoljstvo_mean != ".") # tevilo vseh ocen za ustreznost KT (anketa PO) -## //Quantiles// ## - - -######################## -## FACULTY AVERAGES ## -######################## -# Povpreje izvajalcev -vars.izvajalec$cont$meansFDV[c(vars.izvajalec$cont$vars,"povprecje.ocen")] <- colMeans(povprecja.izvajalci[c(paste0(vars.izvajalec$cont$vars, "_mean"),"izvajalec.ocena.SKUPAJ")], na.rm = TRUE) - -# Povpreje predmetov (anketa PRED izpitom, anketa PO izpitu, tudijska praksa) -vars.predmet$cont$meansFDV[c(vars.predmet$cont$vars,"povprecje.ocen","povprecje.ocen.pred","povprecje.ocen.po","povprecje.ocen.praksa")] <- colMeans(povprecja.predmeti[c(paste0(vars.predmet$cont$vars, "_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa")], na.rm=TRUE) -# Povpreje tudijskih praks -vars.predmet$cont$FDVpraksa[c(vars.predmet$cont$praksa,"povprecje.ocen.praksa")] <- colMeans(povprecja.predmeti[c(paste0(vars.predmet$cont$praksa, "_mean"),"predmet.ocena.SKUPAJ.praksa")], na.rm = TRUE) - -# Povpreje Ustreznost KT -vars.predmet$krediti$meansFDV[c("predmet.ocena.krediti")] <- colMeans(povprecja.predmeti["predmet.ocena.krediti_mean"], na.rm = TRUE) - -# Standardni odklon za ustreznost KT -vars.predmet$krediti$meansFDV1[c("predmet.ocena.krediti.sd")] <- colMeans(povprecja.predmeti["predmet.ocena.krediti_sd"], na.rm = TRUE) -vars.predmet$krediti$pctsFDV[paste0("krediti_razporejanje_pct_", 1:5)] <- colMeans(povprecja.predmeti[paste0("krediti_razporejanje_pct_", 1:5)], na.rm = TRUE) - -# Povpreje kompetence -vars.predmet$kompetence1$meansFDV[c("predmet.ocena.kompetence1")] <- colMeans(povprecja.predmeti["predmet.ocena.kompetence1_mean"], na.rm = TRUE) - -# Standardni odklon za kompetence -vars.predmet$kompetence1$meansFDV1[c("predmet.ocena.kompetence1.sd")] <- colMeans(povprecja.predmeti["predmet.ocena.kompetence1_sd"], na.rm = TRUE) -vars.predmet$kompetence1$pctsFDV[paste0("kompetence1_razporejanje_pct_", 1:5)] <- colMeans(povprecja.predmeti[paste0("kompetence1_razporejanje_pct_", 1:5)], na.rm = TRUE) - -# response -povprecja.izvajalci[,41] <- as.numeric(povprecja.izvajalci[,41]) - -####################################################### -# Skupna Povpreja IZVAJLCEV fakultete glede na STOPNJO -####################################################### -FDVizvajalci <- rbind(skupaj = colMeans(povprecja.izvajalci[c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct")], na.rm = T), - "1" = colMeans(povprecja.izvajalci[povprecja.izvajalci$STOPNJA == 1, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct")], na.rm = T), - "2"=colMeans(povprecja.izvajalci[povprecja.izvajalci$STOPNJA == 2, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct")], na.rm = T)) - -###################################################################################### -# Skupna Povpreja PREDMETOV fakultete glede na STOPNJO in glede na SEMESTER IZVAJANJA -###################################################################################### -FDVpredmeti <- rbind(skupaj=colMeans(povprecja.predmeti[c("ST_STUD","N_anket","N_anket_po_izpitu", - "sodelujocih.pct","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "1"=colMeans(povprecja.predmeti[povprecja.predmeti$STOPNJA == 1, - c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu","zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "2"=colMeans(povprecja.predmeti[povprecja.predmeti$STOPNJA == 2, - c("ST_STUD","N_anket","N_anket_po_izpitu", - "sodelujocih.pct","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "prvi_semester" = colMeans(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester) - [c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu","zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "drugi_semester" = colMeans(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester) - [c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu","zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T)) -## //FACULTY AVERAGES// ## - - -##################################### -# POVPREJA PO TUDIJSKIH PROGRAMIH -##################################### -# Skupne ocene predmetov po posameznih tudijskih programih -progMeanPredm <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ <- rowMeans(progMeanPredm[vars.predmet$cont$vars], na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ.pred <- rowMeans(progMeanPredm[vars.predmet$cont$pred], na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ.po <- rowMeans(progMeanPredm[vars.predmet$cont$po[-1]], na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ.praksa <- rowMeans(progMeanPredm[vars.predmet$cont$praksa], na.rm = TRUE) - -# Skupna povpreja izvajalcav po posameznih tudijskih programih -progMeanIzv <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by=data.izvajalci["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanIzv <- cbind(progMeanIzv, izvajalec.ocena.SKUPAJ=rowMeans(progMeanIzv[vars.izvajalec$cont$vars])) - -#izraun povpreij izvajalcev za tudijske programe in insert v poroila za fakulteto -progMeanIzv.fak <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("student.program.sifra","student.program.ime")], - FUN = mean,na.rm = TRUE) -progMeanIzv.fak1 <- cbind(progMeanIzv.fak, izvajalec.ocena.SKUPAJ = rowMeans(progMeanIzv.fak[vars.izvajalec$cont$vars], na.rm = TRUE)) -# tevilo odogovorov (tevilo anket) pri posameznem tudijskem programu -st.odgovorov.fak1 <- aggregate(data.izvajalci$veljavna, by = data.izvajalci[c("student.program.sifra","student.program.ime")], FUN = sum) -colnames(st.odgovorov.fak1)[3] <- "N_anket" # Poimenujemo stolpec - -progMeanIzv.fak1 <- merge(progMeanIzv.fak1, st.odgovorov.fak1, by = c("student.program.sifra","student.program.ime"), - all = TRUE, sort = FALSE) -## //povpreja programov// ## - - -## PODATKI ZA TABELE, KI SE DODAJO K "ANALIZI IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH" ## -test1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test2 <- cbind(test1, izvajalec.ocena.SKUPAJ=rowMeans(test1[vars.izvajalec$cont$vars], na.rm = TRUE)) - - -#Zaokroi vrednosti za izpis programov pri IZVAJALCU -round_df <- function(x, digits) { - # round all numeric variables - # x: data frame - # digits: number of digits to round - numeric_columns <- sapply(x, class) == 'numeric' - x[numeric_columns] <- round(x[numeric_columns], digits) - x -} -test2 <- round_df(test2, 1) -## //PODATKI ZA TABELE// ## - - -## PODATKI ZA TABELE, KI SE DODAJO K "Analiza predmeta po programih in letnikih" ## -vars.predmet$cont$vars1 <- vars.predmet$cont$vars[-c(12,13,14,15,16,17,18,19,20)] -vars.predmet.vars <- vars.predmet$cont$vars1[-c(8,9,10,11)] -test.pred <- aggregate(data.predmeti[vars.predmet.vars], - by = data.predmeti[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test.pred <- cbind(test.pred, predmet.ocena.SKUPAJ = rowMeans(test.pred[vars.predmet.vars], na.rm = TRUE)) - -#Zaokroi vrednosti za izpis programov pri PREDMETU -test.pred <- round_df(test.pred, 1) -## // PODATKI ZA TABELE// ## - - -# ZARADI UMETNO GENERIRANIH IFER IZVAJALCEV SE ZA ANKETO PO ZA TUDIJSKE PROGRAME NISO PRAVILNO IZPISALA POVPREJA IN TEVILO ODGOVOROV -# Zato smo komponente za anketo PO izpitu analizirali iz prvotne baze (anketa po izpitu) namesto iz baze "data.predmeti" -# Tako smo bazo data_po_izpitu uporabili le v primerih, ko se povpreja navezujejo na tudijske programe za anketo PO IZPITU -data.predmet.po <- data_po_izpitu - -# Opredelimo imena spremenljivk oz komponent v ankeit PO izpitu -lokacije.predmet.po <- lokacije.predmet[c(1:1,3:3,13:nrow(lokacije.predmet)), 1, drop = FALSE] - - -## PODATKI ZA PREDMETE PO IZPITU ## -# Ponovimo, kar smo naredili e na zaetku a tokrat le na podatkih PO izpitu. -data.predmeti.PO <- data.predmet.po[c(lokacije.predmet.po[, 1], "idprog","letnik","program", "lurker")] # Zdruimo spremenljivke v lokacije.predmet[, 1] in ifro tudentov -names(data.predmeti.PO) <- c(rownames(lokacije.predmet.po), "ID_vrsta_studija","Letnik","Naziv","lurker") -someMissVars.PO <- rownames(navP[!is.na(navP$missings.table), ]) -someMissVars.PO <- someMissVars.PO[8:20] # 8:20 so spremenljivke (komponente), ki se nanaajo na anketo po izpitu -data.predmeti.PO.someMiss <- data.predmeti.PO[c("predmet.sifra", someMissVars.PO)] -# setting missing values and keeping some (defined in navodila.xlsx in column missing.table) for frequency tables -for (var in c(vars.predmet$cont$vars[8:20], - vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - miss <- unlist(strsplit(navodila[var,]$missings, ",")) - data.predmeti.PO[, var][data.predmeti.PO[, var] %in% miss] <- NA - if (var %in% c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - data.predmeti.PO[, var] <- as.numeric(data.predmeti.PO[, var]) - } - if (var %in% someMissVars.PO) { - someMissVals <- - matrix(unlist(strsplit(unlist(strsplit(navodila[var,]$missings.table, ",")), "=")), ncol = 2, byrow = TRUE) - miss <- miss[!(miss %in% someMissVals[, 1])] - data.predmeti.PO.someMiss[, var][data.predmeti.PO.someMiss[, var] %in% miss] <- NA - for (missVar in 1:nrow(someMissVals)) { - data.predmeti.PO.someMiss[, var][data.predmeti.PO.someMiss[, var] == someMissVals[missVar, 1] & - !is.na(data.predmeti.PO.someMiss[, var])] <- someMissVals[missVar, 2] - } - } -} -# all values with some miss for tables -predmet.someMiss.PO <- sort(unique(as.vector(as.matrix(data.predmeti.PO.someMiss[, vars.predmet$cont$vars[8:20]])))) -if(any(predmet.someMiss.PO=="")) { - predmet.someMiss.PO <- predmet.someMiss.PO[predmet.someMiss.PO != ""] - -} - -data.predmeti.PO <- data.predmeti.PO[order(data.predmeti.PO$predmet.sifra),] -# ali je anketa veljavna za predmet; ali je student ni izpolnjeval (je pa zael anketo) -data.predmeti.PO$veljavna_po_izpitu <- data.predmeti.PO$predmet.izpolnjeval.po == -1 & !is.na(data.predmeti.PO$predmet.izpolnjeval.po) -data.predmeti.PO$zavrnjena_po_izpitu <- (!data.predmeti.PO$veljavna_po_izpitu & !is.na(data.predmeti.PO$predmet.izpolnjeval.po)) -# adding student data (year and programme) -data.predmeti.PO <- merge(data.predmeti.PO, programi.imena[,c("ID", "Naziv")], by.x="ID_vrsta_studija", by.y="ID", all.x=TRUE, sort=FALSE) -names(data.predmeti.PO)[match(c("ID_vrsta_studija","Letnik","Naziv.y"), names(data.predmeti.PO))] <- c("student.program.sifra","student.letnik","student.program.ime") - -############## -## PREDMETI ## -############## -# Izreaunamo povpreja predmetov e za anketo PO izpitu -# povpreja -predMean <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = mean, na.rm = TRUE) -colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - -# Mediane -predMedian <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = median, na.rm = TRUE) -colnames(predMedian)[2:ncol(predMedian)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_median") - -# sd -predSd <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = sd, na.rm = TRUE) -colnames(predSd)[2:ncol(predSd)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_sd") - -# min -predMin <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = min, na.rm = TRUE) -colnames(predMin)[2:ncol(predMin)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars),"_min") -predMin[predMin==Inf] <- NA - -# max -predMax <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars)], - by = data.predmeti.PO["predmet.sifra"], FUN = max, na.rm = TRUE) -colnames(predMax)[2:ncol(predMax)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars),"_max") -predMax[predMax==-Inf] <- NA - -# N posamezne spremenljivke -predN <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti.PO["predmet.sifra"], FUN=function(x) sum(!is.na(x))) -colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - -# N answering before and after exam -predNanket <- aggregate(data.predmeti.PO$veljavna, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNanket)[2] <- "N_anket" -predNanket_po_izpitu <- aggregate(data.predmeti.PO$veljavna_po_izpitu, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - -# N didn't want to answer before and after exam -predNzavrnjenih <- aggregate(data.predmeti.PO$zavrnjena, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih)[2] <- "N_zavrnjenih" -predNzavrnjenih_po_izpitu <- aggregate(data.predmeti.PO$zavrnjena_po_izpitu, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih_po_izpitu)[2] <- "N_zavrnjenih_po_izpitu" - - -# N Lurkerjev PRED izpitom -data.predmeti.PO$lurker[data.predmeti.PO$lurker==0] <- NA -poNLurkerji <- aggregate(as.numeric(data.predmeti.PO$lurker), by = data.predmeti.PO["predmet.sifra"],FUN=function(x) sum(!is.na(x))) -colnames(poNLurkerji)[2] <- "N_lurkerjev_po" - - -programi.PO <- unique(data.predmeti.PO[c("student.program.sifra", "student.program.ime")]) -programi.PO <- subset(programi.PO, !is.na(student.program.sifra)) -programi.PO <- subset(programi.PO, student.program.ime != "NA") -programi.PO <- programi.PO[order(programi.PO$student.program.ime), ] - -## TUDIJSKI PROGRAMI (ANKETA PO IZPTTU) ## -# e za aneto PO izpitu izraunamo povpreja tudijskih programov -# Skupne ocene predmetov po posameznih tudijskih programih -progMeanPredm.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti.PO["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanPredm.PO$predmet.ocena.SKUPAJ.po <- rowMeans(progMeanPredm.PO[vars.predmet$cont$po[-1]], na.rm = TRUE) -progMeanPredm.PO$predmet.ocena.SKUPAJ.praksa <- rowMeans(progMeanPredm.PO[vars.predmet$cont$praksa], na.rm = TRUE) - - -## course averages by programme: ANKETA PO IZPITU ## -povprecja.predmeti.programi.PO <- NULL -povprecja.predmeti.programi.PO.brez.cenzure.PO <- NULL # Zapiemo vsa povpreja oz. vse ocene, tudi tista, ki imajo 4 odgovore ali manj -## course averages by programme ## -for (program in programi.PO$student.program.sifra) { - # povpreja - data.program <- subset(data.predmeti.PO, student.program.sifra == program) - predMean <- aggregate(data.program[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.program["predmet.sifra"], FUN = mean, na.rm = TRUE) - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.program[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.program["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.program$veljavna, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.program$veljavna_po_izpitu, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - - predmeti.program <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.programi.PO.brez.cenzure.PO <- rbind(povprecja.predmeti.programi.PO.brez.cenzure.PO,cbind(predmeti.program, - program.studentov = program, - program.studentov.ime = programi.PO[programi.PO$student.program.sifra == program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.program[c(paste0(vars.predmet$cont$vars[8:20],"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.program[c(paste0(vars.predmet$cont$vars[8:20],"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - - predmeti.program$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.program[paste0(vars.predmet$cont$po[-1],"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.program[paste0(vars.predmet$cont$praksa,"_mean")],na.rm=T) - - povprecja.predmeti.programi.PO <- rbind(povprecja.predmeti.programi.PO, cbind(predmeti.program, program.studentov = program, - program.studentov.ime = programi.PO[programi.PO$student.program.sifra==program, - "student.program.ime"])) -} -povprecja.predmeti.programi.PO <- merge(povprecja.predmeti.programi.PO, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.programi.PO.brez.cenzure.PO <- merge(povprecja.predmeti.programi.PO.brez.cenzure.PO, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by programme// ## - - -## course averages by programme ## -povprecja.predmeti.programi <- NULL -povprecja.predmeti.programi.brez.cenzure <- NULL # Zapiemo vsa povpreja oz. vse ocene, tudi tista, ki imajo 4 odgovore ali manj -## course averages by programme ## -for (program in programi$student.program.sifra) { - # povpreja - data.program <- subset(data.predmeti, student.program.sifra == program) - - predMean <- aggregate(data.program[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program["predmet.sifra"], FUN = mean, na.rm = TRUE) - # predMean.po <- aggregate(data.program.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program.po["predmet.sifra"], FUN = mean, na.rm = TRUE) -# predMean <- merge(predMean,predMean.po[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predMean <- predMean[, -grep(".x", colnames(predMean))] - #colnames(predMean) <- gsub("\\.y", "", colnames(predMean)) - #predMean <- predMean[c(1:8,18:21,9:17,22:23)] - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.program[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - # predNpo <- aggregate(data.program.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program.po["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - #predN <- merge(predN,predNpo[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predN <- predN[, -grep(".x", colnames(predN))] - #colnames(predN) <- gsub("\\.y", "", colnames(predN)) - #predN <- predN[c(1:8,18:21,9:17,22:23)] - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.program$veljavna, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.program$veljavna_po_izpitu, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - predmeti.program <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.programi.brez.cenzure <- rbind(povprecja.predmeti.programi.brez.cenzure,cbind(predmeti.program, - program.studentov = program, - program.studentov.ime = programi[programi$student.program.sifra == program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.program[c(paste0(vars.predmet$cont$vars,"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.program[c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.program$predmet.ocena.SKUPAJ <- rowMeans(predmeti.program[paste0(vars.predmet$cont$vars,"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.pred <- rowMeans(predmeti.program[paste0(vars.predmet$cont$pred,"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.program[paste0(vars.predmet$cont$po[-1],"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.program[paste0(vars.predmet$cont$praksa,"_mean")],na.rm=T) - - povprecja.predmeti.programi <- rbind(povprecja.predmeti.programi, cbind(predmeti.program, program.studentov = program, - program.studentov.ime = programi[programi$student.program.sifra==program, - "student.program.ime"])) -} -povprecja.predmeti.programi <- merge(povprecja.predmeti.programi, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.programi.brez.cenzure <- merge(povprecja.predmeti.programi.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by programme// ## - - - - -## course averages by student's year ANKETA PO IZPITU ## -povprecja.predmeti.letniki.PO <- NULL -povprecja.predmeti.letniki.PO.brez.cenzure.PO <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## course averages by students' year ## -for (letnik in unique(sort(data.predmeti.PO$student.letnik))) { - # povpreja - data.letnik <- subset(data.predmeti.PO, student.letnik == letnik) - predMean <- aggregate(data.letnik[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.letnik["predmet.sifra"], - FUN=mean, na.rm=TRUE) - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.letnik[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by=data.letnik["predmet.sifra"], FUN=function(x) sum(!is.na(x))) - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.letnik$veljavna, by = data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.letnik$veljavna_po_izpitu, by=data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - - predmeti.letnik <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.letniki.PO.brez.cenzure.PO <- rbind(povprecja.predmeti.letniki.PO.brez.cenzure.PO, cbind(predmeti.letnik, letnik.studentov = letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.letnik[c(paste0(vars.predmet$cont$vars[8:20],"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.letnik[c(paste0(vars.predmet$cont$vars[8:20],"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.letnik$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$po[-1],"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - - povprecja.predmeti.letniki.PO <- rbind(povprecja.predmeti.letniki.PO, cbind(predmeti.letnik, letnik.studentov=letnik)) -} -povprecja.predmeti.letniki.PO <- merge(povprecja.predmeti.letniki.PO, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.letniki.PO.brez.cenzure.PO <- merge(povprecja.predmeti.letniki.PO.brez.cenzure.PO, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by students' year// ## - - - -## course averages by student's year ## -povprecja.predmeti.letniki <- NULL -povprecja.predmeti.letniki.brez.cenzure <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## course averages by students' year ## -for (letnik in unique(sort(data.predmeti$student.letnik))) { - # povpreja - data.letnik <- subset(data.predmeti, student.letnik == letnik) - # data.letnik.po <- subset(data.predmeti.PO, student.program.sifra == program) - - predMean <- aggregate(data.letnik[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.letnik["predmet.sifra"], FUN=mean, na.rm=TRUE) - #predMean.po <- aggregate(data.letnik.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.letnik.po["predmet.sifra"], FUN = mean, na.rm = TRUE) - #predMean <- merge(predMean,predMean.po[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predMean <- predMean[, -grep(".x", colnames(predMean))] - #colnames(predMean) <- gsub("\\.y", "", colnames(predMean)) - #predMean <- predMean[c(1:8,18:21,9:17,22:23)] - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.letnik[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by=data.letnik["predmet.sifra"], FUN=function(x) sum(!is.na(x))) - #predNpo <- aggregate(data.letnik.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.letnik.po["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - #predN <- merge(predN,predNpo[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predN <- predN[, -grep(".x", colnames(predN))] - #colnames(predN) <- gsub("\\.y", "", colnames(predN)) - #predN <- predN[c(1:8,18:21,9:17,22:23)] - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.letnik$veljavna, by = data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.letnik$veljavna_po_izpitu, by=data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - - predmeti.letnik <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.letniki.brez.cenzure <- rbind(povprecja.predmeti.letniki.brez.cenzure, cbind(predmeti.letnik, letnik.studentov = letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.letnik[c(paste0(vars.predmet$cont$vars,"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.letnik[c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.letnik$predmet.ocena.SKUPAJ <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$vars,"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.pred <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$pred,"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$po[-1],"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - - povprecja.predmeti.letniki <- rbind(povprecja.predmeti.letniki, cbind(predmeti.letnik, letnik.studentov=letnik)) -} -povprecja.predmeti.letniki <- merge(povprecja.predmeti.letniki, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.letniki.brez.cenzure <- merge(povprecja.predmeti.letniki.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by students' year// ## - -#################################### -## lecturer averages by programme ## -#################################### -povprecja.izvajalci.programi <- NULL -povprecja.izvajalci.programi.brez.cenzure <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by programme ## -for (program in programi$student.program.sifra) { - data.program <- subset(data.izvajalci, student.program.sifra == program) - if (nrow(data.program)>0){ - # povpreja - izvMean <- aggregate(data.program[vars.izvajalec$cont$vars],by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = mean, na.rm = TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.program[vars.izvajalec$cont$vars], by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.program$veljavna, by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.program <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - izvajalci.program <- merge(izvajalci.program, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - povprecja.izvajalci.programi.brez.cenzure <- rbind(povprecja.izvajalci.programi.brez.cenzure, - cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.program[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - # average of components - izvajalci.program$izvajalec.ocena.SKUPAJ <- rowMeans(izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")],na.rm=T) - - povprecja.izvajalci.programi <- rbind(povprecja.izvajalci.programi, cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - } -} -povprecja.izvajalci.programi <- merge(povprecja.izvajalci.programi, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -povprecja.predmeti.programi1 <- merge(povprecja.predmeti.programi, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA", - "ST_STUD","sodelujocih.pct", "sodelujocih.pct_po_izpitu", - "zavrnjenih.pct", "zavrnjenih.pct_po_izpitu","neodzivnih.pct", - "neodzivnih.pct_po_izpitu")], - by="predmet.sifra", all.x=T) - -povprecja.izvajalci.programi.brez.cenzure <- merge(povprecja.izvajalci.programi.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -## //lecturer averages by programme// ## - -######################################### -## lecturer averages by students' year ## -######################################### -povprecja.izvajalci.letniki <- NULL -povprecja.izvajalci.letniki.brez.cenzure <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by students' year ## -for (letnik in unique(sort(data.izvajalci$student.letnik))) { - data.letnik <- subset(data.izvajalci, student.letnik == letnik) - - # povpreja - izvMean <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=mean, na.rm=TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.letnik$veljavna, by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.letnik <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - izvajalci.letnik <- merge(izvajalci.letnik, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - povprecja.izvajalci.letniki.brez.cenzure <- rbind(povprecja.izvajalci.letniki.brez.cenzure, - cbind(izvajalci.letnik, letnik.studentov=letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - - povprecja.izvajalci.letniki <- rbind(povprecja.izvajalci.letniki, cbind(izvajalci.letnik, letnik.studentov=letnik)) -} -povprecja.izvajalci.letniki <- merge(povprecja.izvajalci.letniki, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -povprecja.izvajalci.letniki.brez.cenzure <- merge(povprecja.izvajalci.letniki.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", - "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -## //lecturer averages by students' year// ## - -############################ -# quantiles by programme # -########################### -kvantili.izvajalci.programi <- NULL -for (program in unique(povprecja.izvajalci.programi$program.studentov)) { - kvantili.izvajalci.program <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$program.studentov == program & - povprecja.izvajalci.programi$N_anket > 0, - c("izvajalec.sifra","predmet.sifra","program.studentov","program.studentov.ime", - "N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.program[[var]] <- kvantRang(kvantili.izvajalci.program[[var]]) - } - - for (var in c("N_anket")) { - kvantili.izvajalci.program[[var]] <- kvantRang1(kvantili.izvajalci.program[[var]]) - } - - kvantili.izvajalci.programi <- rbind(kvantili.izvajalci.programi, kvantili.izvajalci.program) -} - -kvantili.predmeti.programi <- NULL -for (program in unique(povprecja.predmeti.programi$program.studentov)) { - kvantili.predmeti.program <- povprecja.predmeti.programi[povprecja.predmeti.programi$program.studentov == program & - (povprecja.predmeti.programi$N_anket > 0 | povprecja.predmeti.programi$N_anket_po_izpitu > 0), - c("predmet.sifra","N_anket","N_anket_po_izpitu","program.studentov","program.studentov.ime", - paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa","predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")] - for (var in c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti.program[[var]] <- kvantRang(kvantili.predmeti.program[[var]]) - } - for (var in c("N_anket","N_anket_po_izpitu")) { - kvantili.predmeti.program[[var]] <- kvantRang1(kvantili.predmeti.program[[var]]) - } - - for (var in c("predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")) { - kvantili.predmeti.program[[var]] <- kvantRang2(kvantili.predmeti.program[[var]]) - } - - - kvantili.predmeti.programi <- rbind(kvantili.predmeti.programi, kvantili.predmeti.program) -} - - -kvantili.predmeti.programi.PO <- NULL -for (program in unique(povprecja.predmeti.programi.PO$program.studentov)) { - kvantili.predmeti.program <- povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$program.studentov == program & - (povprecja.predmeti.programi.PO$N_anket > 0 | povprecja.predmeti.programi.PO$N_anket_po_izpitu > 0), - c("predmet.sifra","N_anket","N_anket_po_izpitu","program.studentov","program.studentov.ime", - paste0(vars.predmet$cont$vars[8:20],"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa","predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")] - for (var in c(paste0(vars.predmet$cont$vars[8:20],"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti.program[[var]] <- kvantRang(kvantili.predmeti.program[[var]]) - } - for (var in c("N_anket","N_anket_po_izpitu")) { - kvantili.predmeti.program[[var]] <- kvantRang1(kvantili.predmeti.program[[var]]) - } - - for (var in c("predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")) { - kvantili.predmeti.program[[var]] <- kvantRang2(kvantili.predmeti.program[[var]]) - } - - - kvantili.predmeti.programi.PO <- rbind(kvantili.predmeti.programi.PO, kvantili.predmeti.program) -} -# /quantiles by programme/ # - - -################################# -## statistics for methodology ## (Glej izpis za izvajalca, in sicer poglavje Metodoloko pojasnilo) -################################# -data.predmeti <- merge(data.predmeti, sifrant[!duplicated(sifrant$IDP), c("IDP","SEMESTER_IZV")], - by.x="predmet.sifra", by.y="IDP", all.x=TRUE) - -## ZIMSKI SEMESTER ## -metod_XXX <- length(unique(subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDP)) # tevilo predmetov -metod_YYY <- length(unique(subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDPEDAGOGA)) # tevilo pedagogov -metod_ZZZ <- length(unique(studenti$"ID_studenta_.MD5.")) # tevilo tudentov - -metod_UUU <- nrow(subset(sifrant, SEMESTER_IZV %in% prvi_semester)) # tevilo izvedb.. - -metod_VVV <- metod_XXX # number of prepared evaluations for courses -metod_RRR <- metod_UUU # number of prepared evaluations for lecturers - -# ANKETA PRED izpitom -metod_X1 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_anket, na.rm=TRUE) # no. evaluations answers -metod_X2 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_zavrnjenih, na.rm=TRUE) # no. evaluations rejected -metod_X3 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_neodzivnih, na.rm=TRUE) # no. evaluations didn't start -method_xsum<-metod_X1+metod_X2+metod_X3 - -metod_X4 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$veljavna, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$zavrnjena, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -metod_X5 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_pred_izpitom[data_pred_izpitom[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_X6 <- length(unique(subset(data.predmeti, veljavna & SEMESTER_IZV %in% prvi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPREDSum <- metod_X4 + metod_X5 + metod_X6 - -metod_X4.pct <- round((metod_X4/metodPREDSum) * 100, 0) # Percentage of students rejected all evaluations -metod_X5.pct <- round((metod_X5/metodPREDSum) * 100, 0) # Percentage of students with no started evaluations -metod_X6.pct <- round((metod_X6/metodPREDSum) * 100, 0) # Percentage od students participated in at least 1 evaluation - -# ANKETA PO izpitu -metod_Y1 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_anket_po_izpitu, na.rm=TRUE) # no. evaluations answers -metod_Y2 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_zavrnjenih_po_izpitu, na.rm=TRUE) # no. evaluations rejected -metod_Y3 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_neodzivnih_po_izpitu, na.rm=TRUE) # no. evaluations didn't start - -metod_Y4 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$veljavna_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$zavrnjena_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -metod_Y5 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_po_izpitu[data_po_izpitu[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_Y6 <- length(unique(subset(data.predmeti, veljavna_po_izpitu & SEMESTER_IZV %in% prvi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPOSum <- metod_Y4 + metod_Y5 + metod_Y6 - -metod_Y4.pct <- round((metod_Y4/metodPOSum) * 100, 0) # Percentage of students rejected all evaluations -metod_Y5.pct <- round((metod_Y5/metodPOSum) * 100, 0) # Percentage of students with no started evaluations -metod_Y6.pct <- round((metod_Y6/metodPOSum) * 100, 0) # Percentage od students participated in at least 1 evaluation -## //ZIMSKI// ## - - -## LETNI/CELOLETNI (drugi semester) ## -metod_XXX1 <- length(unique(subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDP)) # tevilo predmetov -metod_YYY1 <- length(unique(subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDPEDAGOGA)) # tevilo pedagogov -metod_ZZZ1 <- length(unique(studenti$"ID_studenta_.MD5.")) # tevilo tudentov - -metod_UUU1 <- nrow(subset(sifrant, SEMESTER_IZV %in% drugi_semester)) # tevilo izvedb.. - -# ANKETA PRED izpitom -metod_X11 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_anket, na.rm=TRUE) # no. evaluations answers -metod_X21 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_zavrnjenih, na.rm=TRUE) # no. evaluations rejected -metod_X31 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_neodzivnih, na.rm=TRUE) # no. evaluations didn't start -method_xsum1 <- metod_X11 + metod_X21 + metod_X31 - -if (length(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna > 0)) { # V primeru da ni vrednosti naj bodo v tabela 0 in ne NA vrednosti - metod_X41 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$zavrnjena, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -} else {metod_X41 <- 0} -metod_X51 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_pred_izpitom[data_pred_izpitom[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_X61 <- length(unique(subset(data.predmeti, veljavna & SEMESTER_IZV %in% drugi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPREDSum_2 <- metod_X41 + metod_X51 + metod_X61 - -metod_X41.pct<-round((metod_X41/metodPREDSum_2) * 100, 0) # Percentage of students rejected all evaluations -metod_X51.pct<-round((metod_X51/metodPREDSum_2) * 100, 0) # Percentage of students with no started evaluations -metod_X61.pct<-round((metod_X61/metodPREDSum_2) * 100, 0) # Percentage od students participated in at least 1 evaluation - -# ANKETA PO izpitu -metod_Y11 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_anket_po_izpitu, na.rm=TRUE) # no. evaluations answers -metod_Y21 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_zavrnjenih_po_izpitu, na.rm=TRUE) # no. evaluations rejected -metod_Y31 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_neodzivnih_po_izpitu, na.rm=TRUE) # no. evaluations didn't start - -if (length(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna_po_izpitu > 0)) { - metod_Y41 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$zavrnjena_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -} else {metod_Y41 <- 0} -metod_Y51 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_po_izpitu[data_po_izpitu[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_Y61 <- length(unique(subset(data.predmeti, veljavna_po_izpitu & SEMESTER_IZV %in% drugi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPOSum_2 <- metod_Y41 + metod_Y51 + metod_Y61 - - -metod_Y41.pct <- round((metod_Y41/metodPOSum_2) * 100, 0) # Percentage of students rejected all evaluations -metod_Y51.pct <- round((metod_Y51/metodPOSum_2) * 100, 0) # Percentage of students with no started evaluations -metod_Y61.pct <- round((metod_Y61/metodPOSum_2) * 100, 0) # Percentage od students participated in at least 1 evaluation - -## //LETNI/CELOLETNI// ## - - -# answers -metod_XX <- round(FDVpredmeti["prvi_semester", "sodelujocih.pct"]) # Dele tudentov FDV, ki so v sodelovali v anketi PRED (v prvem semestru) -metod_YY <- round(FDVpredmeti["prvi_semester", "zavrnjenih.pct"]) # Dele tudentov FDV, ki so sodelovanje v anketi PRED zavrnili (v prvem semestru) -metod_ZZ <- round(FDVpredmeti["prvi_semester", "neodzivnih.pct"]) # Dele tudentov FDV, ki ki k anketi PRED niso pristopili (v prvem semestru) -metod_ZZ1 <- round(FDVpredmeti["prvi_semester", "sodelujocih.pct_po_izpitu"]) # -"- Anketa PO -metod_ZZ2 <- round(FDVpredmeti["prvi_semester", "zavrnjenih.pct_po_izpitu"]) # -"- Anketa PO -metod_ZZ3 <- round(FDVpredmeti["prvi_semester", "neodzivnih.pct_po_izpitu"]) # -"- Anketa PO - -metod_XX1 <- round(FDVpredmeti["drugi_semester", "sodelujocih.pct"]) -metod_XX2 <- round(FDVpredmeti["drugi_semester", "zavrnjenih.pct"]) -metod_XX3 <- round(FDVpredmeti["drugi_semester", "neodzivnih.pct"]) -metod_ZZ1L <- round(FDVpredmeti["drugi_semester", "sodelujocih.pct_po_izpitu"]) -metod_ZZ2L <- round(FDVpredmeti["drugi_semester", "zavrnjenih.pct_po_izpitu"]) -metod_ZZ3L <- round(FDVpredmeti["drugi_semester", "neodzivnih.pct_po_izpitu"]) - - -# e ni podatkov za drugi semester potem spremenljivkam pripii vrednost 0 (da v tabelah v poglavju Splona metodologija ne pojavljajo NA) -if (is.na(round(FDVpredmeti["drugi_semester", "ST_STUD"])) & is.na(round(FDVpredmeti["drugi_semester", "N_anket"]))) { - metod_XX1 <- 0 - metod_XX2 <- 0 - metod_XX3 <- 0 - metod_ZZ1L <- 0 - metod_ZZ2L <- 0 - metod_ZZ3L <- 0 - -} - -# Tekst v poglavju Metodoloko pojasnilo -# da npr. v I. semestru vsak predmet izvaja 2.2 (:RRR:/:XXX:) pedagogov 266/123 -method_IZR <- round(metod_RRR/metod_XXX, digits = 1) -#vsak pedagog pa v povpreju izvaja 2.5 (266/105) predmetov. -method_IZR1 <- round(metod_RRR/metod_YYY, digits = 1) -#Trenutni datum oz stanje izvoza, ki se izpie pod tabelo v poglavju: Metodoloko pojasnilo -date <- format(Sys.time(), "%d.%m.%Y") - -# tevilke, v poglavju SPLONA METODOLOGIJA (glej npr. -# ne glede na stopnjo odgovorov je povpreno zadovoljstvo okoli 4.2) -# Najprej za Dodiplomski tudij: -# Povpreje komponent predmetov po tudijskih programih (anketa PRED izpitom) sortirano po povpreju \\textbf{Skupaj}" -stopnja_program <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")],povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], by="predmet.sifra", sort=FALSE) -stopnja_program <- stopnja_program[stopnja_program$N_anket >=minEnot, c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] -if (nrow(stopnja_program) > 0) { - stopnja_program <- aggregate(stopnja_program$predmet.sifra, - by=stopnja_program[c("program.studentov","program.studentov.ime","STOPNJA")], - function(x) length(unique(x))) -} else {stopnja_program <- stopnja_program} -stopnja_program.pred <- merge(test.pred, stopnja_program, - by.x="student.program.ime", - by.y="program.studentov.ime", - all=TRUE) -program.1stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], - FUN=mean, - na.rm=TRUE) -program.1stopnja <- cbind(program.1stopnja, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja[vars.predmet.vars], na.rm=TRUE)) -stopnja_program1 <- stopnja_program -colnames(stopnja_program1)[4] <- "N_anket" -rownames(stopnja_program1) <- stopnja_program1[rownames(stopnja_program1),"student.program.ime"] -if (nrow(stopnja_program1) > 0) { - program_BD_pred.skupaj <- merge(stopnja_program1, program.1stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_pred.skupaj <- subset(program_BD_pred.skupaj, STOPNJA==1) - program_BD_pred.skupaj <- program_BD_pred.skupaj[, !(colnames(program_BD_pred.skupaj) %in% c("STOPNJA"))] -} else {program_BD_pred.skupaj <- stopnja_program1} -# Izraunamo povpreje, ki je potem zapisano v poglavju SPLONA METODOLOGIJA -if (nrow(program_BD_pred.skupaj) > 0) { -method_povp1 <- round(colMeans(program_BD_pred.skupaj[11:ncol(program_BD_pred.skupaj)], na.rm=TRUE), 1) -} else {method_povp1 <- 0} -# E ZA Podiplomski tudij: -# Povpreje komponent predmetov po tudijskih programih (anketa PRED izpitom) sortirano po povpreju \\textbf{Skupaj}" -stopnja_program_podipl <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra", - paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) -stopnja_program_podipl <- stopnja_program_podipl[stopnja_program_podipl$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] -if (nrow(stopnja_program_podipl) > 0) { - stopnja_program_podipl <- aggregate(stopnja_program_podipl$predmet.sifra, - by=stopnja_program_podipl[c("program.studentov","program.studentov.ime","STOPNJA")], - function(x) length(unique(x))) -} -stopnja_program_podipl.pred <- merge(test.pred, stopnja_program_podipl, - by.x="student.program.ime", - by.y="program.studentov.ime", all=TRUE) -program.2stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], - FUN=mean, na.rm=TRUE) -program.2stopnja <- cbind(program.2stopnja, predmet.ocena.SKUPAJ=rowMeans(program.2stopnja[vars.predmet.vars], na.rm=TRUE)) -stopnja_program_podipl1 <- stopnja_program_podipl -colnames(stopnja_program_podipl1)[4] <- "N_anket" -rownames(stopnja_program_podipl1) <- stopnja_program_podipl1[rownames(stopnja_program_podipl1),"student.program.ime"] -if (nrow(stopnja_program_podipl1) > 0) { - program_BD_pred.podipl <- merge(stopnja_program_podipl1, program.2stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_pred.podipl <- subset(program_BD_pred.podipl, STOPNJA==2) - program_BD_pred.podipl <- program_BD_pred.podipl[, !(colnames(program_BD_pred.podipl) %in% c("STOPNJA"))] -} else{program_BD_pred.podipl <- stopnja_program_podipl1} -# Izraunamo povpreje, ki je potem zapisano v poglavju SPLONA METODOLOGIJA -if (nrow(program_BD_pred.podipl) > 0) { -method_povp2 <- round(colMeans(program_BD_pred.podipl[11:ncol(program_BD_pred.podipl)],na.rm=TRUE), 1) -} else {method_povp2 <- 0} - -#Podatki, ki generirajo vrednosti v latex datoteki metodolosko.pojasnilo. Glej mapo latexkosi -# S funkcijo scan preberemo tex. datoteko metodolosko.pojasnilo.tex -tex.okvir <- scan("Evalvacija/latexkosi/metodolosko.pojasnilo.tex", character(0), sep = "\n", quiet = TRUE, encoding = 'UTF-8') -tex.okvir <- gsub(pattern=":XXX:", replacement=metod_XXX, x=tex.okvir) -tex.okvir <- gsub(pattern=":YYY:", replacement=metod_YYY, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZZ:", replacement=metod_ZZZ, x=tex.okvir) -tex.okvir <- gsub(pattern=":UUU:", replacement=metod_UUU, x=tex.okvir) -tex.okvir <- gsub(pattern=":VVV:", replacement=metod_VVV, x=tex.okvir) -tex.okvir <- gsub(pattern=":RRR:", replacement=metod_RRR, x=tex.okvir) -tex.okvir <- gsub(pattern=":X1:", replacement=method_xsum, x=tex.okvir) -tex.okvir <- gsub(pattern=":UUU1:", replacement=metod_UUU1, x=tex.okvir) - -tex.okvir <- gsub(pattern=":XXX1:", replacement=metod_XXX1, x=tex.okvir) -tex.okvir <- gsub(pattern=":YYY1:", replacement=metod_YYY1, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZZ1:", replacement=metod_ZZZ1, x=tex.okvir) - -tex.okvir <- gsub(pattern=":XX:", replacement=metod_XX, x=tex.okvir) -tex.okvir <- gsub(pattern=":YY:", replacement=metod_YY, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ:", replacement=metod_ZZ, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ1:", replacement=metod_ZZ1, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ2:", replacement=metod_ZZ2, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ3:", replacement=metod_ZZ3, x=tex.okvir) - -# DELE tudentov (PRVI SMESTER) -## ANKETA PRED -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_X4.pct:", replacement=metod_X4.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_X5.pct:", replacement=metod_X5.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_X6.pct:", replacement=metod_X6.pct, x=tex.okvir) -## ANKETA PO -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_Y4.pct:", replacement=metod_Y4.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_Y5.pct:", replacement=metod_Y5.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_Y6.pct:", replacement=metod_Y6.pct, x=tex.okvir) - -# DRUGI SEMESTER ANKETA PRED IN PO IZPITU -tex.okvir <- gsub(pattern=":XX1:", replacement=metod_XX1, x=tex.okvir) -tex.okvir <- gsub(pattern=":XX2:", replacement=metod_XX2, x=tex.okvir) -tex.okvir <- gsub(pattern=":XX3:", replacement=metod_XX3, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ1L:", replacement=metod_ZZ1L, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ2L:", replacement=metod_ZZ2L, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ3L:", replacement=metod_ZZ3L, x=tex.okvir) -tex.okvir <- gsub(pattern=":Y1:", replacement=method_xsum1, x=tex.okvir) - -tex.okvir <- gsub(pattern=":IZR:", replacement=method_IZR, x=tex.okvir) -tex.okvir <- gsub(pattern=":IZR1:", replacement=method_IZR1, x=tex.okvir) -tex.okvir <- gsub(pattern=":IME:", replacement=fakulteta, x=tex.okvir) - -# Datum izvoza podatkov (tabele v metodologiji) -tex.okvir <- gsub(pattern=":DATUM:", replacement=date, x=tex.okvir) - - -# DELE tudentov (DRUGI SMESTER) -## ANKETA PRED -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_X41.pct:", replacement=metod_X41.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_X51.pct:", replacement=metod_X51.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_X61.pct:", replacement=metod_X61.pct, x=tex.okvir) -## ANKETA PO -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_Y41.pct:", replacement=metod_Y41.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_Y51.pct:", replacement=metod_Y51.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_Y61.pct:", replacement=metod_Y61.pct, x=tex.okvir) - - -#Poglavje SPLONA METODOLOGIJA -#tevilka oz povpreji za dodiplomski in podpilomski tudij za anketo PRED izpitom -tex.okvir <- gsub(pattern=":DODI:", replacement=method_povp1, x=tex.okvir) -tex.okvir <- gsub(pattern=":PODI:", replacement=method_povp2, x=tex.okvir) -# /statistics for methodology/ # - - - -# Dodatno Pojasnilo za tabele: glej skripto koda-izvajalec_predmet.r -# Opomba za Uszreznost KT -KTust <- "{\\footnotesize \\textit{* Vrednost pod 3.0 pomeni, da je predmet glede -na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno -tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. -{\\color{Orange}\\textbf{Oranno}} so oznaena opazna -odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), -{\\color{BrickRed}\\textbf{rdee}} pa izrazita -odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}}). -\\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene ostalih programov, -v katere so vpisani tudenti, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - -# Vpraanje komponente Kompetence -Kompetence.note <- "{\\footnotesize \\textit{* \\guillemotright Tekst vpraanja: V kolikni meri -ste pri predmetu pridobili priakovane \\textbf{kompetence}? \\guillemotleft }}" - -# Kvantilni rangi -kvan.pojas <- "{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je kvantilni rang -za odgovarjajoe vrednosti, vendar ni obarvan, saj gre za administrativni podatek.}}" -kvan.pojas1 <- "{\\footnotesize \\textit{* Gre za vse predmete z vsaj 4 odgovori (tudi predmete drugih programov, -e so bili izbirni), ki so jih vpisali tudenti doloenega programa. \\newline ** Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ -je kvantilni rang za odgovarjajoe vrednosti v tabeli 1.1 (poloaj predmeta med vsemi predmeti doloenega programa), -vendar ni obarvan, saj gre za administrativni podatek.}}" -kvan.pojas3 <- c(paste0("{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je kvantilni rang - za odgovarjajoe vrednosti v tabeli 1.3 (poloaj IPP med vsemi IPP doloenega programa v pogledu tevila vpisanih tudentov). - \\newline ** Gre za vse predmete z vsaj 4 odgovori - (vkljuno s predmeti drugih programov, e so bili izbirni), ki so jih vpisali tudenti doloenega programa. - \\newline *** \\guillemotright t. IPP\\guillemotleft \\ - tevilo vseh izvajalcev pri predmetih na doloenem programu - (v povpreju ima vsak predmet ", method_IZR ," izvajalca).}}")) -# NOT USING THIS NOW -# Pojasnilo za izvajalca pri predmetu: tudijski program -# pojasIZV.tmp <- c(paste0("{\\footnotesize \\textit{* Prikazani so samo programi, pri katerih je imel izvajalec vsaj 4 ocene. -# \\newline ** \\guillemotright t. IPP\\guillemotleft \\ - tevilo vseh izvajalcev pri predmetih na doloenem programu -# (v povpreju ima vsak predmet ", method_IZR ," izvajalca).}}")) -# Pojasnilo za izvajalca -# pojasPRED.tmp <- c(paste0("{\\footnotesize \\textit{* Prikazani so samo programi, pri katerih je imel izvajalec vsaj 4 ocene.}}")) - - - -######DODATNI PODATKI ZA TABELE ANALIZA IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH: glej skripto koda-izvajalec_predmet.r -proggIZ.tmp <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$N_anket >=minEnot, c("predmet.sifra","program.studentov","program.studentov.ime")] -if (nrow(proggIZ.tmp) > 0) { - proggIZ.tmp <- aggregate(proggIZ.tmp$predmet.sifra, by = proggIZ.tmp[c("program.studentov","program.studentov.ime")], function(x) length(x)) - izv.predmet <- merge(test2, proggIZ.tmp, by.x="student.program.ime", by.y = "program.studentov.ime", all = TRUE) -} else {izv.predmet <- proggIZ.tmp} - -######DODATNI PODATKI ZA TABELE ANALIZE PREDMETA PO PROGRAMIH IN LETNIKIH - ANKETA PRED -proggPRED.tmp <- povprecja.predmeti.programi[povprecja.predmeti.programi$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime")] -if (nrow(proggPRED.tmp) > 0) { - proggPRED.tmp <- aggregate(proggPRED.tmp$predmet.sifra, by = proggPRED.tmp[c("program.studentov","program.studentov.ime")], - function(x) length(unique(x))) - pred.predmet <- merge(test.pred, proggPRED.tmp, - by.x = "student.program.ime", by.y = "program.studentov.ime", all = TRUE) -} else {pred.predmet <- proggPRED.tmp} -###// ANKETA PRED //### - - -######DODATNI PODATKI ZA TABELE ANALIZE PREDMETA PO PROGRAMIH IN LETNIKIH - ANKETA PO -test.po <- aggregate(data.predmeti.PO[vars.predmet$cont$po], by = data.predmeti.PO[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test.po <- cbind(test.po, predmet.ocena.SKUPAJ = rowMeans(test.po[vars.predmet$cont$po[-1]], na.rm = TRUE)) -test.po <- round_df(test.po, 1) -proggPO.tmp <- povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$N_anket_po_izpitu >=minEnot, c("predmet.sifra","program.studentov","program.studentov.ime")] -if (nrow(proggPO.tmp)>0) { - proggPO.tmp <- aggregate(proggPO.tmp$predmet.sifra, by=proggPO.tmp[c("program.studentov","program.studentov.ime")], function(x) length(unique(x))) - proggPO.tmp1 <- proggPO.tmp - colnames(proggPO.tmp1)[3] <- "N_anket" - po.predmet <- merge(test.po, proggPO.tmp, by.x = "student.program.ime", by.y = "program.studentov.ime", all = TRUE) -} else {proggPO.tmp <- NULL -proggPO.tmp1 <- NULL -po.predmet <- NULL -} -## //ANKETA PO// ## - -#FAKULTETA: PROGRAMI-ANKETA PRED IZPITOM -# Povpreja komponent predmetov ankete PRED izpitom po tudijskih programih -progMeanPRED.tmp <- aggregate(data.predmeti[vars.predmet.vars], - by = data.predmeti[c("student.program.sifra","student.program.ime")], - FUN = mean, na.rm = TRUE) -progMeanPRED.tmp <- cbind(progMeanPRED.tmp, predmet.ocena.SKUPAJ = rowMeans(progMeanPRED.tmp[vars.predmet.vars], na.rm = TRUE)) -proggPRED.tmp1 <- proggPRED.tmp -colnames(proggPRED.tmp1)[3] <- "N_anket" -if (nrow(proggPRED.tmp1) > 0) { - progMeanPRED.n <- merge(proggPRED.tmp1, progMeanPRED.tmp, - by.x = c("program.studentov","program.studentov.ime"), - by.y = c("student.program.sifra","student.program.ime"), all = TRUE, sort = FALSE) -} else {progMeanPRED.n <- proggPRED.tmp1} - -#Dodajanje povpreja programa k izvajalcu na konec -#Povpreja programov anketa pred izpitom 1 STOPNJAA -program_1stopnja <- proggPRED.tmp - - -######################################################## -### analiza predmeta po smereh in letnikih tudentov ### -#tabelaBy (ki jo uporabimo v koda-izvajalec_predmet.r) -####################################################### -# Anketa PRED -# Pojasnilo funkcije tabelaby1: glej skripto koda-izvajalec_predmet.r -# Loimo komponente, na komponente, ki so v anketi PRED izpitom in anketi PO izpitu, saj ji bomo zapisali v loeni tabeli -vars.predmet$cont$ime.kratko1 <- vars.predmet$cont$ime.kratko[-c(12,13,14,15,16,17,18,19,20)] -vars.predmet$cont$decimalke1 <- vars.predmet$cont$decimalke[-c(12,13,14,15,16,17,18,19,20)] -vars.predmet$cont$pobarvanka1 <- vars.predmet$cont$pobarvanka[-c(12,13,14,15,16,17,18,19,20)] - -# Komponente PRED izpitom zapiemo v vektorje, ki bodo v Latex tabelah -komponente.predmeta.PRED <- vars.predmet$cont$vars1[-c(8,9,10,11)] # Komponente: Zadovoljstvo, Usklajenost, Samostojnost, ...itd -imena_stolpcevPRED <- as.character(vars.predmet$cont$ime.kratko1[-c(8,9,10,11)]) # Komponente, ki bodo kot imena stolpcev v tabeli tabelaBy1 -decimalno_mestoPRED <- as.numeric(vars.predmet$cont$decimalke1[-c(8,9,10,11)]) # Decimalke: zakoroevanje povprenih vrednosti komponent na 1 decimalno mesto -pobarvanka.PRED <- as.character(vars.predmet$cont$pobarvanka1[-c(8,9,10,11)]) # Pobarvanka: mejne vrednosti "3,4,Inf,Inf", ki barvajo povpreja v tabelah - - -# Pojasnilo funkcije tabelaby2: glej skripto koda-izvajalec_predmet.r -# Anketa PO -komponente.predmeta.PO <- vars.predmet$cont$vars1[-c(1,2,3,4,5,6,7)] # Komponente za anketo PO izpitu: Kompetence, Vsebine, naloge, Kriteriji + Ustreznost kreditnih tok -imena_stolpcevPO <- as.character(vars.predmet$cont$ime.kratko1[-c(1,2,3,4,5,6,7)]) # Komponente bodo predstavljale imena stolpcev v tabelah -decimalno_mestoPO <- as.numeric(vars.predmet$cont$decimalke1[-c(1,2,3,4,5,6,7)]) -pobarvanka.PO <- as.character(vars.predmet$cont$pobarvanka1[-c(1,2,3,4,5,6,7)]) - -# Iz stringa povleemo le tevila -# Pride v potev v tabelah v povzetku, kjer so negativne vrednosti za dele nesodelujoih -#library(stringr) -#numextract <- function(string){ -# str_extract(string, "\\-*\\d+\\.*\\d*") -#} - -############################################################## -# KOMENTARJI PRI POVPREJIH IZVAJALCEV HABILITACIJSKA KOMISIJA -# K povpreni ocenam izvajalcev dodamo e komentarje tudentov -# Uporabimo le vpimeru, da delamo poroila za habilitacijsko komisijo -Habilitacijska <- FALSE -if (Habilitacijska == TRUE) { - povprecja.izvajalci <- merge(povprecja.izvajalci, data.izvajalci[c("izvajalec.sifra","predmet.sifra","izvajalec.komentar.dobro","izvajalec.komentar.slabo")], - by=c("izvajalec.sifra","predmet.sifra"), all = T, sort = F) - # Ustvarimo csv datoteki, ki ju nato uporabimo za generiranje poroil TRENDOV in HABILITACIJSKE KOMISIJE - write.csv2(povprecja.izvajalci,"povprecja.izvajalci.csv") - write.csv2(povprecja.predmeti,"povprecja.predmeti.csv") -} -############################################################# -povprecja.predmeti <- merge(povprecja.predmeti, poNLurkerji, by = "predmet.sifra", all = TRUE, sort = FALSE) - -# povprecja.izvajalci <- subset(povprecja.izvajalci, !is.na(ST_STUD)) -# -# povprecja.predmeti <- subset(povprecja.predmeti, !is.na(ST_STUD)) diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaOsnovnoIzracuniFILOZOFSKA.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaOsnovnoIzracuniFILOZOFSKA.R deleted file mode 100644 index 509eb8d7c..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaOsnovnoIzracuniFILOZOFSKA.R +++ /dev/null @@ -1,2261 +0,0 @@ -################################# -# KRATEK OPIS STRUKTURE POROIL # -################################# -# Poroilo je sestavljeno na podlagi R kode (izrauni) in latex kode (.tex, struktura poroil) -# Vhodne datoteke se nahajajo v mapi "temp", kjer sta dve loeni datoteki s podatki za + -# ANKETO PRED IZPITOM in ANKETO PO IZPITU -# V mapi se nahajajo tudi ifranti (ki sluijo opredelitvi izvajalcev fakultete, predmetov, + -# naina tudija, tudijskih programov), itd: + -# Podrobno preberi: http://ul.1ka.si/index.php?fl=2&lact=1&bid=40&parent=3 -# V poroilu so ocenjene, obarvane in v tabelah predstavljene vrednosti komponent za izvajalca, + -# vrednosti komponent predmetov PRED izpitom in vrednosti komponent PO izpitu. -# Komponente za izvajalca so: Kakovost, Pripravljenost, Razumljivost, Zanimivost, Kritinost, Korektnost -# Komponente predmeta (ANKETA PRED): Zadovoljstvo, Usklajenost, Samostojnost, Literatura, Obveenost, Info. na spletu, Preverjanje -# Komponente predmeta (ANKETA PO):Vsebine, naloge, Ocenjevanje, Kompetence, Ustreznost Kreditnih tok -######## -# skripta: koda.r je osnova (ki jo vedno najprej poenemo) in je namenjena opredelitvi + -# spremenljivk, vektorjev, podatkovnih okvirjev in izraunu povpreij, kvantilnih rangov, + -# obarvanju, itd. -# Obarvanja povpreij komponent in kvantilnih rangov opredelimo v skkripti funkcije.R -# Skripto tabelaBy.r pa uporabimo samo pri izpisu PDF za izvajalca. Pri izpisu za programe, fakulteto tega ne uporabljamo. -# Ko smo pognali skrpto kodo.r, lahko generiramo poroilo za izvajalce, tako da poenemo + -# skirpto koda-izvajalec_predmet.r. -# Skripta koda-fakulteta.r slui generiranju poroila za fakulteto. -# Skripta koda-programi pa generira poroila za tudijske programe. -######## -# Glavo dokumenta, obarvanje vrednosti, irino tabel, rotiranje stolpcev, + -# nove strani, poglavja, kazalo itd. generiramo s pomojo latex kode, ki je + -# prenesena v R. -# V mapi latexkosi so denifirane tex. datoteke, ki so namenjene generiranju + -# glave (prva stran, kazalo) in noge (zakljuek) poroila -### Poroilo za izvajalca: glavno dokumenta definira tex datoteka a-glava.tex, + -# ki jo preberemo v skripti koda-izvajalec_predmet.r -### Poroilo za fakulteto: glavo dokumenta definira tex datoteka -# a-glava-program.tex (glej skripto koda-fakulteta.r) -### Excel datoteka "navodila" je narejena s strani programerja in + -# slui opredelitvi anketnih vpraanj za izvajalca, ter predmete (ANKETA PRED IN PO IZPITU) + -# oz. komponent, po katerih raunamo povpreja, kvantilne range, itd. -# Vsebuje tudi mejne vrednosti posameznih obarvanj (stolpec: pobarvanka), zaokroevanje + -# izraunanih povpreij v tabelah na eno decimalko (stolpec: decimalke), itd. - -## //KRATEK OPIS STRUKTURE POROIL// ## - - -## 1KA strenik ## -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo za posamezno fakulteto na streniku -# Tega ne poganjamo -#params <- commandArgs(trailingOnly = TRUE) -#ID <- params[1] -## //1KA strenik// ## - - -# Potrebne knjinice # -libraries <- c('tools', 'psych', 'Hmisc', 'reports', 'fmsb','car','Cairo','openxlsx','qpcR') -lapply(libraries, FUN = function(y) { - do.call('require', list(y))}) -# //Potrebne knjinice// # - - -# Naloimo dodatne funkcije (obarvanje povpreja + generiranje tabel v poglavju Analiza predmeta po programih in letnikih: -# glej poroilo za izvajalca ) -# e elimo spremeniti barvo, moramo novo barvo defnirati v skripti funkcije.r in v tex. datotekah (npr za izvajalca: a-glava.tex) -# !preveri! # -source('Evalvacija/R/funkcije/funkcije.r') # Barvanje povprenih ocnen komponent, kvantilnig rangov, rotiranje imena stolpcev v tabelah, itd. -source('Evalvacija/R/funkcije/tabelaBy.r') # Generiranje nekaterih tabel (Glej poroilo za izvajalca: Analiza predmeta po programih in letnikih) - -options(nwarnings = 10000) -# ignore these warnings: -# "[DATA NOT ENOUGH] at 3 NA" <- fmsb::radarchart ne more naredit radar grafa predmeta ker ni vsaj 3 vrednosti za ocene komponent predmeta -# "In FUN(newX[, i], ...) : no non-missing arguments to min; returning Inf/-Inf" <- ne more izraunat min in max ker je n=0 - - -# Ustvarimo mapo, kjer se bodo shranjevale slike (grafi, histogrami, barploti) -dir.create('Evalvacija/results/part-izvajalec-slike', showWarnings = FALSE) # Slike za izvajalca -dir.create('Evalvacija/results/part-predmet-slike', showWarnings = FALSE) # Slike za predmet - -# Opredelimo ID fakultete, ki skrbi za to da se v poroilu (kjer je dogovorjeno) izpie kratice fakultete, -# ime fakultete ter izrie logo fakultete. -# (glej poroilo za izvajalca, ki ga generira R. skripta koda-izvajalec_predmet) -# ID skrbi tudi, da preberemo ustrezne CSV datoteke za ustrezno Fakulteto. -ID <- 3000018 # Ko se koda prenese na strenik ID zakomentiramo, saj ga Peter ne Potrebuje -fakulteta <- "" -ime.fakultete <- "" -if (ID == 3000001) { # here - fakulteta <- "PEF" # Purpose: Read CSV file which has "PEF" in the end of the file. - studijska.praksa <- "Prakse PEF" # V primeru ko/e ima izvajalec tudijsko prasko, se v izpisu za izvajalca ustvari poglavje: TUDIJSKA PRAKSA, kjer se pri izrisu barplotov, namesto izpisa "Povpreje PEF", izpie: "Prakse PEF" - ime.fakultete <- "Pedagoka fakulteta" # na prvi strani PDF poroila pod sliko - logo <- "logo_PEF" # na prvi strani PDF poroila doda usterzno sliko fakultete (logo uporabimo pri generiranju poroil glej koda-izvajalec_predmet.r) -} else if (ID == 3000004){ - fakulteta <- "FU" # Purpose: Read CSV file which has "FU" in the end of the file. - studijska.praksa <- "Prakse FU" - ime.fakultete <- "Fakulteta za upravo" - logo <- "logo_FU" # Logoi se nahajajo : latexkosi/logo/ -} else if (ID == 3000006){ - fakulteta <- "FSD" - studijska.praksa <- "Prakse FSD" - ime.fakultete <- "Fakulteta za socialno delo" - logo <- "logo_FSD" -} else if (ID == 3000009){ - fakulteta <- "FPP" - studijska.praksa <- "Prakse FPP" - ime.fakultete <- "Fakulteta za pomorstvo in promet" - logo <- "logo_FPP" -} else if (ID == 3000011){ - fakulteta <- "ZF" - studijska.praksa <- "Prakse ZF" - ime.fakultete <- "Zdravstvena fakulteta" - logo <- "logo_ZF" -} else if (ID == 3000018){ - fakulteta <- "FF" - studijska.praksa <- "Prakse FF" - ime.fakultete <- "Filozofska fakulteta" - logo <- "logo_FF" -} else if (ID == 3000019){ - fakulteta <- "EF" - studijska.praksa <- "Prakse EF" - ime.fakultete <- "Ekonomska fakulteta" - logo <- "logo_EF" -} else if (ID == 3000020){ - fakulteta <- "PF" - studijska.praksa <- "Prakse PF" - ime.fakultete <-"Pravna fakulteta" - logo <- "logo_PF" -} else if (ID == 3000021){ - fakulteta <- "FDV" - studijska.praksa <- "Prakse FDV" - ime.fakultete <- "Fakulteta za drubene vede" - logo <- "logo_FDV" -} else if (ID == 3000022){ - fakulteta <- "FSSS" - studijska.praksa <- "Prakse FSSS" - ime.fakultete <- "Fakulteta za port" - logo <- "logo_FSSS" -} else if (ID == 3000023){ - fakulteta <- "FS" - studijska.praksa <- "Prakse FSTR" - ime.fakultete <- "Fakulteta za strojnitvo" - logo <- "logo_FSTR" -} else if (ID == 3000025){ - fakulteta <- "FA" - studijska.praksa <- "Prakse FA" - ime.fakultete <- "Fakulteta za arhitekturo" - logo <- "logo_FA" -} else if (ID == 3000026){ - fakulteta <- "FGG" - studijska.praksa <- "Prakse FGG" - ime.fakultete <- "Fakulteta za gradbenitvo in geodezijo" - logo <- "logo_FGG" -} else if (ID == 3000027){ - fakulteta <- "FMF" - studijska.praksa <- "Prakse FMF" - ime.fakultete <- "Fakulteta za matematiko in fiziko" - logo <- "logo_FMF" -} else if (ID == 3000029){ - fakulteta <- "NTF" - studijska.praksa <- "Prakse NTF" - ime.fakultete <- "Naravoslovnotehnika fakulteta" - logo <- "logo_NTF" -} else if (ID == 3000030){ - fakulteta <- "FKKT" - studijska.praksa <- "Prakse FKKT" - ime.fakultete <- "Fakulteta za kemijo in kemijsko tehnologijo" - logo <- "logo_FKKT" -} else if (ID == 3000031){ - fakulteta <- "FFA" - studijska.praksa <- "Prakse FFARM" - ime.fakultete <- "Fakulteta za farmacijo" - logo <- "logo_FFARM" -} else if (ID == 3000037){ - fakulteta <- "VF" - studijska.praksa <- "Prakse VF" - ime.fakultete <- "Veterinarska fakulteta" - logo <- "logo_VF" -} else if (ID == 3000041){ - fakulteta <- "MF" - studijska.praksa <- "Prakse MF" - ime.fakultete <- "Medicinska fakulteta" - logo <- "logo_MF" -} else if (ID == 3000042){ - fakulteta <- "ALUO" - studijska.praksa <- "Prakse ALUO" - ime.fakultete <- "Akademija za likovno umetnost in oblikovanje" - logo <- "logo_ALU" -} else if (ID == 3000043){ - fakulteta <- "AG" - studijska.praksa <- "Prakse AG" - ime.fakultete <- "Akademija za glasbo" - logo <- "logo_AG" -} else if (ID == 3000044){ - fakulteta <- "AGRFT" - studijska.praksa <- "Prakse AGRFT" - ime.fakultete <- "Akademija za gledalie, radio, film in televizijo" - logo <- "logo_AGRFT" -} else if (ID == 3000050){ - fakulteta <- "TEOF" - studijska.praksa <- "Prakse TEOF" - ime.fakultete <- "Teoloka fakulteta" - logo <- "logo_TEOF" -} else if (ID == 3000063){ - fakulteta <- "FRI" - studijska.praksa <- "Prakse FRI" - ime.fakultete <- "Fakulteta za raunalnitvo in informatiko" - logo <- "logo_FRI" -} else if (ID == 3000064){ - fakulteta <- "FE" - studijska.praksa <- "Prakse FE" - ime.fakultete <- "Fakulteta za elektrotehniko" - logo <- "logo_FE" -} else if (ID == 3000071){ - fakulteta <- "BF" - studijska.praksa <- "Prakse BF" - ime.fakultete <- "Biotehnika fakulteta" - logo <- "logo_BF" -} else { - fakulteta <- "" - studijska.praksa <- "" - ime.fakultete <- "" -} -## //Opredelimo ID// ## - - -## //Preberemo vhodne datoteke// ## - -# Preberemo vhodne datoteke glede na ID, ki so ga opredelili ## -# V navodilih so opredeljene komponente in definirana imena vpraanj + -# ankete 1KA za izvajalca (npr. IZPOUC1) in za predmet (npr. IZPREDa) -# Vrstice predstavljajo komponente za izvajalca in za predmete. -# Definirana so tudi imena komponent, ki jih zapiemo v latex tabelah + -# (stolpec: ime.kratko) ter celotna imena komponent oz. anketnih vpraanj -# (glej stolpec: ime.dolgo) -# V navodilih so opredeljene spremenljivke, ki se nanaajo na spremenljivke v bazi (anketa pred in anketa po izpitu) ter -# dodana nova imena teh spremenljivk, ki smo jih generirali sami zaradi lajega in hitrejega pisanja nadalnje kode -# (klicanje teh spremenljivk, ki se raunajo) -navodila <- openxlsx::read.xlsx(xlsxFile = "Evalvacija/temp/navodila.xlsx", colNames = TRUE, rowNames = TRUE) # Glej excel navodila! - -#Podatki za: Anketa PRED izpitom -data_pred_izpitom <- read.csv2(paste0("Evalvacija/temp/anketa_pred_izp_", fakulteta, ".csv"), sep=";", header = T, fill = T, stringsAsFactors = FALSE) -if (data_pred_izpitom[1,1] == "Ustreznost") {data_pred_izpitom <- data_pred_izpitom[2:nrow(data_pred_izpitom), ]} - -# Ker je v ifrantu ifra tudenta z velikimi rkami, v csv datotekah (anketa PRED in PO) pa z malimi, to ustrezno preoblikujemo (da se ujema) -# large font -#data_pred_izpitom$sifstud <- toupper(data_pred_izpitom$sifstud) -# Umetno generiramo ifre tudentov, zato da lahko navidezno zrduimo podatke pred izpitom in po izpitu -#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -# V letu 2017 je prilo do spremembe v ifrantih, in sicer v obeh bazah odgovorov tudentov -# 1KA (anketa pred izpitom in anketa PO izpitu) ne sem biti ve IFER TUDENTOV, ki pa je v -# prejnjih leti bila. Ker smo dve loeni bazi (anketa pred in po izpitu) -# zdruevali na podlagi ifre tudentov to ve ni mogoe. Zato imamo dve reitvi: -# 1) Celotno kodo preuredimo tako, da bomo podatke vlekli iz dveh razlinih baz (data_pred_izpitom, data_po_izpitu) -# 2) Umetno geneiramo ifre tudentov le zato, da bazi lahko zdruimo in ni potrebno preurejati kode na novo. -# Zaradi velikeha prihranka asa smo izbrali drugo monost!!!!!!!!!!! -# Umetno generirani ID tudentov so uporabljeni le zaradi zdruevanja baz, in se jih ne upoteva nikjer drugje (npr raunanje povpreij) -# Zdruimo torej zato, da ni potrebno razbijati in na novo urejati cele kode -# Sami generiramo id tudentov, ki se bodo zaeli z A1 in konali z An (odbisno od tevila vrstic) -data_pred_izpitom$sifstud <- sort(sample(paste0("A", seq(1:nrow(data_pred_izpitom))), replace = FALSE), decreasing = TRUE) - -# Sortiramo po velikosti oz. A1, A2, A3,..... -data_pred_izpitom$sifstud <- data_pred_izpitom$sifstud[order(gsub("([A-Z]+)([0-9]+)", "\\1", data_pred_izpitom$sifstud), - as.numeric(gsub("([A-Z]+)([0-9]+)", "\\2", data_pred_izpitom$sifstud )))] -# Podatki za: Anketa PO izpitu -data_po_izpitu <- read.csv2(paste0("Evalvacija/temp/anketa_po_izpitu_", fakulteta, ".csv"), sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -if (data_po_izpitu[1,1]=="Ustreznost") {data_po_izpitu <- data_po_izpitu[2:nrow(data_po_izpitu), ]} - -# large font -#data_po_izpitu$sifstud <- toupper(data_po_izpitu$sifstud) - -# Enako naredimo e za anketo PO izpitu -data_po_izpitu$sifstud <- sort(sample(paste0("A", seq(1:nrow(data_po_izpitu))), replace = FALSE), decreasing = FALSE) - -# Sortiramo po velikosti oz. A1, A2, A3,..... -data_po_izpitu$sifstud <- data_po_izpitu$sifstud [order(gsub("([A-Z]+)([0-9]+)", "\\1", data_po_izpitu$sifstud ), - as.numeric(gsub("([A-Z]+)([0-9]+)", "\\2", data_po_izpitu$sifstud)))] -# ifrant X1 -# my_data <- read.delim("FGG.txt", sep="#" , header=F, stringsAsFactors = FALSE) -# my_data <- my_data[,2:ncol(my_data)] -# colnames(my_data) <- c("IDP", "PREDMET", "IDPEDAGOGA", "NAZIV PEDAGOGA", "NACIN_STUDIJA", -# "SEMESTER_IZV", "ST_KT", "ST_STUD", "NOSILEC", "STOPNJA", "PRAKSA", "IZVEDBA") -# -# my_data["IZVEDBA"] <- NULL -# my_data["ST_STUD"] <- NULL -# my_data$IDP <- ifelse(my_data$NACIN_STUDIJA == 1, paste0(my_data$IDP,"_1"), paste0(my_data$IDP,"_2")) -# -# my_data$IDP <- as.character(my_data$IDP) -# -# sifrant <- read.csv2("sifrant_FGG.csv", sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -# sifrant["IZVEDBA"] <- NULL -# -# sifrantFDV <- merge(my_data, sifrant[c("IDP","IDPEDAGOGA","ST_STUD")], by = c("IDP","IDPEDAGOGA"), all = TRUE, sort = FALSE) -# -# sifrantFDV <- sifrantFDV[c("IDP", "PREDMET", "IDPEDAGOGA", "NAZIV PEDAGOGA", "NACIN_STUDIJA", -# "SEMESTER_IZV", "ST_KT", "ST_STUD", "STOPNJA", "NOSILEC", "PRAKSA")] -# -# sifrantFDV <- subset(sifrantFDV, !is.na(PREDMET)) -# -# -# write.csv2(sifrantFDV, "sifrant_FGG.csv", row.names = FALSE) - -sifrant <- read.csv2(paste0("Evalvacija/temp/sifrant_", fakulteta, ".csv"), sep = ";", header = T, fill = T, stringsAsFactors = FALSE) - -# 7.10.2017 nov sifrant X1, ki se bo uporabil za anlize. -# za anlize se ne sme uporabiti novega stevila studentov, ker ni realno - -# tako da lahko se uporabi posodobljene podatke za pedagoge, stevilo studentov pa staro, -# kot je bilo v prejsnjem sifrantu. -# Zato moramo tevilo tudentov novega ifranta zdruiti, a ker so lahko nekateri pedagogi v novem -# ufrantu dodani bo to pominlo da bodo imeli pri T tudenov vrednost NA. Zato v kolikor ima -St.stud.NA.<- list() -for (i in sifrant$IDP) { - St.stud.NA.[[i]] <- subset(sifrant, IDP==i) - if(any(duplicated(St.stud.NA.[[i]]$IDP))){ - if(!all(is.na(St.stud.NA.[[i]]$ST_STUD))){ - St.stud.NA.[[i]]$ST_STUD <- as.numeric(St.stud.NA.[[i]]$ST_STUD) - St.stud.NA.[[i]]$ST_STUD <- max(St.stud.NA.[[i]]$ST_STUD, na.rm=T) - } - } -} -sifrant <- do.call(rbind, lapply(St.stud.NA., data.frame, stringsAsFactors=FALSE)) - - -# ifrant X2 -studenti <- read.csv2(paste0("Evalvacija/temp/studenti_", fakulteta, ".csv"), sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -# // !!!!!!! // # -# Remove duplicated rows (remove diplucated students) from data frame tudenti. -# Delamo samo takrat ko generiramo poroila za: Izvajalca, fakulteto in predmet!! -# Ko generiramo poroila za posamezne PROGRAME, KATEDRE tega ne uporabimo! -# Podvojeni tudenti so zaradi nekaterih fakultet, kjer so dvopredmetni programi -# (npr. Filozofska fakulteta, Teoloka fakulteta, itd.). -studenti <- studenti[!duplicated(studenti$ID_studenta_.MD5.), ] -# // !!!!!!! // # - -# ifrant X3 -programi.imena <- read.csv2(paste0("Evalvacija/temp/programi_", fakulteta, ".csv"), fill = TRUE, sep = ";",header = T, stringsAsFactors = FALSE) -# Encoding(programi.imena$Naziv ) <- "UTF-8" # e so pokvarjeni Ȏ-ji zaradi napanega encodinga v ifrantih to ustrezno popravimo -# Loimo univerzitetne in visokoolske programe z vrsto tudija, ker so drugae podvojena imena (npr. Druboslovna informatika (uni)) -programi.imena$Naziv <- paste0(programi.imena$Naziv, " (",programi.imena$Vrsta,")") # Imenu programa prilepimo vrsto tudija (npr. uni ali vs) - -## //Preberemo vhodne datoteke// ## - - -# Naloimo dodatna navodila, ki imajo ve nalog: (glej skripto navodila_dodatno-UTF-8.r) -source('Evalvacija/R/navodila_dodatno-UTF-8.r') - - -#-------------------------- MOREBITNE NESKLADNOSTI Z 1KA BAZO IN IFRANTOM X1 -----------------------------# -# Preverimo ali so v bazi kakni odgovori tistih izvajalcev, ki manjkajo v ifrantu X1. Npr izvajalec ima -# v bazi (anketa PRED izpitom) odgovore za predmet, ki v ifrantu X1 ni naveden oz. manjka -# Slednje lahko pivede do erorjev pri generiranju PDF poroil in asovne zamude, kar elimo prepreiti -library(tidyverse) -# ANKETA PRED -podatki.1KA.baza.PRED <- data_pred_izpitom %>% - gather(contains("sifizv"), - key = "sifizv", - value = "ID" - ) %>% - select_("predmet","sifpredm","ID") %>% - unique() - -# Kateri izvajalci so v 1KA bazi (imajo odgovore) a niso v ifrantu X1 -output.pred <- anti_join(podatki.1KA.baza.PRED, sifrant , by = c("sifpredm" ="IDP","ID"="IDPEDAGOGA")) -# Izloimo vse manjkajoe oz. nevsebinske vrednosti respondenta (-1, -2, -5, itd) -output.pred <- output.pred[! output.pred$ID %in% junk.komentar, ] - - -# PREVERI # -if (nrow(output.pred) >= 1) { # e je output.pred < 1 to pomeni, da sta bazi 1KA odgovorov (anketa PRED) in ifrant X1 skladni zato lahko nadaljujemo z izrauni - cat("V bazi 1KA (anketa PRED izpitom) se nahaja izvajalec z ID-jem",paste(output.pred$ID, collapse = ' , '), "ki ga v ifrantu X1 ni!!!!!") - warning("Izvajalci ki so v 1KA bazi, manjkajo v ifrantu X1") -} -# PREVERI # - -#------------------------- //MOREBITNE NESKLADNOSTI Z 1KA BAZO IN IFRANTOM X1// ---------------------------# - - -#--------------------------------------- AGREGAT SUMARNIH PREDMETOV -----------------------------------------# -if (ID == 3000043){ # e je ID == Fakulteta za Glasbo zdruimo doloene predmete iz ifranta x7 v meta predmet -source('Evalvacija/R/metapredmeti.r') -} -#------------------------------------ //AGREGAT SUMARNIH PREDMETOV// ----------------------------------------# - - -# Urejanje -sifrant$PREDMET <- trim(sifrant$PREDMET) # remove extra spaces # trim funkcija je definirana v funkcije.r -sifrant$PREDMET <- sub("^\\.", "", sifrant$PREDMET) # remove dots in front of course names (FDV!) -sifrant$NAZIV.PEDAGOGA <- trim(sifrant$NAZIV.PEDAGOGA) # remove extra spaces - - -# preverba e ni kakna ifra predmeta * ifra izvajalca v ifrantu podvojena -# npr. izvajalec je imel napano ifro in dve izvedbi (redna/izredna) nista imeli razlinih ifer -podvojeniID <- table(paste(sifrant$IDP, sifrant$IDPEDAGOGA, sep = '*')) -if (max(podvojeniID) > 1) { - sumljivci <- paste(names(podvojeniID[which(podvojeniID > 1)]), collapse = '\n') - warning("All course*lecturer ID's in sifrant should be unique!!\nThese are not:\n", sumljivci) -} - -# V excel datoteki navodila poiemo vzorec "izvajalec" in zajamemo vse vrstice, -# kjer se pojavlja. Enako naredimo e za predmet in tudenta. -# saj gre za komponente, po katerih raunamo povpreja, kvantile za izvajalce ali predmete. -# Kaj komponente? Glej excel datoteko navodila -navI <- navodila[grepl(pattern='izvajalec.*', rownames(navodila)), ] -navP <- navodila[grepl(pattern='predmet.*', rownames(navodila)), ] -navS <- navodila[grepl(pattern='student.*', rownames(navodila)), ] - -lokacije.izvajalci <- navI[, grepl(pattern='izvajalec.\\d', colnames(navodila))] -lokacije.predmet <- navP[, 'lokacije.predmet', drop = FALSE] # drop = False, ker elimo ohraniti podatkovni okvir -lokacije.student <- navS[, 'lokacije.student', drop = FALSE] - - -## ZDRUEVANJE SPREMENLJIVK V VARS.IZVAJALEC in VARS.PREDMET ## -# Spremenljivke oz komponente po katerih raunamo posamezna povpreja bi se dalo tudi neposredno raunati z -# navajanjem imen posameznih sprmenljivk v bazih anketa pred in anketa po izpitu. Npr namesto izvajalec ocena kakovost -# bi generirali vector s spremenljivko IZMNE1a. Ta spremenljivka je tako poimenovana v bazi. -# Zdruimo spremenljivke oz komponente za izvajalca v EXCEL DATOTEKI NAVODILA # -# Zdruimo zato, da ni potrebno navajati (npr. raunanje) imen posameznih spremenljivk, ki se nahajajo v anketi pred in po. -# Komponente, ki se bodo raunale oz. stolpce zdruimo v list, katerega nato kliemo pri raunanju in pri generiranju tabel -vars.izvajalec <- list( - cont = list(vars = rownames(navI)[navI$tip == 'CONT' & !is.na(navI$tip)]), # "CONT" pomeni, da gre za zaprto vpraanje - text = list(vars = rownames(navI)[navI$tip == 'TEXT' & !is.na(navI$tip)])) # "TEXT" pomeni, da gre za odprto vpraanje (glej npr 26 vrstico v excel datoteki navodila) - -vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'ime.kratko'] # ime.kratko (glej navodila) in tabele pri poroilu izvajalca. Npr ime.kratko se pojavlja v Tabeli 1.1: Poroilo izvajalca -vars.izvajalec$text$ime.kratko[vars.izvajalec$text$vars] <- navI[vars.izvajalec$text$vars, 'ime.kratko'] -vars.izvajalec$cont$ime.dolgo[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'ime.dolgo'] # Celoten tekst zaprtih vpraanj za tabele (glej izpis izvajalca) -vars.izvajalec$text$ime.dolgo[vars.izvajalec$text$vars] <- navI[vars.izvajalec$text$vars, 'ime.dolgo'] # Celoten tekst odprtih vpraanj za tabele (glej izpis izvajalca) -vars.izvajalec$cont$pobarvanka[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'pobarvanka'] # V excel datoteki opredelimo -# meje barvanja za posamezno komponento (glej stolpec pobarvanka). -# Te meje potem zapiemo v funkcijo s katero barvamo povpreja (glej skripto funkcije.r) -vars.izvajalec$cont$decimalke[vars.izvajalec$cont$vars] <- navI[vars.izvajalec$cont$vars, 'decimalke.tabele'] # zaokroevanje obarvanih vrednosti na 1 decimalko (glej funkcije.r) - - -# Zdruimo spremenljivke oz komponente za PREDMETE (PRED IN PO) v EXCEL DATOTEKI navodila# -# Stolpce oz spremenljivke, ki se raunajo zdruimo v list -vars.predmet <- list( - cont=list(vars=c(rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRED"], # Komponente PRED izpitom - rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PO"], # Komponente PO izpitu - rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRAKSA"])), # Komponente, ki vsebujejo oceno za tudijsko prakso - text=list(vars=rownames(navP)[navP$tip == 'TEXT' & !is.na(navP$tip)]), - krediti=list(vars=rownames(navP["predmet.ocena.krediti", ])), - kompetence1=list(vars=rownames(navP["predmet.ocena.kompetence1", ]))) - -# Loimo kompponente po katerih raunamo povpreja za predmete, -# in sicer komponente PRED IZPITOM, komponente PO IZPITU IN komponente za tudijsko PRAKSO (zaradi raunanja vrednosti in izpisa poroil) -vars.predmet$cont$pred <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRED"] -vars.predmet$cont$po <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PO"] -vars.predmet$cont$praksa <- rownames(navP)[navP$tip == 'CONT' & !is.na(navP$tip) & navP$cont.pred.po.izpitu == "PRAKSA"] - -vars.predmet$cont$ime.kratko[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'ime.kratko'] -vars.predmet$text$ime.kratko[vars.predmet$text$vars] <- navP[vars.predmet$text$vars, 'ime.kratko'] -vars.predmet$krediti$ime.kratko[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'ime.kratko'] -vars.predmet$kompetence1$ime.kratko[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'ime.kratko'] -vars.predmet$cont$ime.dolgo[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'ime.dolgo'] -vars.predmet$text$ime.dolgo[vars.predmet$text$vars] <- navP[vars.predmet$text$vars, 'ime.dolgo'] -vars.predmet$krediti$ime.dolgo[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'ime.dolgo'] -vars.predmet$kompetence1$ime.dolgo[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'ime.dolgo'] - -# Labele za komponenti Porabljeno tevilo ur in za kompetence (glej poroilo za izvajalca, poglavje: tevilo porabljenih ur (anketa PO izpitu)) -# Labele: "1 - Veliko manj" "2 - Nekoliko manj" "3 - Predvideno" "4 - Nekoliko ve" "5 - Veliko ve" -vars.predmet$krediti$labele[vars.predmet$krediti$vars] <- strsplit(navP["predmet.ocena.krediti","labele"], split = ",") -vars.predmet$kompetence1$labele[vars.predmet$kompetence1$vars] <- strsplit(navP["predmet.ocena.kompetence1","labele"], split = ",") - -# we don't use whole wording for graph labels -# Labele (graf) za komponento "Ustreznost KT" oz tevilo porabljenih ur (anketa PO izpitu) <- glej poroilo za izvajalca slika: -# Frekvenna porazdelitev za tevilo porabljenih ur (anketa PO izpitu) -vars.predmet$krediti$labele.graf <- vars.predmet$krediti$labele[vars.predmet$krediti$vars] -vars.predmet$krediti$labele.graf[[vars.predmet$krediti$vars]][c(2,4)] <- c("2", "4") - -# Labele za komponento "kompetence" <-glej poroilo za izvajalca -vars.predmet$kompetence1$labele.graf <- vars.predmet$kompetence1$labele[vars.predmet$kompetence1$vars] -vars.predmet$kompetence1$labele.graf[[vars.predmet$kompetence1$vars]][c(2,4)] <- c("2", "4") - -# "3,4,Inf,Inf" So meje barvanja, ki smo jih doloili v excel datoteki navodila, in sicer stolpec "pobarvanka" -# za 3,4,Inf,Inf -> manj kot 3 je bold redee, 3 ali ve in manj kot 4 je samo rdee, Inf, Inf pomeni da ni zgornje meje za barvanja. -# Katera barva pripada posamezni vrednosti v tabelah definiramo v skripti funkcije.r -vars.predmet$cont$pobarvanka[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'pobarvanka'] -vars.predmet$krediti$pobarvanka[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'pobarvanka'] -vars.predmet$kompetence1$pobarvanka[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'pobarvanka'] - -# Vse vrednosti bodo v tabelah zaokroene na eno decimalno mesto. Temu slui stolpec "decimalke.tabele" v excel datoteki navodila -vars.predmet$cont$decimalke[vars.predmet$cont$vars] <- navP[vars.predmet$cont$vars, 'decimalke.tabele'] -vars.predmet$krediti$decimalke[vars.predmet$krediti$vars] <- navP[vars.predmet$krediti$vars, 'decimalke.tabele'] -vars.predmet$kompetence1$decimalke[vars.predmet$kompetence1$vars] <- navP[vars.predmet$kompetence1$vars, 'decimalke.tabele'] -#################### - -# Kot smo e omenili elimo zdruiti bazi, kar naredimo na podlagi ifer predmetov in ifer tudentov, ki smo -# jih za leto 2016/2017 simulirali. -# merging data from before and after exam databases - each student must have only 1 row for each course -data <- merge(data_pred_izpitom, data_po_izpitu, by = c(navodila["student.sifra","lokacije.student"], - navodila["predmet.sifra","lokacije.predmet"]), all = TRUE) - -####################################################################################### -# premetavanje -####################################################################################### - -###################### -# PODATKI ZA IZVAJALCE (premetavanje po anketah -> po izvajalcih) -##################### -# tevilo izvajalcev v bazi -lokacije.izvajalci.names <- names(data)[grepl( "izvajalec." , names(data))] -lokacije.izvajalci <- lokacije.izvajalci[,1:length(lokacije.izvajalci.names)] -data.izvajalci <- NULL -for (i in names(lokacije.izvajalci)){ # lokacije.izvajalci in lokacije.predmet <- v excel datoteki Navodila - data.temp <- data[c(lokacije.predmet[, 1], as.vector(lokacije.izvajalci[[i]]),"idprog.x","letnik.x","program.x","lurker.x")] # spremenljivke ki smo jih doloili glede na predavatelje v csv uvoeni tabeli - names(data.temp) <- c(rownames(lokacije.predmet), rownames(lokacije.izvajalci), "ID_vrsta_studija","Letnik","Naziv","lurker") - data.temp <- subset(data.temp, izvajalec.sifra > 0) # samo kjer je naveden izvajalec - if (is.null(data.izvajalci)) { - data.izvajalci <- data.temp - } else { - data.izvajalci <- rbind(data.izvajalci,data.temp) - } -} - -# Izloimo vse manjkajoe vrednosti -# setting missing values and keeping some (defined in navodila.xlsx in column missing.table) for frequency tables -someMissVars <- rownames(navodila[!is.na(navodila$missings.table), ]) -data.izvajalci.someMiss <- data.izvajalci[c("predmet.sifra","izvajalec.sifra",someMissVars)] -for (var in c(vars.predmet$cont$vars,vars.predmet$text$vars,vars.predmet$krediti$vars, - vars.predmet$kompetence1$vars,vars.izvajalec$cont$vars,vars.izvajalec$text$vars)) { - miss <- unlist(strsplit(navodila[var,]$missings, ",")) - data.izvajalci[, var][data.izvajalci[, var] %in% miss] <- NA - if (var %in% c(vars.predmet$cont$vars,vars.predmet$krediti$vars, - vars.predmet$kompetence1$vars,vars.izvajalec$cont$vars)) { - data.izvajalci[, var] <- as.numeric(data.izvajalci[, var]) - } - if (var %in% someMissVars) { - someMissVals <- matrix(unlist(strsplit(unlist(strsplit(navodila[var,]$missings.table, ",")), "=")), ncol = 2, byrow = TRUE) - miss <- miss[!(miss %in% someMissVals[, 1])] - data.izvajalci.someMiss[, var][data.izvajalci.someMiss[, var] %in% miss] <- NA - for (missVar in 1:nrow(someMissVals)) { - data.izvajalci.someMiss[, var][data.izvajalci.someMiss[, var] == someMissVals[missVar,1] & - !is.na(data.izvajalci.someMiss[, var])] <- someMissVals[missVar,2] - } - } -} -# all values with some miss for tables -# Glej tabelo Povpreja in delei kategorij odgovorov za komponente pedagokega dela izvajalca pri predmetu (anketa PRED izpitom)" -izvajalec.someMiss <- sort(unique(as.vector(as.matrix(data.izvajalci.someMiss[,vars.izvajalec$cont$vars])))) - -# Check if values are missing. We need column_name for table making -# V poroilu za izvajalca glej podpoglavje: Frekvenna porazdelitev ocen komponent pedagokega dela izvajalca -# V primeru, da kakna vrednost manjka jo ustvarimo, sicer ko poenemo koda-izvajalec_predmet ne generira tabel -column_name <- c("1","2","3","4","5","Ne elim odgovoriti","Nimam dovolj informacij") - -if (length(which(izvajalec.someMiss %in% column_name)) < 7) { - # e so kakne manjkajoe vrednosti, ki se dodajajo v tabele kot imena stolpcev za izvajalca - Missing <- setdiff(column_name, izvajalec.someMiss) # Find names of missing columns - izvajalec.someMiss <- c(Missing,izvajalec.someMiss) - izvajalec.someMiss <- sort(izvajalec.someMiss) -} -# //column_name// # - - -data.izvajalci <- data.izvajalci[order(data.izvajalci$izvajalec.sifra, data.izvajalci$predmet.sifra), ] -# tevilo vseh odgovorov. To so odgovori na predmet in izvajalca -# '-1' neodgovorjeno vpraanje, '-2' preskok zaradi pogoja (IF) -data.izvajalci$veljavna.vsiodgovori <- data.izvajalci$predmet.izpolnjeval.pred == -1 & (data.izvajalci$izvajalec.jepouceval == 1 | data.izvajalci$izvajalec.jepouceval == 2 | data.izvajalci$izvajalec.jepouceval == -2) -# tevilo odgovorov izvajalca -# ali je anketa veljavna za izvajalca; ali je student ni izpolnjeval (je pa zael anketo) -data.izvajalci$veljavna <- data.izvajalci$predmet.izpolnjeval.pred == -1 & (data.izvajalci$izvajalec.jepouceval == 1 | data.izvajalci$izvajalec.jepouceval == -2) -data.izvajalci$zavrnjena <- (!data.izvajalci$veljavna & !is.na(data.izvajalci$predmet.izpolnjeval.pred) & !is.na(data.izvajalci$izvajalec.jepouceval) & !(data.izvajalci$izvajalec.jepouceval == 2)) -data.izvajalci$nipouceval <- data.izvajalci$izvajalec.jepouceval == 2 # e je tudent v anketi pred izpitom odgovoril, da ga izvajalec pri tem predmetu ni poueval -# adding student data (year and programme) -data.izvajalci <- merge(data.izvajalci, programi.imena[,c("ID", "Naziv")], by.x = "ID_vrsta_studija", by.y = "ID", all.x = TRUE, sort = FALSE) -names(data.izvajalci)[match(c("ID_vrsta_studija","Letnik","Naziv.y"), names(data.izvajalci))] <- c("student.program.sifra","student.letnik","student.program.ime") - - -##################### -# PODATKI ZA PREDMETE -##################### -data.predmeti <- data[c(lokacije.predmet[, 1], lokacije.student[, 1],"idprog.x","letnik.x","program.x", "lurker.x")] # Zdruimo spremenljivke v lokacije.predmet[, 1] in ifro tudentov -names(data.predmeti) <- c(rownames(lokacije.predmet), rownames(lokacije.student),"ID_vrsta_studija","Letnik","Naziv","lurker") -someMissVars <- rownames(navP[!is.na(navP$missings.table), ]) -data.predmeti.someMiss <- data.predmeti[c("predmet.sifra", someMissVars)] -# setting missing values and keeping some (defined in navodila.xlsx in column missing.table) for frequency tables -for (var in c(vars.predmet$cont$vars,vars.predmet$text$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - miss <- unlist(strsplit(navodila[var,]$missings, ",")) - data.predmeti[, var][data.predmeti[, var] %in% miss] <- NA - if (var %in% c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - data.predmeti[, var] <- as.numeric(data.predmeti[, var]) - } - if (var %in% someMissVars) { - someMissVals <- matrix(unlist(strsplit(unlist(strsplit(navodila[var,]$missings.table, ",")), "=")), ncol = 2, byrow = TRUE) - miss <- miss[!(miss %in% someMissVals[, 1])] - data.predmeti.someMiss[, var][data.predmeti.someMiss[, var] %in% miss] <- NA - for (missVar in 1:nrow(someMissVals)) { - data.predmeti.someMiss[, var][data.predmeti.someMiss[, var] == someMissVals[missVar, 1] & - !is.na(data.predmeti.someMiss[, var])] <- someMissVals[missVar, 2] - } - } -} -# all values with some miss for tables -predmet.someMiss <- sort(unique(as.vector(as.matrix(data.predmeti.someMiss[, vars.predmet$cont$vars])))) -if(any(predmet.someMiss=="")) { - predmet.someMiss <- predmet.someMiss[predmet.someMiss != ""] - -} - -# data.predmeti$predmet.sifra <- as.numeric(data.predmeti$predmet.sifra) -data.predmeti <- data.predmeti[order(data.predmeti$predmet.sifra),] -# ali je anketa veljavna za predmet; ali je student ni izpolnjeval (je pa zael anketo) -# '-1' neodgovorjeno vpraanje -data.predmeti$veljavna <- data.predmeti$predmet.izpolnjeval.pred == -1 & !is.na(data.predmeti$predmet.izpolnjeval.pred) -data.predmeti$veljavna_po_izpitu <- data.predmeti$predmet.izpolnjeval.po == -1 & !is.na(data.predmeti$predmet.izpolnjeval.po) -data.predmeti$zavrnjena <- (!data.predmeti$veljavna & !is.na(data.predmeti$predmet.izpolnjeval.pred)) -data.predmeti$zavrnjena_po_izpitu <- (!data.predmeti$veljavna_po_izpitu & !is.na(data.predmeti$predmet.izpolnjeval.po)) -# adding student data (year and programme) -data.predmeti <- merge(data.predmeti, programi.imena[,c("ID", "Naziv")], by.x="ID_vrsta_studija", by.y="ID", all.x=TRUE, sort=FALSE) -names(data.predmeti)[match(c("ID_vrsta_studija","Letnik","Naziv.y"), names(data.predmeti))] <- c("student.program.sifra","student.letnik","student.program.ime") - -# ali so v bazi kakni predmeti ki jih ni v ifrantu -test2 <- unique(data.predmeti$predmet.sifra)[!(unique(data.predmeti$predmet.sifra) %in% unique(sifrant$IDP))] -if (length(test2) > 0) { - test2 <- paste(test2, collapse='\n') - warning('V ifrantu ni predmetov, ki pa so v bazi:\n', test2) -} - -# zapis obeh baz na katerih se dela naprej -#write.csv2(data.izvajalci, paste0("results/data.izvajalci_", fakulteta, ".csv")) -# #write.csv2(data.predmeti, paste0("results/data.predmeti_", fakulteta, ".csv")) - data.izvajalci <- data.izvajalci[!(data.izvajalci$predmet.sifra %in% output.pred$sifpredm & - data.izvajalci$izvajalec.sifra %in% output.pred$ID),] - - -####################################################################################### -# izrauni opisnih statistik -####################################################################################### - -############### -## IZVAJALCI ## -############### -# povpreja -izvMean <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = mean, na.rm = TRUE) -colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - -# mediane -izvMedian <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = median, na.rm = TRUE) -colnames(izvMedian)[3:ncol(izvMedian)] <- paste0(vars.izvajalec$cont$vars,"_median") - -# sd -izvSd <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sd, na.rm = TRUE) -colnames(izvSd)[3:ncol(izvSd)] <- paste0(vars.izvajalec$cont$vars,"_sd") - -# min -izvMin <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = min, na.rm = TRUE) -colnames(izvMin)[3:ncol(izvMin)] <- paste0(vars.izvajalec$cont$vars,"_min") -izvMin[izvMin==Inf] <- NA - -# max -izvMax <- aggregate(data.izvajalci[vars.izvajalec$cont$vars],by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = max, na.rm = TRUE) -colnames(izvMax)[3:ncol(izvMax)] <- paste0(vars.izvajalec$cont$vars,"_max") -izvMax[izvMax==-Inf] <- NA - -# N posamezne spremenljivke -izvN <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) -colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - -# N anket -izvNanket <- aggregate(data.izvajalci$veljavna,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNanket)[3] <- "N_anket" - -# N vseh odgovorov -izvNanketvsiodgovori <- aggregate(data.izvajalci$veljavna.vsiodgovori,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNanketvsiodgovori)[3] <- "N_anketSkupaj" - -# N zavrnjenih anket -izvNzavrnjenih <- aggregate(data.izvajalci$zavrnjena,by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNzavrnjenih)[3] <- "N_zavrnjenih" - - -# N Lurkerjev PRED izpitom -data.izvajalci$lurker[data.izvajalci$lurker==0] <- NA -izvNLurkerji <- aggregate(as.numeric(data.izvajalci$lurker), by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")],FUN=function(x) sum(!is.na(x))) -colnames(izvNLurkerji)[3] <- "N_lurkerjev_ivz" - -# N anket: Izvajalec ni poueval -izvNipouceval <- aggregate(data.izvajalci$nipouceval,by=data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = sum) -colnames(izvNipouceval)[3] <- "Ni_pouceval" - -# Prvi kvartil Q1 -izvQ1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.25),na.rm=T) -colnames(izvQ1)[3:ncol(izvQ1)] <- paste0(vars.izvajalec$cont$vars,"_Q1") - -# Tretji kvartil -izvQ3 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.75),na.rm=T) -colnames(izvQ3)[3:ncol(izvQ3)] <- paste0(vars.izvajalec$cont$vars,"_Q3") - -# Prvi decil -izvD1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.1), type=5,na.rm=T) -colnames(izvD1)[3:ncol(izvD1)] <- paste0(vars.izvajalec$cont$vars,"_D1") - -# Deveti decil -izvD9 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("predmet.sifra","izvajalec.sifra")], FUN = quantile, probs = c(0.9), type=5,na.rm=T) -colnames(izvD9)[3:ncol(izvD9)] <- paste0(vars.izvajalec$cont$vars,"_D9") - -# Zduimo opisne statistike izvajalcev -povprecja.izvajalci <- merge(izvMean, izvSd, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvMin,by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvMax, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvN, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNanket, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNanketvsiodgovori, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNzavrnjenih, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNipouceval, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvQ1, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvQ3, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvMedian , by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvD1, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvD9, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) -povprecja.izvajalci <- merge(povprecja.izvajalci, izvNLurkerji, by = c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - - -# zdruit s ifrantom -povprecja.izvajalci <- merge(povprecja.izvajalci, sifrant, - by.x = c("izvajalec.sifra", "predmet.sifra"), - by.y = c("IDPEDAGOGA", "IDP"), all.x = TRUE, sort = FALSE) - -# write.csv2(povprecja.izvajalci, paste0("results/povprecja.izvajalci_", fakulteta, ".csv")) - - -# zakrivanje vrednosti kjer ni dovolj enot -premalo <- povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_sd")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_min")][premalo] <- NA -povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_max")][premalo] <- NA - - -# Kjer je negativno tevilo pomeni, da gre za ve vpisanih tudentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.izvajalci$ST_STUD <- ifelse(povprecja.izvajalci$ST_STUD < as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih), - as.numeric(povprecja.izvajalci$N_anket) + as.numeric(povprecja.izvajalci$N_zavrnjenih),povprecja.izvajalci$ST_STUD) - -# povpreje vseh komponent izvajalca -povprecja.izvajalci$izvajalec.ocena.SKUPAJ <- rowMeans(povprecja.izvajalci[paste0(vars.izvajalec$cont$vars,"_mean")], na.rm = T) - -# % sodelujocih -povprecja.izvajalci$sodelujocih.pct <- povprecja.izvajalci$N_anket / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % zavrnjenih -povprecja.izvajalci$zavrnjenih.pct <- povprecja.izvajalci$N_zavrnjenih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -# % Ni pouceval -povprecja.izvajalci$nipouceval.pct <- povprecja.izvajalci$Ni_pouceval / as.numeric(povprecja.izvajalci$ST_STUD) * 100 - -## N in % neodzivnih -#intersect(as, povprecja.izvajalci$ST_STUD) -povprecja.izvajalci$N_neodzivnih <- as.numeric(povprecja.izvajalci$ST_STUD) - povprecja.izvajalci$N_anketSkupaj - povprecja.izvajalci$N_zavrnjenih -povprecja.izvajalci$neodzivnih.pct <- povprecja.izvajalci$N_neodzivnih / as.numeric(povprecja.izvajalci$ST_STUD) * 100 -## //IZVAJALCI// ## - -############## -## PREDMETI ## -############## -# povpreja -predMean <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN = mean, na.rm = TRUE) -colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - -# Mediane -predMedian <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN = median, na.rm = TRUE) -colnames(predMedian)[2:ncol(predMedian)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_median") - -# sd -predSd <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN = sd, na.rm = TRUE) -colnames(predSd)[2:ncol(predSd)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_sd") - -# min -predMin <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars)], by = data.predmeti["predmet.sifra"], FUN = min, na.rm = TRUE) -colnames(predMin)[2:ncol(predMin)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars),"_min") -predMin[predMin==Inf] <- NA - -# max -predMax <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars)], by = data.predmeti["predmet.sifra"], FUN = max, na.rm = TRUE) -colnames(predMax)[2:ncol(predMax)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars),"_max") -predMax[predMax==-Inf] <- NA - -# N posamezne spremenljivke -predN <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti["predmet.sifra"], FUN=function(x) sum(!is.na(x))) -colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - -# N answering before and after exam -predNanket <- aggregate(data.predmeti$veljavna, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNanket)[2] <- "N_anket" -predNanket_po_izpitu <- aggregate(data.predmeti$veljavna_po_izpitu, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - -# N didn't want to answer before and after exam -predNzavrnjenih <- aggregate(data.predmeti$zavrnjena, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih)[2] <- "N_zavrnjenih" - -# N Lurkerjev PRED izpitom -data.predmeti$lurker[data.predmeti$lurker==0] <- NA -predNLurkerji <- aggregate(as.numeric(data.predmeti$lurker), by = data.predmeti["predmet.sifra"],FUN=function(x) sum(!is.na(x))) -colnames(predNLurkerji)[2] <- "N_lurkerjev_pred" - - -predNzavrnjenih_po_izpitu <- aggregate(data.predmeti$zavrnjena_po_izpitu, by = data.predmeti["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih_po_izpitu)[2] <- "N_zavrnjenih_po_izpitu" - -# razporejanje ocen za kreditne toke (n & %) # Ustreznost KT -krediti_razporejanje_n <- table(data.predmeti$predmet.sifra, data.predmeti$predmet.ocena.krediti) -krediti_razporejanje_pct <- prop.table(krediti_razporejanje_n, 1) * 100 -if (!is.null(dimnames(krediti_razporejanje_n)[[2]])) { - colnames(krediti_razporejanje_n) <- paste0("krediti_razporejanje_n_", colnames(krediti_razporejanje_n)) - colnames(krediti_razporejanje_pct) <- paste0("krediti_razporejanje_pct_", colnames(krediti_razporejanje_pct)) - krediti_razporejanje_n <- cbind(as.data.frame.matrix(krediti_razporejanje_n), predmet.sifra=rownames(krediti_razporejanje_n)) - krediti_razporejanje_pct <- cbind(as.data.frame.matrix(krediti_razporejanje_pct), predmet.sifra=rownames(krediti_razporejanje_pct)) -} else {krediti_razporejanje_n <- NULL -krediti_razporejanje_pct <- NULL} - -# razporejanje ocen za kompetence1 (n & %) -kompetence1_razporejanje_n <- table(data.predmeti$predmet.sifra, data.predmeti$predmet.ocena.kompetence1) -kompetence1_razporejanje_pct <- prop.table(kompetence1_razporejanje_n, 1) * 100 -if (!is.null(dimnames(kompetence1_razporejanje_n)[[2]])) { - colnames(kompetence1_razporejanje_n) <- paste0("kompetence1_razporejanje_n_", colnames(kompetence1_razporejanje_n)) - colnames(kompetence1_razporejanje_pct) <- paste0("kompetence1_razporejanje_pct_", colnames(kompetence1_razporejanje_pct)) - kompetence1_razporejanje_n <- cbind(as.data.frame.matrix(kompetence1_razporejanje_n), predmet.sifra=rownames(kompetence1_razporejanje_n)) - kompetence1_razporejanje_pct <- cbind(as.data.frame.matrix(kompetence1_razporejanje_pct), predmet.sifra=rownames(kompetence1_razporejanje_pct)) -} else {kompetence1_razporejanje_n <- NULL -kompetence1_razporejanje_pct <- NULL} - - -# Prvi kvartil -predQ1 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.25),na.rm=T) -colnames(predQ1)[2:ncol(predQ1)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_Q1") - -# Tretji kvartil -predQ3 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.75),na.rm=T) -colnames(predQ3)[2:ncol(predQ3)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_Q3") - -# Prvi decil -predD1 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.1), type=5,na.rm=T) -colnames(predD1)[2:ncol(predD1)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_D1") - -# Deveti decil -predD9 <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["predmet.sifra"], FUN = quantile, probs = c(0.9), type=5,na.rm=T) -colnames(predD9)[2:ncol(predD9)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_D9") - - -# Zdruimo izraunane statistike za predmete -povprecja.predmeti <- merge(predMean, predSd, by="predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predMin, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predMax, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predQ1, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predQ3, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predMedian, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predD1, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predD9, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNLurkerji, by = "predmet.sifra", all = TRUE, sort = FALSE) - - - - -# e spremenljivka krediti_razporejanje_n ni NULL, jo zdruimo v popvrecja.predmeti sicer ne. -if (!is.null(krediti_razporejanje_n)) { - povprecja.predmeti <- merge(povprecja.predmeti, krediti_razporejanje_n, by = "predmet.sifra", all = TRUE, sort = FALSE) - povprecja.predmeti <- merge(povprecja.predmeti, krediti_razporejanje_pct, by = "predmet.sifra", all = TRUE, sort = FALSE) -} -if (!is.null(kompetence1_razporejanje_n)) { - povprecja.predmeti <- merge(povprecja.predmeti, kompetence1_razporejanje_n, by = "predmet.sifra", all = TRUE, sort = FALSE) - povprecja.predmeti <- merge(povprecja.predmeti, kompetence1_razporejanje_pct, by = "predmet.sifra", all = TRUE, sort = FALSE) -} - -povprecja.predmeti <- merge(povprecja.predmeti, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNzavrnjenih, by = "predmet.sifra", all = TRUE, sort = FALSE) -povprecja.predmeti <- merge(povprecja.predmeti, predNzavrnjenih_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - -# zdruit s ifrantom -povprecja.predmeti <- merge(povprecja.predmeti, unique(sifrant[!(colnames(sifrant) %in% c("IDPEDAGOGA", "NAZIV.PEDAGOGA", "ST_KT", "ST_UR", "NOSILEC"))]), - by.x = "predmet.sifra", by.y = "IDP", all.x = TRUE, sort = FALSE) - - -# write.csv2(povprecja.predmeti, paste0("results/povprecja.predmeti_", fakulteta, ".csv")) - -# zakrivanje vrednosti kjer ni dovolj enot -premalo <- povprecja.predmeti[paste0(vars.predmet$cont$vars,"_N")] < minEnot -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_mean")][premalo] <- NA -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_sd")][premalo] <- NA -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_min")][premalo] <- NA -povprecja.predmeti[paste0(vars.predmet$cont$vars,"_max")][premalo] <- NA -# e za kredite -premalo <- povprecja.predmeti[paste0("predmet.ocena.krediti_N")] < minEnot -povprecja.predmeti["predmet.ocena.krediti_mean"][premalo] <- NA - - -# e so manjkajoe vrednosti (1:5) in eden izmed stolpcev od 1:5 manjka, poglej kateri manjka ga definiraj in mu pripii vrednost 0. -# Manjkajoe vrednosti nastanejo, ker gre za vpraanje na lestvici od 1:5, in npr. vrednost 1 ni oznail nihe -# Definirane stolpce od 1:5 potrebujemo pri poroilu za izvajalca, in sicer pri generiranju tabel: poroilo za izvajalca -# Glej npr tabelo: Frekvenna porazdelitev za tevilo porabljenih ur* (anketa PO izpitu) -if (any(paste0("krediti_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # povprecja.predmeti = data.frame - missing <- paste0("krediti_razporejanje_n_",1:5)[paste0("krediti_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0, nrow(povprecja.predmeti)) - } -} - -# e je tevilo odogovorov manje od 4, mu pripiemo NA -povprecja.predmeti[paste0("krediti_razporejanje_n_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - -# e so manjkajoe vrednosti in eden izmed stolpcev od 1:5 manjka, poglej kateri manjka in ga definiraj -if (any(paste0("krediti_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # x = data.frame - missing <- paste0("krediti_razporejanje_pct_",1:5)[paste0("krediti_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0,nrow(povprecja.predmeti)) - } -} -povprecja.predmeti[paste0("krediti_razporejanje_pct_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - -# In za kompetence -premalo <- povprecja.predmeti[paste0("predmet.ocena.kompetence1_N")] < minEnot -povprecja.predmeti["predmet.ocena.kompetence1_mean"][premalo] <- NA - - -if (any(paste0("kompetence1_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # x = data.frame - missing <- paste0("kompetence1_razporejanje_n_",1:5)[paste0("kompetence1_razporejanje_n_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0,nrow(povprecja.predmeti)) - } -} -povprecja.predmeti[paste0("kompetence1_razporejanje_n_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - - -# e so manjkajoe vrednosti in eden izmed stolpcev od 1:5 manjka, poglej kateri manjka in ga definiraj -if (any(paste0("kompetence1_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti)==FALSE)) { - # x = data.frame - missing <- paste0("kompetence1_razporejanje_pct_",1:5)[paste0("kompetence1_razporejanje_pct_", 1:5) %in% colnames(povprecja.predmeti) == FALSE] - res <- list() - for(i in missing){ - povprecja.predmeti[[i]] <- rep(0,nrow(povprecja.predmeti)) - } -} -povprecja.predmeti[paste0("kompetence1_razporejanje_pct_", 1:5)][cbind(premalo,premalo,premalo,premalo,premalo)] <- NA - -# average of components - all, before, after exam -povprecja.predmeti$predmet.ocena.SKUPAJ <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$vars,"_mean")], na.rm = T) -povprecja.predmeti$predmet.ocena.SKUPAJ.pred <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$pred,"_mean")], na.rm = T) -# Ker je v NAKETI PO IPZITU komponenta "kompetence" merjena na drugani lestvici od komponent:Vsebine, Naloge, Ocenjevanje, je ne upotevamo -# Pri izraunu skupnega povpreja in zato je skupno povpreje sestavljeno iz vseh spremenljivk - 1 oz. vars.predmet$cont$po[-1] -povprecja.predmeti$predmet.ocena.SKUPAJ.po <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$po[-1],"_mean")], na.rm = T) -povprecja.predmeti$predmet.ocena.SKUPAJ.praksa <- rowMeans(povprecja.predmeti[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - -# tevilo tudentov pri posameznem predmetu: Spremenimo iz character v numeric -povprecja.predmeti$ST_STUD <- as.numeric(povprecja.predmeti$ST_STUD) - -# Kjer je negativno tevilo pomeni, da gre za ve vpisanih tudentov, kot jih je v bazi oz spremenljivki ST_STUD -povprecja.predmeti$ST_STUD <- ifelse(povprecja.predmeti$ST_STUD < as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), - as.numeric(povprecja.predmeti$N_anket) + as.numeric(povprecja.predmeti$N_zavrnjenih), povprecja.predmeti$ST_STUD) - -# % odgovora -povprecja.predmeti$sodelujocih.pct <- povprecja.predmeti$N_anket / povprecja.predmeti$ST_STUD * 100 -povprecja.predmeti$sodelujocih.pct_po_izpitu <- povprecja.predmeti$N_anket_po_izpitu / povprecja.predmeti$ST_STUD * 100 -# % zavrnjenih -povprecja.predmeti$zavrnjenih.pct <- povprecja.predmeti$N_zavrnjenih / povprecja.predmeti$ST_STUD * 100 -povprecja.predmeti$zavrnjenih.pct_po_izpitu <- povprecja.predmeti$N_zavrnjenih_po_izpitu / povprecja.predmeti$ST_STUD * 100 -# N in % neodzivnih (ni pristopilo k anketi) -povprecja.predmeti$N_neodzivnih <- povprecja.predmeti$ST_STUD - povprecja.predmeti$N_anket - povprecja.predmeti$N_zavrnjenih -povprecja.predmeti$neodzivnih.pct <- povprecja.predmeti$N_neodzivnih / povprecja.predmeti$ST_STUD * 100 -# Po izpitu -povprecja.predmeti$N_neodzivnih_po_izpitu <- povprecja.predmeti$ST_STUD - povprecja.predmeti$N_anket_po_izpitu - povprecja.predmeti$N_zavrnjenih_po_izpitu -povprecja.predmeti$neodzivnih.pct_po_izpitu <- povprecja.predmeti$N_neodzivnih_po_izpitu / povprecja.predmeti$ST_STUD * 100 -## //average of components - all, before, after exam// ## - -# preurejeno ime predmeta -povprecja.predmeti$ime.predmeta <- povprecja.predmeti$PREDMET - -# IZREDNi TUDIJ -izredni <- povprecja.predmeti$NACIN=="2" # e je izredni predmet mora biti to v oklepaju -izredni <- izredni[!is.na(izredni) ] -povprecja.predmeti$ime.predmeta[izredni] <- paste(povprecja.predmeti$ime.predmeta[izredni], "(izredna izvedba)") -# //IZREDNi TUDIJ// # - -# nova imena predmetov e k povprejem izvajalcev[] -povprecja.izvajalci <- merge(povprecja.izvajalci, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], by = "predmet.sifra", sort = FALSE) - -df_dups <- povprecja.izvajalci[c("izvajalec.sifra","predmet.sifra")] - -povprecja.izvajalci <- povprecja.izvajalci[!duplicated(df_dups),] - - -######################## -## TUDIJSKI PROGRAMI ## -######################## -# tevilo ocen po programih (za poroila in povpreja po programih) -programi <- unique(data.predmeti[c("student.program.sifra", "student.program.ime")]) -programi <- subset(programi, !is.na(student.program.sifra)) -programi <- subset(programi, student.program.ime != "NA") -programi <- programi[order(programi$student.program.ime), ] - -## izvajalec: tudijski program ## -povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.izv.temp <- subset(data.izvajalci, veljavna) -programi.studentov <- as.data.frame.matrix(table(paste(data.izv.temp$izvajalec.sifra, data.izv.temp$predmet.sifra, sep = "_"), data.izv.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.izvajalci[match(rownames(programi.studentov), paste(povprecja.izvajalci$izvajalec.sifra, povprecja.izvajalci$predmet.sifra, sep = "_")), names(programi.studentov)] <- programi.studentov - -## predmet: tudijski program ## -povprecja.predmeti[paste0("program_studenta_", programi$student.program.sifra)] <- 0 -data.prog.temp <- subset(data.predmeti, veljavna) -programi.studentov <- as.data.frame.matrix(table(data.prog.temp$predmet.sifra, data.prog.temp$student.program.sifra)) -names(programi.studentov) <- paste0("program_studenta_", names(programi.studentov)) -povprecja.predmeti[match(rownames(programi.studentov), povprecja.predmeti$predmet.sifra), names(programi.studentov)] <- programi.studentov - -# sort by name -povprecja.izvajalci <- povprecja.izvajalci[order(povprecja.izvajalci$NAZIV.PEDAGOGA, povprecja.izvajalci$PREDMET), ] -povprecja.predmeti <- povprecja.predmeti[order(povprecja.predmeti$PREDMET),] - -# Uporabimo, ko delamo izpis za TRENDE ali za HABILITACIJSKO KOMISIJO -#write.csv2(povprecja.izvajalci, paste0("results/povprecja.izvajalci-minEnot_", fakulteta, ".csv") -#write.csv2(povprecja.predmeti, paste0("results/povprecja.predmeti-minEnot_", fakulteta, ".csv") - -# are there any courses with too many answers in the database according to sifrant.xlsx -premalo_vpisanih <- povprecja.predmeti$N_neodzivnih < 0 -premalo_vpisanih <- !is.na(premalo_vpisanih) -if (any(premalo_vpisanih)) { - warning(c("Some courses have more students in the database than number of students that are attending the course according to sifrant.xlsx", - paste("\n",povprecja.predmeti$predmet.sifra[premalo_vpisanih], povprecja.predmeti$PREDMET[premalo_vpisanih],paste0("(",abs(povprecja.predmeti$N_neodzivnih[premalo_vpisanih]), " more students)")))) -} - -# skupna povpreja izvajalcev (povpreja ocen pri vseh predmetih) -povprecja.izvajalci.skupaj <- aggregate(povprecja.izvajalci[, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct", paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by = povprecja.izvajalci[,"izvajalec.sifra", drop = FALSE], - FUN = mean, na.rm = TRUE) - -# number of evaluations from different programmes -vsota.ocen.programov <- aggregate(povprecja.izvajalci[paste0("program_studenta_", programi$student.program.sifra)], - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], FUN = sum, na.rm = TRUE) -povprecja.izvajalci.skupaj <- merge(povprecja.izvajalci.skupaj, vsota.ocen.programov, by = "izvajalec.sifra", all.x = TRUE) - -# number of courses with at least minimun nuber of answers -st.ocen <- aggregate(list(st.ocen=povprecja.izvajalci$N_anket >= minEnot), - by = povprecja.izvajalci[, "izvajalec.sifra", drop = FALSE], FUN = sum, na.rm = TRUE) -povprecja.izvajalci.skupaj <- merge(povprecja.izvajalci.skupaj, st.ocen, by = "izvajalec.sifra", all.x = TRUE) - -# e imena izvajalcev -povprecja.izvajalci.skupaj <- merge(povprecja.izvajalci.skupaj, unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]), - by = "izvajalec.sifra", all.x = TRUE) - -# da izraunamo povpreja vseh predmetov doloenega izvajalca rabimo ocene predmetov po izvajalcih (podvojene vrstice z razlinimi iframi izvajalcev) -povprecja.predmeti.vsi.izvajalci <- merge(povprecja.izvajalci[,c("izvajalec.sifra","predmet.sifra")], povprecja.predmeti, - by = "predmet.sifra", all.x = TRUE, sort = FALSE) -povprecja.predmetov.izvajalca.skupaj <- aggregate(povprecja.predmeti.vsi.izvajalci[, c("ST_STUD","N_anket","N_anket_po_izpitu", - "sodelujocih.pct","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$vars,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa", - "predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")], - by = povprecja.predmeti.vsi.izvajalci[,"izvajalec.sifra", drop = FALSE], - FUN = mean, na.rm = TRUE) -# e imena izvajalcev -povprecja.predmetov.izvajalca.skupaj <- merge(povprecja.predmetov.izvajalca.skupaj, - unique(povprecja.izvajalci[,c("izvajalec.sifra","NAZIV.PEDAGOGA")]), - by = "izvajalec.sifra", all.x = TRUE) - -# povpreja vseh izvajalecv pri vsakem predmetu -povprecja.predmet.izvajalci.skupaj <- aggregate(povprecja.izvajalci[, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")], - by = povprecja.izvajalci[,"predmet.sifra",drop = FALSE], - FUN = mean, na.rm = TRUE) -# e imena predmetov -povprecja.predmet.izvajalci.skupaj <- merge(povprecja.predmet.izvajalci.skupaj, povprecja.predmeti[,c("predmet.sifra","ime.predmeta")], - by = "predmet.sifra", all.x = TRUE) - -# sort -povprecja.izvajalci.skupaj <- povprecja.izvajalci.skupaj[order(povprecja.izvajalci.skupaj$NAZIV.PEDAGOGA),] -povprecja.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[order(povprecja.predmetov.izvajalca.skupaj$NAZIV.PEDAGOGA),] -povprecja.predmet.izvajalci.skupaj <- povprecja.predmet.izvajalci.skupaj[order(povprecja.predmet.izvajalci.skupaj$ime.predmeta),] - -#write.csv2(povprecja.izvajalci.skupaj, file='results/povprecja.izvajalci.skupaj-minEnot.csv') -#write.csv2(povprecja.predmetov.izvajalca.skupaj, file='results/povprecja.predmetov.izvajalca.skupaj-minEnot.csv') -#write.csv2(povprecja.predmet.izvajalci.skupaj, file='results/povprecja.predmet.izvajalci.skupaj-minEnot.csv') - - - - - - -################# -## Quantiles ## -################# -# for every lecturer/course -# S funkcijo kvantRang in kvantRang1 izraunamo in barvamo kvantilne range, ki se pokaejo v posameznih tabelah (glej skirpto funkcije.r) -# Kvantilni rangi za izvajalce pri predmetih (IPP) -kvantili.izvajalci <- povprecja.izvajalci[c("izvajalec.sifra","NAZIV.PEDAGOGA","predmet.sifra","ime.predmeta","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci[[var]] <- kvantRang(kvantili.izvajalci[[var]]) - -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci[[var]] <- kvantRang1(kvantili.izvajalci[[var]]) - -} -# //Kvantilni rangi za izvajalce pri predmetih (IPP)// # - - -# Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu -kvantili.predmeti <- povprecja.predmeti[c("predmet.sifra","ime.predmeta","ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu",paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa", - "predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")] -for (var in c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po", - "predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti[[var]] <- kvantRang(kvantili.predmeti[[var]]) -} - -for (var in c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct","sodelujocih.pct_po_izpitu")) { - kvantili.predmeti[[var]] <- kvantRang1(kvantili.predmeti[[var]]) - -} - -for (var in c("predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")) { - kvantili.predmeti[[var]] <- kvantRang2(kvantili.predmeti[[var]]) - -} -# //Kvantilni rangi za predmet: komponente ankete PRED in PO izpitu// # - -## lecturer averages ## -kvantili.izvajalci.skupaj <- povprecja.izvajalci.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD","N_anket", - "sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] -for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang(kvantili.izvajalci.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","sodelujocih.pct")) { - kvantili.izvajalci.skupaj[[var]] <- kvantRang1(kvantili.izvajalci.skupaj[[var]]) - -} - -kvantili.predmetov.izvajalca.skupaj <- povprecja.predmetov.izvajalca.skupaj[c("izvajalec.sifra","NAZIV.PEDAGOGA","ST_STUD", - "N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu",paste0(vars.predmet$cont$vars,"_mean"), - "predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa", - "predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")] -for (var in c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa","predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang(kvantili.predmetov.izvajalca.skupaj[[var]]) -} - -for (var in c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct","sodelujocih.pct_po_izpitu")) { - kvantili.predmetov.izvajalca.skupaj[[var]] <- kvantRang1(kvantili.predmetov.izvajalca.skupaj[[var]]) - -} - -## for table names (izpis izvajalca, programov, fakultete) ## -kvantili.izvajalci.st <- sum(kvantili.izvajalci$izvajalec.ocena.SKUPAJ != ".") # tevilo vseh ocenjenih izvajalcev fakultete - -# Glej npr izpis izvajalca, Tabela 1.1 (vrstico Povpreje FDV), -# kjer se izpie tevilo predmetov v anketi PRED izpitom -kvantili.predmeti.st.pred <- sum(kvantili.predmeti$predmet.ocena.SKUPAJ.pred != ".") # tevilo vseh ocenjenih predmetov: anketa PRED -kvantili.predmeti.st.po <- sum(kvantili.predmeti$predmet.ocena.SKUPAJ.po != ".") # tevilo vseh ocenjenih predmetov: anketa PO - -kvantili.izvajalci.skupaj.st <- sum(kvantili.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") # tevilo vseh ocenjenih IPP (izvajalcev pri) -kvantili.predmetov.izvajalca.skupaj.st.pred <- sum(kvantili.predmetov.izvajalca.skupaj$predmet.ocena.SKUPAJ.pred != ".") -kvantili.predmetov.izvajalca.skupaj.st.po <- sum(kvantili.predmetov.izvajalca.skupaj$predmet.ocena.SKUPAJ.po != ".") - -kvantili.ustreznotsKT <- sum(kvantili.predmeti$predmet.ocena.krediti_mean != ".") # tevilo vseh ocen za ustreznost KT (anketa PO) -kvantili.zadovoljstvo <- sum(kvantili.predmeti$predmet.ocena.zadovoljstvo_mean != ".") # tevilo vseh ocen za ustreznost KT (anketa PO) -## //Quantiles// ## - - -######################## -## FACULTY AVERAGES ## -######################## -# Povpreje izvajalcev -vars.izvajalec$cont$meansFDV[c(vars.izvajalec$cont$vars,"povprecje.ocen")] <- colMeans(povprecja.izvajalci[c(paste0(vars.izvajalec$cont$vars, "_mean"),"izvajalec.ocena.SKUPAJ")], na.rm = TRUE) - -# Povpreje predmetov (anketa PRED izpitom, anketa PO izpitu, tudijska praksa) -vars.predmet$cont$meansFDV[c(vars.predmet$cont$vars,"povprecje.ocen","povprecje.ocen.pred","povprecje.ocen.po","povprecje.ocen.praksa")] <- colMeans(povprecja.predmeti[c(paste0(vars.predmet$cont$vars, "_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa")], na.rm=TRUE) -# Povpreje tudijskih praks -vars.predmet$cont$FDVpraksa[c(vars.predmet$cont$praksa,"povprecje.ocen.praksa")] <- colMeans(povprecja.predmeti[c(paste0(vars.predmet$cont$praksa, "_mean"),"predmet.ocena.SKUPAJ.praksa")], na.rm = TRUE) - -# Povpreje Ustreznost KT -vars.predmet$krediti$meansFDV[c("predmet.ocena.krediti")] <- colMeans(povprecja.predmeti["predmet.ocena.krediti_mean"], na.rm = TRUE) - -# Standardni odklon za ustreznost KT -vars.predmet$krediti$meansFDV1[c("predmet.ocena.krediti.sd")] <- colMeans(povprecja.predmeti["predmet.ocena.krediti_sd"], na.rm = TRUE) -vars.predmet$krediti$pctsFDV[paste0("krediti_razporejanje_pct_", 1:5)] <- colMeans(povprecja.predmeti[paste0("krediti_razporejanje_pct_", 1:5)], na.rm = TRUE) - -# Povpreje kompetence -vars.predmet$kompetence1$meansFDV[c("predmet.ocena.kompetence1")] <- colMeans(povprecja.predmeti["predmet.ocena.kompetence1_mean"], na.rm = TRUE) - -# Standardni odklon za kompetence -vars.predmet$kompetence1$meansFDV1[c("predmet.ocena.kompetence1.sd")] <- colMeans(povprecja.predmeti["predmet.ocena.kompetence1_sd"], na.rm = TRUE) -vars.predmet$kompetence1$pctsFDV[paste0("kompetence1_razporejanje_pct_", 1:5)] <- colMeans(povprecja.predmeti[paste0("kompetence1_razporejanje_pct_", 1:5)], na.rm = TRUE) - -# response -povprecja.izvajalci[,41] <- as.numeric(povprecja.izvajalci[,41]) - -####################################################### -# Skupna Povpreja IZVAJLCEV fakultete glede na STOPNJO -####################################################### -FDVizvajalci <- rbind(skupaj = colMeans(povprecja.izvajalci[c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct")], na.rm = T), - "1" = colMeans(povprecja.izvajalci[povprecja.izvajalci$STOPNJA == 1, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct")], na.rm = T), - "2"=colMeans(povprecja.izvajalci[povprecja.izvajalci$STOPNJA == 2, c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct")], na.rm = T)) - -###################################################################################### -# Skupna Povpreja PREDMETOV fakultete glede na STOPNJO in glede na SEMESTER IZVAJANJA -###################################################################################### -FDVpredmeti <- rbind(skupaj=colMeans(povprecja.predmeti[c("ST_STUD","N_anket","N_anket_po_izpitu", - "sodelujocih.pct","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "1"=colMeans(povprecja.predmeti[povprecja.predmeti$STOPNJA == 1, - c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu","zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "2"=colMeans(povprecja.predmeti[povprecja.predmeti$STOPNJA == 2, - c("ST_STUD","N_anket","N_anket_po_izpitu", - "sodelujocih.pct","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "prvi_semester" = colMeans(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester) - [c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu","zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T), - "drugi_semester" = colMeans(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester) - [c("ST_STUD","N_anket","N_anket_po_izpitu","sodelujocih.pct", - "sodelujocih.pct_po_izpitu","zavrnjenih.pct","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct","neodzivnih.pct_po_izpitu")], na.rm = T)) -## //FACULTY AVERAGES// ## - - -##################################### -# POVPREJA PO TUDIJSKIH PROGRAMIH -##################################### -# Skupne ocene predmetov po posameznih tudijskih programih -progMeanPredm <- aggregate(data.predmeti[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ <- rowMeans(progMeanPredm[vars.predmet$cont$vars], na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ.pred <- rowMeans(progMeanPredm[vars.predmet$cont$pred], na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ.po <- rowMeans(progMeanPredm[vars.predmet$cont$po[-1]], na.rm = TRUE) -progMeanPredm$predmet.ocena.SKUPAJ.praksa <- rowMeans(progMeanPredm[vars.predmet$cont$praksa], na.rm = TRUE) - -# Skupna povpreja izvajalcav po posameznih tudijskih programih -progMeanIzv <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by=data.izvajalci["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanIzv <- cbind(progMeanIzv, izvajalec.ocena.SKUPAJ=rowMeans(progMeanIzv[vars.izvajalec$cont$vars])) - -#izraun povpreij izvajalcev za tudijske programe in insert v poroila za fakulteto -progMeanIzv.fak <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], by = data.izvajalci[c("student.program.sifra","student.program.ime")], - FUN = mean,na.rm = TRUE) -progMeanIzv.fak1 <- cbind(progMeanIzv.fak, izvajalec.ocena.SKUPAJ = rowMeans(progMeanIzv.fak[vars.izvajalec$cont$vars], na.rm = TRUE)) -# tevilo odogovorov (tevilo anket) pri posameznem tudijskem programu -st.odgovorov.fak1 <- aggregate(data.izvajalci$veljavna, by = data.izvajalci[c("student.program.sifra","student.program.ime")], FUN = sum) -colnames(st.odgovorov.fak1)[3] <- "N_anket" # Poimenujemo stolpec - -progMeanIzv.fak1 <- merge(progMeanIzv.fak1, st.odgovorov.fak1, by = c("student.program.sifra","student.program.ime"), - all = TRUE, sort = FALSE) -## //povpreja programov// ## - - -## PODATKI ZA TABELE, KI SE DODAJO K "ANALIZI IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH" ## -test1 <- aggregate(data.izvajalci[vars.izvajalec$cont$vars], - by = data.izvajalci[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test2 <- cbind(test1, izvajalec.ocena.SKUPAJ=rowMeans(test1[vars.izvajalec$cont$vars], na.rm = TRUE)) - - -#Zaokroi vrednosti za izpis programov pri IZVAJALCU -round_df <- function(x, digits) { - # round all numeric variables - # x: data frame - # digits: number of digits to round - numeric_columns <- sapply(x, class) == 'numeric' - x[numeric_columns] <- round(x[numeric_columns], digits) - x -} -test2 <- round_df(test2, 1) -## //PODATKI ZA TABELE// ## - - -## PODATKI ZA TABELE, KI SE DODAJO K "Analiza predmeta po programih in letnikih" ## -vars.predmet$cont$vars1 <- vars.predmet$cont$vars[-c(12,13,14,15,16,17,18,19,20)] -vars.predmet.vars <- vars.predmet$cont$vars1[-c(8,9,10,11)] -test.pred <- aggregate(data.predmeti[vars.predmet.vars], - by = data.predmeti[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test.pred <- cbind(test.pred, predmet.ocena.SKUPAJ = rowMeans(test.pred[vars.predmet.vars], na.rm = TRUE)) - -#Zaokroi vrednosti za izpis programov pri PREDMETU -test.pred <- round_df(test.pred, 1) -## // PODATKI ZA TABELE// ## - - -# ZARADI UMETNO GENERIRANIH IFER IZVAJALCEV SE ZA ANKETO PO ZA TUDIJSKE PROGRAME NISO PRAVILNO IZPISALA POVPREJA IN TEVILO ODGOVOROV -# Zato smo komponente za anketo PO izpitu analizirali iz prvotne baze (anketa po izpitu) namesto iz baze "data.predmeti" -# Tako smo bazo data_po_izpitu uporabili le v primerih, ko se povpreja navezujejo na tudijske programe za anketo PO IZPITU -data.predmet.po <- data_po_izpitu - -# Opredelimo imena spremenljivk oz komponent v ankeit PO izpitu -lokacije.predmet.po <- lokacije.predmet[c(1:1,3:3,13:nrow(lokacije.predmet)), 1, drop = FALSE] - - -## PODATKI ZA PREDMETE PO IZPITU ## -# Ponovimo, kar smo naredili e na zaetku a tokrat le na podatkih PO izpitu. -data.predmeti.PO <- data.predmet.po[c(lokacije.predmet.po[, 1], "idprog","letnik","program", "lurker")] # Zdruimo spremenljivke v lokacije.predmet[, 1] in ifro tudentov -names(data.predmeti.PO) <- c(rownames(lokacije.predmet.po), "ID_vrsta_studija","Letnik","Naziv","lurker") -someMissVars.PO <- rownames(navP[!is.na(navP$missings.table), ]) -someMissVars.PO <- someMissVars.PO[8:20] # 8:20 so spremenljivke (komponente), ki se nanaajo na anketo po izpitu -data.predmeti.PO.someMiss <- data.predmeti.PO[c("predmet.sifra", someMissVars.PO)] -# setting missing values and keeping some (defined in navodila.xlsx in column missing.table) for frequency tables -for (var in c(vars.predmet$cont$vars[8:20], - vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - miss <- unlist(strsplit(navodila[var,]$missings, ",")) - data.predmeti.PO[, var][data.predmeti.PO[, var] %in% miss] <- NA - if (var %in% c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)) { - data.predmeti.PO[, var] <- as.numeric(data.predmeti.PO[, var]) - } - if (var %in% someMissVars.PO) { - someMissVals <- - matrix(unlist(strsplit(unlist(strsplit(navodila[var,]$missings.table, ",")), "=")), ncol = 2, byrow = TRUE) - miss <- miss[!(miss %in% someMissVals[, 1])] - data.predmeti.PO.someMiss[, var][data.predmeti.PO.someMiss[, var] %in% miss] <- NA - for (missVar in 1:nrow(someMissVals)) { - data.predmeti.PO.someMiss[, var][data.predmeti.PO.someMiss[, var] == someMissVals[missVar, 1] & - !is.na(data.predmeti.PO.someMiss[, var])] <- someMissVals[missVar, 2] - } - } -} -# all values with some miss for tables -predmet.someMiss.PO <- sort(unique(as.vector(as.matrix(data.predmeti.PO.someMiss[, vars.predmet$cont$vars[8:20]])))) -if(any(predmet.someMiss.PO=="")) { - predmet.someMiss.PO <- predmet.someMiss.PO[predmet.someMiss.PO != ""] - -} - -data.predmeti.PO <- data.predmeti.PO[order(data.predmeti.PO$predmet.sifra),] -# ali je anketa veljavna za predmet; ali je student ni izpolnjeval (je pa zael anketo) -data.predmeti.PO$veljavna_po_izpitu <- data.predmeti.PO$predmet.izpolnjeval.po == -1 & !is.na(data.predmeti.PO$predmet.izpolnjeval.po) -data.predmeti.PO$zavrnjena_po_izpitu <- (!data.predmeti.PO$veljavna_po_izpitu & !is.na(data.predmeti.PO$predmet.izpolnjeval.po)) -# adding student data (year and programme) -data.predmeti.PO <- merge(data.predmeti.PO, programi.imena[,c("ID", "Naziv")], by.x="ID_vrsta_studija", by.y="ID", all.x=TRUE, sort=FALSE) -names(data.predmeti.PO)[match(c("ID_vrsta_studija","Letnik","Naziv.y"), names(data.predmeti.PO))] <- c("student.program.sifra","student.letnik","student.program.ime") - -############## -## PREDMETI ## -############## -# Izreaunamo povpreja predmetov e za anketo PO izpitu -# povpreja -predMean <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = mean, na.rm = TRUE) -colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - -# Mediane -predMedian <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = median, na.rm = TRUE) -colnames(predMedian)[2:ncol(predMedian)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_median") - -# sd -predSd <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = sd, na.rm = TRUE) -colnames(predSd)[2:ncol(predSd)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_sd") - -# min -predMin <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars)], by = data.predmeti.PO["predmet.sifra"], FUN = min, na.rm = TRUE) -colnames(predMin)[2:ncol(predMin)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars),"_min") -predMin[predMin==Inf] <- NA - -# max -predMax <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars)], - by = data.predmeti.PO["predmet.sifra"], FUN = max, na.rm = TRUE) -colnames(predMax)[2:ncol(predMax)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars),"_max") -predMax[predMax==-Inf] <- NA - -# N posamezne spremenljivke -predN <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti.PO["predmet.sifra"], FUN=function(x) sum(!is.na(x))) -colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - -# N answering before and after exam -predNanket <- aggregate(data.predmeti.PO$veljavna, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNanket)[2] <- "N_anket" -predNanket_po_izpitu <- aggregate(data.predmeti.PO$veljavna_po_izpitu, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - -# N didn't want to answer before and after exam -predNzavrnjenih <- aggregate(data.predmeti.PO$zavrnjena, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih)[2] <- "N_zavrnjenih" -predNzavrnjenih_po_izpitu <- aggregate(data.predmeti.PO$zavrnjena_po_izpitu, by = data.predmeti.PO["predmet.sifra"], FUN = sum) -colnames(predNzavrnjenih_po_izpitu)[2] <- "N_zavrnjenih_po_izpitu" - - -# N Lurkerjev PRED izpitom -data.predmeti.PO$lurker[data.predmeti.PO$lurker==0] <- NA -poNLurkerji <- aggregate(as.numeric(data.predmeti.PO$lurker), by = data.predmeti.PO["predmet.sifra"],FUN=function(x) sum(!is.na(x))) -colnames(poNLurkerji)[2] <- "N_lurkerjev_po" - - -programi.PO <- unique(data.predmeti.PO[c("student.program.sifra", "student.program.ime")]) -programi.PO <- subset(programi.PO, !is.na(student.program.sifra)) -programi.PO <- subset(programi.PO, student.program.ime != "NA") -programi.PO <- programi.PO[order(programi.PO$student.program.ime), ] - -## TUDIJSKI PROGRAMI (ANKETA PO IZPTTU) ## -# e za aneto PO izpitu izraunamo povpreja tudijskih programov -# Skupne ocene predmetov po posameznih tudijskih programih -progMeanPredm.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.predmeti.PO["student.program.sifra"], FUN = mean, na.rm = TRUE) -progMeanPredm.PO$predmet.ocena.SKUPAJ.po <- rowMeans(progMeanPredm.PO[vars.predmet$cont$po[-1]], na.rm = TRUE) -progMeanPredm.PO$predmet.ocena.SKUPAJ.praksa <- rowMeans(progMeanPredm.PO[vars.predmet$cont$praksa], na.rm = TRUE) - - -## course averages by programme: ANKETA PO IZPITU ## -povprecja.predmeti.programi.PO <- NULL -povprecja.predmeti.programi.PO.brez.cenzure.PO <- NULL # Zapiemo vsa povpreja oz. vse ocene, tudi tista, ki imajo 4 odgovore ali manj -## course averages by programme ## -for (program in programi.PO$student.program.sifra) { - # povpreja - data.program <- subset(data.predmeti.PO, student.program.sifra == program) - predMean <- aggregate(data.program[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.program["predmet.sifra"], FUN = mean, na.rm = TRUE) - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.program[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.program["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.program$veljavna, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.program$veljavna_po_izpitu, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - - predmeti.program <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.programi.PO.brez.cenzure.PO <- rbind(povprecja.predmeti.programi.PO.brez.cenzure.PO,cbind(predmeti.program, - program.studentov = program, - program.studentov.ime = programi.PO[programi.PO$student.program.sifra == program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.program[c(paste0(vars.predmet$cont$vars[8:20],"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.program[c(paste0(vars.predmet$cont$vars[8:20],"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - - predmeti.program$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.program[paste0(vars.predmet$cont$po[-1],"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.program[paste0(vars.predmet$cont$praksa,"_mean")],na.rm=T) - - povprecja.predmeti.programi.PO <- rbind(povprecja.predmeti.programi.PO, cbind(predmeti.program, program.studentov = program, - program.studentov.ime = programi.PO[programi.PO$student.program.sifra==program, - "student.program.ime"])) -} -povprecja.predmeti.programi.PO <- merge(povprecja.predmeti.programi.PO, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.programi.PO.brez.cenzure.PO <- merge(povprecja.predmeti.programi.PO.brez.cenzure.PO, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by programme// ## - - -## course averages by programme ## -povprecja.predmeti.programi <- NULL -povprecja.predmeti.programi.brez.cenzure <- NULL # Zapiemo vsa povpreja oz. vse ocene, tudi tista, ki imajo 4 odgovore ali manj -## course averages by programme ## -for (program in programi$student.program.sifra) { - # povpreja - data.program <- subset(data.predmeti, student.program.sifra == program) - - predMean <- aggregate(data.program[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program["predmet.sifra"], FUN = mean, na.rm = TRUE) - # predMean.po <- aggregate(data.program.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program.po["predmet.sifra"], FUN = mean, na.rm = TRUE) -# predMean <- merge(predMean,predMean.po[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predMean <- predMean[, -grep(".x", colnames(predMean))] - #colnames(predMean) <- gsub("\\.y", "", colnames(predMean)) - #predMean <- predMean[c(1:8,18:21,9:17,22:23)] - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.program[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - # predNpo <- aggregate(data.program.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.program.po["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - #predN <- merge(predN,predNpo[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predN <- predN[, -grep(".x", colnames(predN))] - #colnames(predN) <- gsub("\\.y", "", colnames(predN)) - #predN <- predN[c(1:8,18:21,9:17,22:23)] - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.program$veljavna, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.program$veljavna_po_izpitu, by = data.program["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - predmeti.program <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.program <- merge(predmeti.program, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.programi.brez.cenzure <- rbind(povprecja.predmeti.programi.brez.cenzure,cbind(predmeti.program, - program.studentov = program, - program.studentov.ime = programi.PO[programi.PO$student.program.sifra == program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.program[c(paste0(vars.predmet$cont$vars,"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.program[c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.program$predmet.ocena.SKUPAJ <- rowMeans(predmeti.program[paste0(vars.predmet$cont$vars,"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.pred <- rowMeans(predmeti.program[paste0(vars.predmet$cont$pred,"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.program[paste0(vars.predmet$cont$po[-1],"_mean")],na.rm=T) - predmeti.program$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.program[paste0(vars.predmet$cont$praksa,"_mean")],na.rm=T) - - povprecja.predmeti.programi <- rbind(povprecja.predmeti.programi, cbind(predmeti.program, program.studentov = program, - program.studentov.ime = programi.PO[programi.PO$student.program.sifra==program, - "student.program.ime"])) -} -povprecja.predmeti.programi <- merge(povprecja.predmeti.programi, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.programi.brez.cenzure <- merge(povprecja.predmeti.programi.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by programme// ## - - - - -## course averages by student's year ANKETA PO IZPITU ## -povprecja.predmeti.letniki.PO <- NULL -povprecja.predmeti.letniki.PO.brez.cenzure.PO <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## course averages by students' year ## -for (letnik in unique(sort(data.predmeti.PO$student.letnik))) { - # povpreja - data.letnik <- subset(data.predmeti.PO, student.letnik == letnik) - predMean <- aggregate(data.letnik[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.letnik["predmet.sifra"], - FUN=mean, na.rm=TRUE) - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.letnik[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by=data.letnik["predmet.sifra"], FUN=function(x) sum(!is.na(x))) - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.letnik$veljavna, by = data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.letnik$veljavna_po_izpitu, by=data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - - predmeti.letnik <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.letniki.PO.brez.cenzure.PO <- rbind(povprecja.predmeti.letniki.PO.brez.cenzure.PO, cbind(predmeti.letnik, letnik.studentov = letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.letnik[c(paste0(vars.predmet$cont$vars[8:20],"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.letnik[c(paste0(vars.predmet$cont$vars[8:20],"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.letnik$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$po[-1],"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - - povprecja.predmeti.letniki.PO <- rbind(povprecja.predmeti.letniki.PO, cbind(predmeti.letnik, letnik.studentov=letnik)) -} -povprecja.predmeti.letniki.PO <- merge(povprecja.predmeti.letniki.PO, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.letniki.PO.brez.cenzure.PO <- merge(povprecja.predmeti.letniki.PO.brez.cenzure.PO, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by students' year// ## - - - -## course averages by student's year ## -povprecja.predmeti.letniki <- NULL -povprecja.predmeti.letniki.brez.cenzure <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## course averages by students' year ## -for (letnik in unique(sort(data.predmeti$student.letnik))) { - # povpreja - data.letnik <- subset(data.predmeti, student.letnik == letnik) - # data.letnik.po <- subset(data.predmeti.PO, student.program.sifra == program) - - predMean <- aggregate(data.letnik[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by = data.letnik["predmet.sifra"], FUN=mean, na.rm=TRUE) - #predMean.po <- aggregate(data.letnik.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.letnik.po["predmet.sifra"], FUN = mean, na.rm = TRUE) - #predMean <- merge(predMean,predMean.po[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predMean <- predMean[, -grep(".x", colnames(predMean))] - #colnames(predMean) <- gsub("\\.y", "", colnames(predMean)) - #predMean <- predMean[c(1:8,18:21,9:17,22:23)] - colnames(predMean)[2:ncol(predMean)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_mean") - # N posamezne spremenljivke - predN <- aggregate(data.letnik[c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], - by=data.letnik["predmet.sifra"], FUN=function(x) sum(!is.na(x))) - #predNpo <- aggregate(data.letnik.po[c(vars.predmet$cont$vars[8:20],vars.predmet$krediti$vars,vars.predmet$kompetence1$vars)], by = data.letnik.po["predmet.sifra"], FUN = function(x) sum(!is.na(x))) - #predN <- merge(predN,predNpo[c("predmet.sifra","predmet.ocena.kompetence","predmet.ocena.vsebine", - # "predmet.ocena.naloge","predmet.ocena.kriteriji", - # "predmet.ocena.krediti","predmet.ocena.kompetence1")], by="predmet.sifra", all=T, sort=F) - #predN <- predN[, -grep(".x", colnames(predN))] - #colnames(predN) <- gsub("\\.y", "", colnames(predN)) - #predN <- predN[c(1:8,18:21,9:17,22:23)] - colnames(predN)[2:ncol(predN)] <- paste0(c(vars.predmet$cont$vars,vars.predmet$krediti$vars,vars.predmet$kompetence1$vars),"_N") - # N answering before and after exam - predNanket <- aggregate(data.letnik$veljavna, by = data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket)[2] <- "N_anket" - predNanket_po_izpitu <- aggregate(data.letnik$veljavna_po_izpitu, by=data.letnik["predmet.sifra"], FUN = sum) - colnames(predNanket_po_izpitu)[2] <- "N_anket_po_izpitu" - - predmeti.letnik <- merge(predMean, predN, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket, by = "predmet.sifra", all = TRUE, sort = FALSE) - predmeti.letnik <- merge(predmeti.letnik, predNanket_po_izpitu, by = "predmet.sifra", all = TRUE, sort = FALSE) - - povprecja.predmeti.letniki.brez.cenzure <- rbind(povprecja.predmeti.letniki.brez.cenzure, cbind(predmeti.letnik, letnik.studentov = letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- predmeti.letnik[c(paste0(vars.predmet$cont$vars,"_N"),"predmet.ocena.krediti_N","predmet.ocena.kompetence1_N")] < minEnot - predmeti.letnik[c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")][premalo] <- NA - - - # average of components - all, before, after exam - predmeti.letnik$predmet.ocena.SKUPAJ <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$vars,"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.pred <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$pred,"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.po <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$po[-1],"_mean")], na.rm = T) - predmeti.letnik$predmet.ocena.SKUPAJ.praksa <- rowMeans(predmeti.letnik[paste0(vars.predmet$cont$praksa,"_mean")], na.rm = T) - - povprecja.predmeti.letniki <- rbind(povprecja.predmeti.letniki, cbind(predmeti.letnik, letnik.studentov=letnik)) -} -povprecja.predmeti.letniki <- merge(povprecja.predmeti.letniki, povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -povprecja.predmeti.letniki.brez.cenzure <- merge(povprecja.predmeti.letniki.brez.cenzure, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA")], - by = "predmet.sifra", all.x = T) -## //course averages by students' year// ## - -df_dups2 <- povprecja.izvajalci.letniki.brez.cenzure[c("izvajalec.sifra","predmet.sifra")] -povprecja.izvajalci.letniki.brez.cenzure <- povprecja.izvajalci.letniki.brez.cenzure[!duplicated(df_dups2),] - - - - - - -#################################### -## lecturer averages by programme ## -#################################### -povprecja.izvajalci.programi <- NULL -povprecja.izvajalci.programi.brez.cenzure <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by programme ## -for (program in programi$student.program.sifra) { - data.program <- subset(data.izvajalci, student.program.sifra == program) - if (nrow(data.program)>0){ - # povpreja - izvMean <- aggregate(data.program[vars.izvajalec$cont$vars],by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = mean, na.rm = TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.program[vars.izvajalec$cont$vars], by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.program$veljavna, by=data.program[c("predmet.sifra","izvajalec.sifra")], FUN = sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.program <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - izvajalci.program <- merge(izvajalci.program, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all = TRUE, sort = FALSE) - povprecja.izvajalci.programi.brez.cenzure <- rbind(povprecja.izvajalci.programi.brez.cenzure, - cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.program[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - # average of components - izvajalci.program$izvajalec.ocena.SKUPAJ <- rowMeans(izvajalci.program[paste0(vars.izvajalec$cont$vars,"_mean")],na.rm=T) - - povprecja.izvajalci.programi <- rbind(povprecja.izvajalci.programi, cbind(izvajalci.program, program.studentov=program, - program.studentov.ime=programi[programi$student.program.sifra==program, - "student.program.ime"])) - } -} -povprecja.izvajalci.programi <- merge(povprecja.izvajalci.programi, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -povprecja.predmeti.programi1 <- merge(povprecja.predmeti.programi, - povprecja.predmeti[, c("predmet.sifra", "ime.predmeta", "NACIN_STUDIJA", - "ST_STUD","sodelujocih.pct", "sodelujocih.pct_po_izpitu", - "zavrnjenih.pct", "zavrnjenih.pct_po_izpitu","neodzivnih.pct", - "neodzivnih.pct_po_izpitu")], - by="predmet.sifra", all.x=T) - -povprecja.izvajalci.programi.brez.cenzure <- merge(povprecja.izvajalci.programi.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) - - - -df_dups1 <- povprecja.izvajalci.programi.brez.cenzure[c("izvajalec.sifra","predmet.sifra")] -povprecja.izvajalci.programi.brez.cenzure <- povprecja.izvajalci.programi.brez.cenzure[!duplicated(df_dups1),] - - - -## //lecturer averages by programme// ## - -######################################### -## lecturer averages by students' year ## -######################################### -povprecja.izvajalci.letniki <- NULL -povprecja.izvajalci.letniki.brez.cenzure <- NULL # Vsa povpreja oz. vse ocene, tudi tiste, ki imajo 4 odgovore ali manj -## lecturer averages by students' year ## -for (letnik in unique(sort(data.izvajalci$student.letnik))) { - data.letnik <- subset(data.izvajalci, student.letnik == letnik) - - # povpreja - izvMean <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=mean, na.rm=TRUE) - colnames(izvMean)[3:ncol(izvMean)] <- paste0(vars.izvajalec$cont$vars,"_mean") - - # N posamezne spremenljivke - izvN <- aggregate(data.letnik[vars.izvajalec$cont$vars], by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=function(x) sum(!is.na(x))) - colnames(izvN)[3:ncol(izvN)] <- paste0(vars.izvajalec$cont$vars,"_N") - - # N anket - izvNanket <- aggregate(data.letnik$veljavna, by=data.letnik[c("predmet.sifra","izvajalec.sifra")], FUN=sum) - colnames(izvNanket)[3] <- "N_anket" - - # Merge - izvajalci.letnik <- merge(izvMean, izvN, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - izvajalci.letnik <- merge(izvajalci.letnik, izvNanket, by=c("izvajalec.sifra", "predmet.sifra"), all=TRUE, sort=FALSE) - povprecja.izvajalci.letniki.brez.cenzure <- rbind(povprecja.izvajalci.letniki.brez.cenzure, - cbind(izvajalci.letnik, letnik.studentov=letnik)) - - # zakrivanje vrednosti kjer ni dovolj enot - premalo <- izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_N")] < minEnot - izvajalci.letnik[paste0(vars.izvajalec$cont$vars,"_mean")][premalo] <- NA - - povprecja.izvajalci.letniki <- rbind(povprecja.izvajalci.letniki, cbind(izvajalci.letnik, letnik.studentov=letnik)) -} -povprecja.izvajalci.letniki <- merge(povprecja.izvajalci.letniki, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", - "ime.predmeta", "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -povprecja.izvajalci.letniki.brez.cenzure <- merge(povprecja.izvajalci.letniki.brez.cenzure, - povprecja.izvajalci[,c("izvajalec.sifra", "predmet.sifra", "ime.predmeta", - "NAZIV.PEDAGOGA", "NACIN_STUDIJA")], - by=c("izvajalec.sifra", "predmet.sifra"), all.x=T) -## //lecturer averages by students' year// ## - -############################ -# quantiles by programme # -########################### -kvantili.izvajalci.programi <- NULL -for (program in unique(povprecja.izvajalci.programi$program.studentov)) { - kvantili.izvajalci.program <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$program.studentov == program & - povprecja.izvajalci.programi$N_anket > 0, - c("izvajalec.sifra","predmet.sifra","program.studentov","program.studentov.ime", - "N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - for (var in c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")) { - kvantili.izvajalci.program[[var]] <- kvantRang(kvantili.izvajalci.program[[var]]) - } - - for (var in c("N_anket")) { - kvantili.izvajalci.program[[var]] <- kvantRang1(kvantili.izvajalci.program[[var]]) - } - - kvantili.izvajalci.programi <- rbind(kvantili.izvajalci.programi, kvantili.izvajalci.program) -} - -kvantili.predmeti.programi <- NULL -for (program in unique(povprecja.predmeti.programi$program.studentov)) { - kvantili.predmeti.program <- povprecja.predmeti.programi[povprecja.predmeti.programi$program.studentov == program & - (povprecja.predmeti.programi$N_anket > 0 | povprecja.predmeti.programi$N_anket_po_izpitu > 0), - c("predmet.sifra","N_anket","N_anket_po_izpitu","program.studentov","program.studentov.ime", - paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ","predmet.ocena.SKUPAJ.pred", - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa","predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")] - for (var in c(paste0(vars.predmet$cont$vars,"_mean"),"predmet.ocena.SKUPAJ", - "predmet.ocena.SKUPAJ.pred","predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti.program[[var]] <- kvantRang(kvantili.predmeti.program[[var]]) - } - for (var in c("N_anket","N_anket_po_izpitu")) { - kvantili.predmeti.program[[var]] <- kvantRang1(kvantili.predmeti.program[[var]]) - } - - for (var in c("predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")) { - kvantili.predmeti.program[[var]] <- kvantRang2(kvantili.predmeti.program[[var]]) - } - - - kvantili.predmeti.programi <- rbind(kvantili.predmeti.programi, kvantili.predmeti.program) -} - - -kvantili.predmeti.programi.PO <- NULL -for (program in unique(povprecja.predmeti.programi.PO$program.studentov)) { - kvantili.predmeti.program <- povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$program.studentov == program & - (povprecja.predmeti.programi.PO$N_anket > 0 | povprecja.predmeti.programi.PO$N_anket_po_izpitu > 0), - c("predmet.sifra","N_anket","N_anket_po_izpitu","program.studentov","program.studentov.ime", - paste0(vars.predmet$cont$vars[8:20],"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa","predmet.ocena.krediti_mean", - "predmet.ocena.kompetence1_mean")] - for (var in c(paste0(vars.predmet$cont$vars[8:20],"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.SKUPAJ.praksa")) { - kvantili.predmeti.program[[var]] <- kvantRang(kvantili.predmeti.program[[var]]) - } - for (var in c("N_anket","N_anket_po_izpitu")) { - kvantili.predmeti.program[[var]] <- kvantRang1(kvantili.predmeti.program[[var]]) - } - - for (var in c("predmet.ocena.krediti_mean","predmet.ocena.kompetence1_mean")) { - kvantili.predmeti.program[[var]] <- kvantRang2(kvantili.predmeti.program[[var]]) - } - - - kvantili.predmeti.programi.PO <- rbind(kvantili.predmeti.programi.PO, kvantili.predmeti.program) -} -# /quantiles by programme/ # - - -################################# -## statistics for methodology ## (Glej izpis za izvajalca, in sicer poglavje Metodoloko pojasnilo) -################################# -data.predmeti <- merge(data.predmeti, sifrant[!duplicated(sifrant$IDP), c("IDP","SEMESTER_IZV")], - by.x="predmet.sifra", by.y="IDP", all.x=TRUE) - -## ZIMSKI SEMESTER ## -metod_XXX <- length(unique(subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDP)) # tevilo predmetov -metod_YYY <- length(unique(subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDPEDAGOGA)) # tevilo pedagogov -metod_ZZZ <- length(unique(studenti$"ID_studenta_.MD5.")) # tevilo tudentov - -metod_UUU <- nrow(subset(sifrant, SEMESTER_IZV %in% prvi_semester)) # tevilo izvedb.. - -metod_VVV <- metod_XXX # number of prepared evaluations for courses -metod_RRR <- metod_UUU # number of prepared evaluations for lecturers - -# ANKETA PRED izpitom -metod_X1 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_anket, na.rm=TRUE) # no. evaluations answers -metod_X2 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_zavrnjenih, na.rm=TRUE) # no. evaluations rejected -metod_X3 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_neodzivnih, na.rm=TRUE) # no. evaluations didn't start -method_xsum<-metod_X1+metod_X2+metod_X3 - -metod_X4 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$veljavna, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$zavrnjena, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -metod_X5 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_pred_izpitom[data_pred_izpitom[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_X6 <- length(unique(subset(data.predmeti, veljavna & SEMESTER_IZV %in% prvi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPREDSum <- metod_X4 + metod_X5 + metod_X6 - -metod_X4.pct <- round((metod_X4/metodPREDSum) * 100, 0) # Percentage of students rejected all evaluations -metod_X5.pct <- round((metod_X5/metodPREDSum) * 100, 0) # Percentage of students with no started evaluations -metod_X6.pct <- round((metod_X6/metodPREDSum) * 100, 0) # Percentage od students participated in at least 1 evaluation - -# ANKETA PO izpitu -metod_Y1 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_anket_po_izpitu, na.rm=TRUE) # no. evaluations answers -metod_Y2 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_zavrnjenih_po_izpitu, na.rm=TRUE) # no. evaluations rejected -metod_Y3 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% prvi_semester)$N_neodzivnih_po_izpitu, na.rm=TRUE) # no. evaluations didn't start - -metod_Y4 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$veljavna_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% prvi_semester)$zavrnjena_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% prvi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -metod_Y5 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_po_izpitu[data_po_izpitu[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% prvi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_Y6 <- length(unique(subset(data.predmeti, veljavna_po_izpitu & SEMESTER_IZV %in% prvi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPOSum <- metod_Y4 + metod_Y5 + metod_Y6 - -metod_Y4.pct <- round((metod_Y4/metodPOSum) * 100, 0) # Percentage of students rejected all evaluations -metod_Y5.pct <- round((metod_Y5/metodPOSum) * 100, 0) # Percentage of students with no started evaluations -metod_Y6.pct <- round((metod_Y6/metodPOSum) * 100, 0) # Percentage od students participated in at least 1 evaluation -## //ZIMSKI// ## - - -## LETNI/CELOLETNI (drugi semester) ## -metod_XXX1 <- length(unique(subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDP)) # tevilo predmetov -metod_YYY1 <- length(unique(subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDPEDAGOGA)) # tevilo pedagogov -metod_ZZZ1 <- length(unique(studenti$"ID_studenta_.MD5.")) # tevilo tudentov - -metod_UUU1 <- nrow(subset(sifrant, SEMESTER_IZV %in% drugi_semester)) # tevilo izvedb.. - -# ANKETA PRED izpitom -metod_X11 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_anket, na.rm=TRUE) # no. evaluations answers -metod_X21 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_zavrnjenih, na.rm=TRUE) # no. evaluations rejected -metod_X31 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_neodzivnih, na.rm=TRUE) # no. evaluations didn't start -method_xsum1 <- metod_X11 + metod_X21 + metod_X31 - -if (length(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna > 0)) { # V primeru da ni vrednosti naj bodo v tabela 0 in ne NA vrednosti - metod_X41 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$zavrnjena, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -} else {metod_X41 <- 0} -metod_X51 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_pred_izpitom[data_pred_izpitom[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_X61 <- length(unique(subset(data.predmeti, veljavna & SEMESTER_IZV %in% drugi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPREDSum_2 <- metod_X41 + metod_X51 + metod_X61 - -metod_X41.pct<-round((metod_X41/metodPREDSum_2) * 100, 0) # Percentage of students rejected all evaluations -metod_X51.pct<-round((metod_X51/metodPREDSum_2) * 100, 0) # Percentage of students with no started evaluations -metod_X61.pct<-round((metod_X61/metodPREDSum_2) * 100, 0) # Percentage od students participated in at least 1 evaluation - -# ANKETA PO izpitu -metod_Y11 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_anket_po_izpitu, na.rm=TRUE) # no. evaluations answers -metod_Y21 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_zavrnjenih_po_izpitu, na.rm=TRUE) # no. evaluations rejected -metod_Y31 <- sum(subset(povprecja.predmeti, SEMESTER_IZV %in% drugi_semester)$N_neodzivnih_po_izpitu, na.rm=TRUE) # no. evaluations didn't start - -if (length(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna_po_izpitu > 0)) { - metod_Y41 <- sum((aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$veljavna_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x == 0) & (aggregate(subset(data.predmeti, SEMESTER_IZV %in% drugi_semester)$zavrnjena_po_izpitu, by=data.predmeti[data.predmeti$SEMESTER_IZV %in% drugi_semester, "student.sifra", drop=FALSE], FUN=sum, na.rm=TRUE)$x > 0)) # no. students rejected all evaluations -} else {metod_Y41 <- 0} -metod_Y51 <- sum(!(unique(studenti$"ID_studenta_.MD5.") %in% data_po_izpitu[data_po_izpitu[[navodila["predmet.sifra","lokacije.predmet"]]] %in% subset(sifrant, SEMESTER_IZV %in% drugi_semester)$IDP, navodila["student.sifra","lokacije.student"]])) # no. students with no started evaluations -metod_Y61 <- length(unique(subset(data.predmeti, veljavna_po_izpitu & SEMESTER_IZV %in% drugi_semester)$student.sifra)) # no. students participated in at least 1 evaluation -metodPOSum_2 <- metod_Y41 + metod_Y51 + metod_Y61 - - -metod_Y41.pct <- round((metod_Y41/metodPOSum_2) * 100, 0) # Percentage of students rejected all evaluations -metod_Y51.pct <- round((metod_Y51/metodPOSum_2) * 100, 0) # Percentage of students with no started evaluations -metod_Y61.pct <- round((metod_Y61/metodPOSum_2) * 100, 0) # Percentage od students participated in at least 1 evaluation - -## //LETNI/CELOLETNI// ## - - -# answers -metod_XX <- round(FDVpredmeti["prvi_semester", "sodelujocih.pct"]) # Dele tudentov FDV, ki so v sodelovali v anketi PRED (v prvem semestru) -metod_YY <- round(FDVpredmeti["prvi_semester", "zavrnjenih.pct"]) # Dele tudentov FDV, ki so sodelovanje v anketi PRED zavrnili (v prvem semestru) -metod_ZZ <- round(FDVpredmeti["prvi_semester", "neodzivnih.pct"]) # Dele tudentov FDV, ki ki k anketi PRED niso pristopili (v prvem semestru) -metod_ZZ1 <- round(FDVpredmeti["prvi_semester", "sodelujocih.pct_po_izpitu"]) # -"- Anketa PO -metod_ZZ2 <- round(FDVpredmeti["prvi_semester", "zavrnjenih.pct_po_izpitu"]) # -"- Anketa PO -metod_ZZ3 <- round(FDVpredmeti["prvi_semester", "neodzivnih.pct_po_izpitu"]) # -"- Anketa PO - -metod_XX1 <- round(FDVpredmeti["drugi_semester", "sodelujocih.pct"]) -metod_XX2 <- round(FDVpredmeti["drugi_semester", "zavrnjenih.pct"]) -metod_XX3 <- round(FDVpredmeti["drugi_semester", "neodzivnih.pct"]) -metod_ZZ1L <- round(FDVpredmeti["drugi_semester", "sodelujocih.pct_po_izpitu"]) -metod_ZZ2L <- round(FDVpredmeti["drugi_semester", "zavrnjenih.pct_po_izpitu"]) -metod_ZZ3L <- round(FDVpredmeti["drugi_semester", "neodzivnih.pct_po_izpitu"]) - - -# e ni podatkov za drugi semester potem spremenljivkam pripii vrednost 0 (da v tabelah v poglavju Splona metodologija ne pojavljajo NA) -if (is.na(round(FDVpredmeti["drugi_semester", "ST_STUD"])) & is.na(round(FDVpredmeti["drugi_semester", "N_anket"]))) { - metod_XX1 <- 0 - metod_XX2 <- 0 - metod_XX3 <- 0 - metod_ZZ1L <- 0 - metod_ZZ2L <- 0 - metod_ZZ3L <- 0 - -} - -# Tekst v poglavju Metodoloko pojasnilo -# da npr. v I. semestru vsak predmet izvaja 2.2 (:RRR:/:XXX:) pedagogov 266/123 -method_IZR <- round(metod_RRR/metod_XXX, digits = 1) -#vsak pedagog pa v povpreju izvaja 2.5 (266/105) predmetov. -method_IZR1 <- round(metod_RRR/metod_YYY, digits = 1) -#Trenutni datum oz stanje izvoza, ki se izpie pod tabelo v poglavju: Metodoloko pojasnilo -date <- format(Sys.time(), "%d.%m.%Y") - -# tevilke, v poglavju SPLONA METODOLOGIJA (glej npr. -# ne glede na stopnjo odgovorov je povpreno zadovoljstvo okoli 4.2) -# Najprej za Dodiplomski tudij: -# Povpreje komponent predmetov po tudijskih programih (anketa PRED izpitom) sortirano po povpreju \\textbf{Skupaj}" -stopnja_program <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")],povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], by="predmet.sifra", sort=FALSE) -stopnja_program <- stopnja_program[stopnja_program$N_anket >=minEnot, c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] -if (nrow(stopnja_program) > 0) { - stopnja_program <- aggregate(stopnja_program$predmet.sifra, - by=stopnja_program[c("program.studentov","program.studentov.ime","STOPNJA")], - function(x) length(unique(x))) -} else {stopnja_program <- stopnja_program} -stopnja_program.pred <- merge(test.pred, stopnja_program, - by.x="student.program.ime", - by.y="program.studentov.ime", - all=TRUE) -program.1stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], - FUN=mean, - na.rm=TRUE) -program.1stopnja <- cbind(program.1stopnja, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja[vars.predmet.vars], na.rm=TRUE)) -stopnja_program1 <- stopnja_program -colnames(stopnja_program1)[4] <- "N_anket" -rownames(stopnja_program1) <- stopnja_program1[rownames(stopnja_program1),"student.program.ime"] -if (nrow(stopnja_program1) > 0) { - program_BD_pred.skupaj <- merge(stopnja_program1, program.1stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_pred.skupaj <- subset(program_BD_pred.skupaj, STOPNJA==1) - program_BD_pred.skupaj <- program_BD_pred.skupaj[, !(colnames(program_BD_pred.skupaj) %in% c("STOPNJA"))] -} else {program_BD_pred.skupaj <- stopnja_program1} -# Izraunamo povpreje, ki je potem zapisano v poglavju SPLONA METODOLOGIJA -if (nrow(program_BD_pred.skupaj) > 0) { -method_povp1 <- round(colMeans(program_BD_pred.skupaj[11:ncol(program_BD_pred.skupaj)], na.rm=TRUE), 1) -} else {method_povp1 <- 0} -# E ZA Podiplomski tudij: -# Povpreje komponent predmetov po tudijskih programih (anketa PRED izpitom) sortirano po povpreju \\textbf{Skupaj}" -stopnja_program_podipl <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra", - paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) -stopnja_program_podipl <- stopnja_program_podipl[stopnja_program_podipl$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] -if (nrow(stopnja_program_podipl) > 0) { - stopnja_program_podipl <- aggregate(stopnja_program_podipl$predmet.sifra, - by=stopnja_program_podipl[c("program.studentov","program.studentov.ime","STOPNJA")], - function(x) length(unique(x))) -} -stopnja_program_podipl.pred <- merge(test.pred, stopnja_program_podipl, - by.x="student.program.ime", - by.y="program.studentov.ime", all=TRUE) -program.2stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], - FUN=mean, na.rm=TRUE) -program.2stopnja <- cbind(program.2stopnja, predmet.ocena.SKUPAJ=rowMeans(program.2stopnja[vars.predmet.vars], na.rm=TRUE)) -stopnja_program_podipl1 <- stopnja_program_podipl -colnames(stopnja_program_podipl1)[4] <- "N_anket" -rownames(stopnja_program_podipl1) <- stopnja_program_podipl1[rownames(stopnja_program_podipl1),"student.program.ime"] -if (nrow(stopnja_program_podipl1) > 0) { - program_BD_pred.podipl <- merge(stopnja_program_podipl1, program.2stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_pred.podipl <- subset(program_BD_pred.podipl, STOPNJA==2) - program_BD_pred.podipl <- program_BD_pred.podipl[, !(colnames(program_BD_pred.podipl) %in% c("STOPNJA"))] -} else{program_BD_pred.podipl <- stopnja_program_podipl1} -# Izraunamo povpreje, ki je potem zapisano v poglavju SPLONA METODOLOGIJA -if (nrow(program_BD_pred.podipl) > 0) { -method_povp2 <- round(colMeans(program_BD_pred.podipl[11:ncol(program_BD_pred.podipl)],na.rm=TRUE), 1) -} else {method_povp2 <- 0} - -#Podatki, ki generirajo vrednosti v latex datoteki metodolosko.pojasnilo. Glej mapo latexkosi -# S funkcijo scan preberemo tex. datoteko metodolosko.pojasnilo.tex -tex.okvir <- scan("Evalvacija/latexkosi/metodolosko.pojasnilo.tex", character(0), sep = "\n", quiet = TRUE, encoding = 'UTF-8') -tex.okvir <- gsub(pattern=":XXX:", replacement=metod_XXX, x=tex.okvir) -tex.okvir <- gsub(pattern=":YYY:", replacement=metod_YYY, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZZ:", replacement=metod_ZZZ, x=tex.okvir) -tex.okvir <- gsub(pattern=":UUU:", replacement=metod_UUU, x=tex.okvir) -tex.okvir <- gsub(pattern=":VVV:", replacement=metod_VVV, x=tex.okvir) -tex.okvir <- gsub(pattern=":RRR:", replacement=metod_RRR, x=tex.okvir) -tex.okvir <- gsub(pattern=":X1:", replacement=method_xsum, x=tex.okvir) -tex.okvir <- gsub(pattern=":UUU1:", replacement=metod_UUU1, x=tex.okvir) - -tex.okvir <- gsub(pattern=":XXX1:", replacement=metod_XXX1, x=tex.okvir) -tex.okvir <- gsub(pattern=":YYY1:", replacement=metod_YYY1, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZZ1:", replacement=metod_ZZZ1, x=tex.okvir) - -tex.okvir <- gsub(pattern=":XX:", replacement=metod_XX, x=tex.okvir) -tex.okvir <- gsub(pattern=":YY:", replacement=metod_YY, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ:", replacement=metod_ZZ, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ1:", replacement=metod_ZZ1, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ2:", replacement=metod_ZZ2, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ3:", replacement=metod_ZZ3, x=tex.okvir) - -# DELE tudentov (PRVI SMESTER) -## ANKETA PRED -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_X4.pct:", replacement=metod_X4.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_X5.pct:", replacement=metod_X5.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_X6.pct:", replacement=metod_X6.pct, x=tex.okvir) -## ANKETA PO -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_Y4.pct:", replacement=metod_Y4.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_Y5.pct:", replacement=metod_Y5.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_Y6.pct:", replacement=metod_Y6.pct, x=tex.okvir) - -# DRUGI SEMESTER ANKETA PRED IN PO IZPITU -tex.okvir <- gsub(pattern=":XX1:", replacement=metod_XX1, x=tex.okvir) -tex.okvir <- gsub(pattern=":XX2:", replacement=metod_XX2, x=tex.okvir) -tex.okvir <- gsub(pattern=":XX3:", replacement=metod_XX3, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ1L:", replacement=metod_ZZ1L, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ2L:", replacement=metod_ZZ2L, x=tex.okvir) -tex.okvir <- gsub(pattern=":ZZ3L:", replacement=metod_ZZ3L, x=tex.okvir) -tex.okvir <- gsub(pattern=":Y1:", replacement=method_xsum1, x=tex.okvir) - -tex.okvir <- gsub(pattern=":IZR:", replacement=method_IZR, x=tex.okvir) -tex.okvir <- gsub(pattern=":IZR1:", replacement=method_IZR1, x=tex.okvir) -tex.okvir <- gsub(pattern=":IME:", replacement=fakulteta, x=tex.okvir) - -# Datum izvoza podatkov (tabele v metodologiji) -tex.okvir <- gsub(pattern=":DATUM:", replacement=date, x=tex.okvir) - - -# DELE tudentov (DRUGI SMESTER) -## ANKETA PRED -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_X41.pct:", replacement=metod_X41.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_X51.pct:", replacement=metod_X51.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_X61.pct:", replacement=metod_X61.pct, x=tex.okvir) -## ANKETA PO -# no. students rejected all evaluations -tex.okvir <- gsub(pattern=":metod_Y41.pct:", replacement=metod_Y41.pct, x=tex.okvir) -# no. students with no started evaluations -tex.okvir <- gsub(pattern=":metod_Y51.pct:", replacement=metod_Y51.pct, x=tex.okvir) -# no. students participated in at least 1 evaluation -tex.okvir <- gsub(pattern=":metod_Y61.pct:", replacement=metod_Y61.pct, x=tex.okvir) - - -#Poglavje SPLONA METODOLOGIJA -#tevilka oz povpreji za dodiplomski in podpilomski tudij za anketo PRED izpitom -tex.okvir <- gsub(pattern=":DODI:", replacement=method_povp1, x=tex.okvir) -tex.okvir <- gsub(pattern=":PODI:", replacement=method_povp2, x=tex.okvir) -# /statistics for methodology/ # - - - -# Dodatno Pojasnilo za tabele: glej skripto koda-izvajalec_predmet.r -# Opomba za Uszreznost KT -KTust <- "{\\footnotesize \\textit{* Vrednost pod 3.0 pomeni, da je predmet glede -na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno -tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. -{\\color{Orange}\\textbf{Oranno}} so oznaena opazna -odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), -{\\color{BrickRed}\\textbf{rdee}} pa izrazita -odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}}). -\\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene ostalih programov, -v katere so vpisani tudenti, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}" - -# Vpraanje komponente Kompetence -Kompetence.note <- "{\\footnotesize \\textit{* \\guillemotright Tekst vpraanja: V kolikni meri -ste pri predmetu pridobili priakovane \\textbf{kompetence}? \\guillemotleft }}" - -# Kvantilni rangi -kvan.pojas <- "{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je kvantilni rang -za odgovarjajoe vrednosti, vendar ni obarvan, saj gre za administrativni podatek.}}" -kvan.pojas1 <- "{\\footnotesize \\textit{* Gre za vse predmete z vsaj 4 odgovori (tudi predmete drugih programov, -e so bili izbirni), ki so jih vpisali tudenti doloenega programa. \\newline ** Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ -je kvantilni rang za odgovarjajoe vrednosti v tabeli 1.1 (poloaj predmeta med vsemi predmeti doloenega programa), -vendar ni obarvan, saj gre za administrativni podatek.}}" -kvan.pojas3 <- c(paste0("{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je kvantilni rang - za odgovarjajoe vrednosti v tabeli 1.3 (poloaj IPP med vsemi IPP doloenega programa v pogledu tevila vpisanih tudentov). - \\newline ** Gre za vse predmete z vsaj 4 odgovori - (vkljuno s predmeti drugih programov, e so bili izbirni), ki so jih vpisali tudenti doloenega programa. - \\newline *** \\guillemotright t. IPP\\guillemotleft \\ - tevilo vseh izvajalcev pri predmetih na doloenem programu - (v povpreju ima vsak predmet ", method_IZR ," izvajalca).}}")) -# NOT USING THIS NOW -# Pojasnilo za izvajalca pri predmetu: tudijski program -# pojasIZV.tmp <- c(paste0("{\\footnotesize \\textit{* Prikazani so samo programi, pri katerih je imel izvajalec vsaj 4 ocene. -# \\newline ** \\guillemotright t. IPP\\guillemotleft \\ - tevilo vseh izvajalcev pri predmetih na doloenem programu -# (v povpreju ima vsak predmet ", method_IZR ," izvajalca).}}")) -# Pojasnilo za izvajalca -# pojasPRED.tmp <- c(paste0("{\\footnotesize \\textit{* Prikazani so samo programi, pri katerih je imel izvajalec vsaj 4 ocene.}}")) - - - -######DODATNI PODATKI ZA TABELE ANALIZA IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH: glej skripto koda-izvajalec_predmet.r -proggIZ.tmp <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$N_anket >=minEnot, c("predmet.sifra","program.studentov","program.studentov.ime")] -if (nrow(proggIZ.tmp) > 0) { - proggIZ.tmp <- aggregate(proggIZ.tmp$predmet.sifra, by = proggIZ.tmp[c("program.studentov","program.studentov.ime")], function(x) length(x)) - izv.predmet <- merge(test2, proggIZ.tmp, by.x="student.program.ime", by.y = "program.studentov.ime", all = TRUE) -} else {izv.predmet <- proggIZ.tmp} - -######DODATNI PODATKI ZA TABELE ANALIZE PREDMETA PO PROGRAMIH IN LETNIKIH - ANKETA PRED -proggPRED.tmp <- povprecja.predmeti.programi[povprecja.predmeti.programi$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime")] -if (nrow(proggPRED.tmp) > 0) { - proggPRED.tmp <- aggregate(proggPRED.tmp$predmet.sifra, by = proggPRED.tmp[c("program.studentov","program.studentov.ime")], - function(x) length(unique(x))) - pred.predmet <- merge(test.pred, proggPRED.tmp, - by.x = "student.program.ime", by.y = "program.studentov.ime", all = TRUE) -} else {pred.predmet <- proggPRED.tmp} -###// ANKETA PRED //### - - -######DODATNI PODATKI ZA TABELE ANALIZE PREDMETA PO PROGRAMIH IN LETNIKIH - ANKETA PO -test.po <- aggregate(data.predmeti.PO[vars.predmet$cont$po], by = data.predmeti.PO[c("student.program.ime")], FUN = mean, na.rm = TRUE) -test.po <- cbind(test.po, predmet.ocena.SKUPAJ = rowMeans(test.po[vars.predmet$cont$po[-1]], na.rm = TRUE)) -test.po <- round_df(test.po, 1) -proggPO.tmp <- povprecja.predmeti.programi.PO[povprecja.predmeti.programi.PO$N_anket_po_izpitu >=minEnot, c("predmet.sifra","program.studentov","program.studentov.ime")] -if (nrow(proggPO.tmp)>0) { - proggPO.tmp <- aggregate(proggPO.tmp$predmet.sifra, by=proggPO.tmp[c("program.studentov","program.studentov.ime")], function(x) length(unique(x))) - proggPO.tmp1 <- proggPO.tmp - colnames(proggPO.tmp1)[3] <- "N_anket" - po.predmet <- merge(test.po, proggPO.tmp, by.x = "student.program.ime", by.y = "program.studentov.ime", all = TRUE) -} else {proggPO.tmp <- NULL -proggPO.tmp1 <- NULL -po.predmet <- NULL -} -## //ANKETA PO// ## - -#FAKULTETA: PROGRAMI-ANKETA PRED IZPITOM -# Povpreja komponent predmetov ankete PRED izpitom po tudijskih programih -progMeanPRED.tmp <- aggregate(data.predmeti[vars.predmet.vars], - by = data.predmeti[c("student.program.sifra","student.program.ime")], - FUN = mean, na.rm = TRUE) -progMeanPRED.tmp <- cbind(progMeanPRED.tmp, predmet.ocena.SKUPAJ = rowMeans(progMeanPRED.tmp[vars.predmet.vars], na.rm = TRUE)) -proggPRED.tmp1 <- proggPRED.tmp -colnames(proggPRED.tmp1)[3] <- "N_anket" -if (nrow(proggPRED.tmp1) > 0) { - progMeanPRED.n <- merge(proggPRED.tmp1, progMeanPRED.tmp, - by.x = c("program.studentov","program.studentov.ime"), - by.y = c("student.program.sifra","student.program.ime"), all = TRUE, sort = FALSE) -} else {progMeanPRED.n <- proggPRED.tmp1} - -#Dodajanje povpreja programa k izvajalcu na konec -#Povpreja programov anketa pred izpitom 1 STOPNJAA -program_1stopnja <- proggPRED.tmp - - -######################################################## -### analiza predmeta po smereh in letnikih tudentov ### -#tabelaBy (ki jo uporabimo v koda-izvajalec_predmet.r) -####################################################### -# Anketa PRED -# Pojasnilo funkcije tabelaby1: glej skripto koda-izvajalec_predmet.r -# Loimo komponente, na komponente, ki so v anketi PRED izpitom in anketi PO izpitu, saj ji bomo zapisali v loeni tabeli -vars.predmet$cont$ime.kratko1 <- vars.predmet$cont$ime.kratko[-c(12,13,14,15,16,17,18,19,20)] -vars.predmet$cont$decimalke1 <- vars.predmet$cont$decimalke[-c(12,13,14,15,16,17,18,19,20)] -vars.predmet$cont$pobarvanka1 <- vars.predmet$cont$pobarvanka[-c(12,13,14,15,16,17,18,19,20)] - -# Komponente PRED izpitom zapiemo v vektorje, ki bodo v Latex tabelah -komponente.predmeta.PRED <- vars.predmet$cont$vars1[-c(8,9,10,11)] # Komponente: Zadovoljstvo, Usklajenost, Samostojnost, ...itd -imena_stolpcevPRED <- as.character(vars.predmet$cont$ime.kratko1[-c(8,9,10,11)]) # Komponente, ki bodo kot imena stolpcev v tabeli tabelaBy1 -decimalno_mestoPRED <- as.numeric(vars.predmet$cont$decimalke1[-c(8,9,10,11)]) # Decimalke: zakoroevanje povprenih vrednosti komponent na 1 decimalno mesto -pobarvanka.PRED <- as.character(vars.predmet$cont$pobarvanka1[-c(8,9,10,11)]) # Pobarvanka: mejne vrednosti "3,4,Inf,Inf", ki barvajo povpreja v tabelah - - -# Pojasnilo funkcije tabelaby2: glej skripto koda-izvajalec_predmet.r -# Anketa PO -komponente.predmeta.PO <- vars.predmet$cont$vars1[-c(1,2,3,4,5,6,7)] # Komponente za anketo PO izpitu: Kompetence, Vsebine, naloge, Kriteriji + Ustreznost kreditnih tok -imena_stolpcevPO <- as.character(vars.predmet$cont$ime.kratko1[-c(1,2,3,4,5,6,7)]) # Komponente bodo predstavljale imena stolpcev v tabelah -decimalno_mestoPO <- as.numeric(vars.predmet$cont$decimalke1[-c(1,2,3,4,5,6,7)]) -pobarvanka.PO <- as.character(vars.predmet$cont$pobarvanka1[-c(1,2,3,4,5,6,7)]) - -# Iz stringa povleemo le tevila -# Pride v potev v tabelah v povzetku, kjer so negativne vrednosti za dele nesodelujoih -#library(stringr) -#numextract <- function(string){ -# str_extract(string, "\\-*\\d+\\.*\\d*") -#} - -############################################################## -# KOMENTARJI PRI POVPREJIH IZVAJALCEV HABILITACIJSKA KOMISIJA -# K povpreni ocenam izvajalcev dodamo e komentarje tudentov -# Uporabimo le vpimeru, da delamo poroila za habilitacijsko komisijo -Habilitacijska <- FALSE -if (Habilitacijska == TRUE) { - povprecja.izvajalci <- merge(povprecja.izvajalci, data.izvajalci[c("izvajalec.sifra","predmet.sifra","izvajalec.komentar.dobro","izvajalec.komentar.slabo")], - by=c("izvajalec.sifra","predmet.sifra"), all = T, sort = F) - # Ustvarimo csv datoteki, ki ju nato uporabimo za generiranje poroil TRENDOV in HABILITACIJSKE KOMISIJE - write.csv2(povprecja.izvajalci,"povprecja.izvajalci.csv") - write.csv2(povprecja.predmeti,"povprecja.predmeti.csv") -} -############################################################# -povprecja.predmeti <- merge(povprecja.predmeti, poNLurkerji, by = "predmet.sifra", all = TRUE, sort = FALSE) - - - -# df_dups <- povprecja.izvajalci[c("izvajalec.sifra","predmet.sifra")] -# -# povprecja.izvajalci <- povprecja.izvajalci[!duplicated(df_dups),] -# -# -# df_dups1 <- povprecja.izvajalci.programi.brez.cenzure[c("izvajalec.sifra","predmet.sifra")] -# povprecja.izvajalci.programi.brez.cenzure <- povprecja.izvajalci.programi.brez.cenzure[!duplicated(df_dups1),] -# -# -# df_dups2 <- povprecja.izvajalci.letniki.brez.cenzure[c("izvajalec.sifra","predmet.sifra")] -# povprecja.izvajalci.letniki.brez.cenzure <- povprecja.izvajalci.letniki.brez.cenzure[!duplicated(df_dups2),] -# -# -# -# - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_fakulteta.r b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_fakulteta.r deleted file mode 100644 index 8f38e9fed..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_fakulteta.r +++ /dev/null @@ -1,1780 +0,0 @@ -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo za posamezno fakulteto na streniku -# Tega ne poganjamo -# params <- commandArgs(trailingOnly=TRUE) -# ID <- params[1] -# #sesionID <- params[2] #Dodajanje tevil na koncu pdf/tex datotek za Petra -# # //1KA strenik// # -# -# # run first -# source("Evalvacija/R/koda.r") - -sortByAverage <- TRUE # if true sort variable values and rownames in tables by average, else by lecturer's name -sortbykrediti<-TRUE # if true sort values in tables by values of komponent Ustreznost KT (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - -# which lecturers and courses should be included (all from predmeti.izbor and those from izvajalci.izbor that are also in predmeti.izbor) -predmeti.izbor <- povprecja.predmeti$predmet.sifra -izvajalci.izbor <- unique(povprecja.izvajalci$izvajalec.sifra) - -# making latex file -izbor.tex <- NULL # Uporabimo na koncu poroila za zapis tex vrednosti - -## lecturer total averages ## -izbor.izvajalci <- subset(povprecja.izvajalci, predmet.sifra %in% predmeti.izbor & izvajalec.sifra %in% izvajalci.izbor) -izbor.izvajalci <- izbor.izvajalci[!is.na(izbor.izvajalci$predmet.sifra),] -izbor.izvajalci <- izbor.izvajalci[!is.na(izbor.izvajalci$NAZIV.PEDAGOGA),] -if (nrow(izbor.izvajalci) > 0) { # Tabelo naredi samo, e obstajajo vrednosti za izvajalca - # Vrednosti komponent izvajalcev agregiramo glede na ifro izvajalca in ime izvajalca in izraunamo povpreje - izbor.izvajalci.skupaj <- aggregate(izbor.izvajalci[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by=izbor.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], FUN=mean, na.rm=TRUE) - st.predmetov <- aggregate(izbor.izvajalci$N_anket >= minEnot, - by=izbor.izvajalci["izvajalec.sifra"], FUN=sum, na.rm=TRUE) # how many courses each lecturer has with enough answers - # Zdruimo tevilo predmetov s povpreji komponent glede na ifro izvajalca - izbor.izvajalci.skupaj <- merge(st.predmetov, izbor.izvajalci.skupaj, by="izvajalec.sifra", all=TRUE, sort=FALSE) - if (sortByAverage) {# if true sort variable values and rownames in tables by average, else by name - rownames(izbor.izvajalci.skupaj) <- formatProgImena(izbor.izvajalci.skupaj$NAZIV.PEDAGOGA, izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ) - izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj[order(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(izbor.izvajalci.skupaj) %in% c("izvajalec.sifra", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - } else { # sort by name - rownames(izbor.izvajalci.skupaj) <- izbor.izvajalci.skupaj$NAZIV.PEDAGOGA - izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj[order(as.character(sapply(rownames(izbor.izvajalci.skupaj), titula.rm)), - decreasing=FALSE), !(colnames(izbor.izvajalci.skupaj) %in% c("izvajalec.sifra", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - } - # Zruimo povprene ocene posameznih komponent vseh izvajalcev z SKUPNIM povprejem vseh komponent (colmeans) - izbor.izvajalci.skupaj <- rbind(izbor.izvajalci.skupaj, c(colMeans(izbor.izvajalci.skupaj[1:ncol(izbor.izvajalci.skupaj)], na.rm=TRUE))) - # Obarvanje mejnih vrednosti (formatNA) - izbor.izvajalci.skupaj <- formatNA(izbor.izvajalci.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - # (-1 zato, ker na koncu dodamo e vrstico Povpreje fakultete in te ne tejemo zraven ) - vsota_vseh.izvajalcev <- sum(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") - 1 # tevilo vseh izvajalcev fakultete - # Imena dodatne vrstice, ki jo dodamo na konec tabele (boldana vrstca z imenom Povpreje FDV), ki vsebuje skupno povpreje komponent izvajalcev fakultete - rownames(izbor.izvajalci.skupaj)[nrow(izbor.izvajalci.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_vseh.izvajalcev," izvajalcev)}")) - # Imena stolpcev v tebelah + rotiranje imen v tabelah za 90 stopinj (latex.rotate) - colnames(izbor.izvajalci.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)),"\\textbf{Skupaj}")) - # Generiranje LATEX tabel (capture.output(Hmisc::latex) - izbor.izvajalci.skupaj.tex <- capture.output(Hmisc::latex(izbor.izvajalci.skupaj, # data frame - caption="Povpreja \\textbf{izvajalcev}, - sortirana po \\textbf{Skupaj}", # naslov tabele - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", # irina vrstic tabele - multicol=FALSE, - longtable=TRUE, # splits a long table across pages - lines.page=1000, # table will be 1000 line long per page - insert.bottom=paste("{\\footnotesize \\textit{- - Podatek je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) # Stolpci - - ## /lecturer total averages/ ## - - - ####################################### - #IZPIS POVPREIJ ZA TUDIJSKE PROGRAME# - ####################################### - #IZPIS ZA IPP (izvajalci pri predmetih)# - #tevilo izvajalcev - # Preverimo e obstajajo vreednosti za izvajalce, saj nam drugae javi error pri generiranju tabel - sortByAverage1 <- FALSE # If false values in table will be sorted by programe names - proggIZ.tmp <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime")] - # Pred generiranjem tabel preverimo e obstajajo podatki oziroma ocene - if (nrow(proggIZ.tmp) > 0) { # V primeru da so ocene za izvajalce po tudijskih programih - proggIZ.tmp <- aggregate(proggIZ.tmp$predmet.sifra, - by=proggIZ.tmp[c("program.studentov","program.studentov.ime")], function(x) length(x)) - rownames(proggIZ.tmp) <- proggIZ.tmp[rownames(proggIZ.tmp),"program.studentov.ime"] - } else {proggIZ.tmp <- proggIZ.tmp} - - povprecja.izvajalci.programi1 <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$"N_anket" >= minEnot,] - if (nrow(povprecja.izvajalci.programi1) > 0) { - progMeanIzv.fakulteta <- aggregate(povprecja.izvajalci.programi1[paste0(vars.izvajalec$cont$vars,"_mean")], - by=povprecja.izvajalci.programi1[c("program.studentov")], FUN=mean, na.rm=TRUE) - - progMeanIzv.fakulteta.tmp <- cbind(progMeanIzv.fakulteta, izvajalec.ocena.SKUPAJ=rowMeans(progMeanIzv.fakulteta [paste0(vars.izvajalec$cont$vars,"_mean")], na.rm=TRUE)) - - progMeanIzv.fakulteta.tmp <- merge(progMeanIzv.fakulteta.tmp,stopnja_program[c("program.studentov","program.studentov.ime")], - by="program.studentov", sort=FALSE) - } else {progMeanIzv.fakulteta <- povprecja.izvajalci.programi1 - progMeanIzv.fakulteta.tmp <- povprecja.izvajalci.programi1} - - if (nrow(progMeanIzv.fak1) > 0) { - progMeanIzv.fak.skupaj <- merge(proggIZ.tmp,progMeanIzv.fakulteta.tmp, - by=c("program.studentov", "program.studentov.ime"), - all=TRUE, sort=FALSE) - } - ## //Pred generiranjem tabel preverimo e obstajajo podatki oziroma ocene// ## - - - # Zanemo s sestavljanjem vrednosti za generiranje tabel - if (nrow(progMeanIzv.fak.skupaj) > 0) { - if (any(duplicated(progMeanIzv.fak.skupaj))) { - progMeanIzv.fak.skupaj <- progMeanIzv.fak.skupaj[!duplicated(progMeanIzv.fak.skupaj$program.studentov), ] - } - if (sortByAverage1) { # If false values in table will be sorted by programe names - rownames(progMeanIzv.fak.skupaj) <- formatProgImena(progMeanIzv.fak.skupaj$program.studentov.ime, - progMeanIzv.fak.skupaj$izvajalec.ocena.SKUPAJ) - progMeanIzv.fak.skupaj <- progMeanIzv.fak.skupaj[order(progMeanIzv.fak.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(progMeanIzv.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(progMeanIzv.fak.skupaj) <- progMeanIzv.fak.skupaj$program.studentov.ime - progMeanIzv.fak.skupaj <- progMeanIzv.fak.skupaj[order(as.character(sapply(rownames(progMeanIzv.fak.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(progMeanIzv.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - progMeanIzv.fak.skupaj <- rbind(progMeanIzv.fak.skupaj, c("-", colMeans(progMeanIzv.fak.skupaj[2:ncol(progMeanIzv.fak.skupaj)], na.rm=TRUE))) - progMeanIzv.fak.skupaj <- formatNA(progMeanIzv.fak.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - # Na koncu tabele dodamo boldano vrstico Povpreje programov, ki bo vsebovala povpreja komponent za celotno fakulteto - rownames(progMeanIzv.fak.skupaj )[nrow(progMeanIzv.fak.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - # Poimenujemo stolpce in imena stolpcev rotiramo za 90 stopinj (latex.rotate) - colnames(progMeanIzv.fak.skupaj ) <- latex.rotate(c("t. IPP**", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - progMeanIzv.fak.skupaj.tex <- capture.output(Hmisc::latex(progMeanIzv.fak.skupaj, - caption="Povpreja \\textbf{izvajalcev} - po tudijskih programih, sortirana po abecedi", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{- - Podatek je manj pomemben ali teko izraunljiv. - \\newline ** t. IPP - tevilo vseh izvajalcev - pri predmetih na doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } - - ## //IZPIS POVPREIJ ZA PROGRAME// ## - - - - ## lecturer course averages ## - # (Izvajalci pri predmetih) - # Imena vrstic latex tabel: ime izvajalca (ime predmeta) - - rownames(izbor.izvajalci) <- make.unique(paste0(sapply(povprecja.izvajalci[rownames(izbor.izvajalci),"NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci[rownames(izbor.izvajalci),"ime.predmeta"], ")")) - #IPP redni tudij (NACIN_STUDIJA == "1") - izbor.izvajalci.redni <- izbor.izvajalci[izbor.izvajalci$NACIN_STUDIJA == "1", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] - #IPP izredni tudij (NACIN_STUDIJA == "2") - izbor.izvajalci.izredni <- izbor.izvajalci[izbor.izvajalci$NACIN_STUDIJA == "2", - c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] - - # redni tudij - if (nrow(izbor.izvajalci.redni) > 0) { - if (any(is.na(izbor.izvajalci.redni))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - if (sortByAverage) { - izbor.izvajalci.redni <- izbor.izvajalci.redni[order(izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(izbor.izvajalci.redni) <- formatProgImena(rownames(izbor.izvajalci.redni), izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ) - } else { # sort by name - izbor.izvajalci.redni <- izbor.izvajalci.redni[order(rownames(izbor.izvajalci.redni), decreasing=FALSE),] - } - # Zdruimo vrstice: povpreje komponent izvajalcev in skupno povpreje komponent izvajalcev - izbor.izvajalci.redni <- rbind(izbor.izvajalci.redni, colMeans(izbor.izvajalci.redni, na.rm=TRUE)) - # Obarvanje in zaokroevanje vrednosti - # formatNA1 dodajanje enojnih ali dvojnih oklepajev spremenljivkam od 1:5 stolpca - izbor.izvajalci.redni1 <- formatNA1(izbor.izvajalci.redni[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$st.stud, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") #na.repl <- NA vrednosti nadomestimo z loilom - # formatNA obarvanje (rdea ali oranna barva) komponent oz stolpcev od 6:12 - izbor.izvajalci.redni2 <- formatNA(izbor.izvajalci.redni[6:12], - decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - # Zdruimo vrednosti (obarvanja in oklepaje) - izbor.izvajalci.redni <- cbind(izbor.izvajalci.redni1,izbor.izvajalci.redni2) - # tevilo vseh IPP fakultete 1-, saj na koncu dodamo e vrstico Povpreje FDV, ki je ne tejemo k tevilu vseh IPP - vsota_IPP <- sum(izbor.izvajalci.redni$izvajalec.ocena.SKUPAJ != ".") - 1 - # Dodamo vrstico z imenom Povpreje FDV - rownames(izbor.izvajalci.redni)[nrow(izbor.izvajalci.redni)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_IPP," IPP)}")) - # Poimenujemo stolpce in jih rotiramo za 90 stopinj - colnames(izbor.izvajalci.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - # Generiranje Latex tabele - izbor.izvajalci.redni.tex <- c(capture.output(Hmisc::latex(izbor.izvajalci.redni, - caption="Povpreja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{7.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.izvajalci.redni.tex <- "Ni ocen." - } - - ## izvajalci: izredni tudij ## - if (nrow(izbor.izvajalci.izredni) > 0) { - if (any(is.na(izbor.izvajalci.izredni))) - {opombaIzvIzredni <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.") - } else {opombaIzvIzredni <- "- Podatek je manj pomemben ali teko izraunljiv."} - if (sortByAverage) { - izbor.izvajalci.izredni <- izbor.izvajalci.izredni[order(izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(izbor.izvajalci.izredni) <- formatProgImena(rownames(izbor.izvajalci.izredni), izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ) - } else { # sort by name - izbor.izvajalci.izredni <- izbor.izvajalci.izredni[order(rownames(izbor.izvajalci.izredni), decreasing=FALSE),] - } - izbor.izvajalci.izredni <- rbind(izbor.izvajalci.izredni, colMeans(izbor.izvajalci.izredni, na.rm=TRUE)) - izbor.izvajalci.izredni1 <- formatNA1(izbor.izvajalci.izredni[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$st.stud, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") - izbor.izvajalci.izredni2 <- formatNA(izbor.izvajalci.izredni[6:12], - decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - izbor.izvajalci.izredni <- cbind(izbor.izvajalci.izredni1,izbor.izvajalci.izredni2) - # tevilo vseh IPP fakultete - vsota_IPP.izredni <- sum(izbor.izvajalci.izredni$izvajalec.ocena.SKUPAJ != ".") - 1 - rownames(izbor.izvajalci.izredni)[nrow(izbor.izvajalci.izredni)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_IPP.izredni," IPP)}")) - colnames(izbor.izvajalci.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - izbor.izvajalci.izredni.tex <- c(capture.output(Hmisc::latex(izbor.izvajalci.izredni, - caption="Povpreja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{7.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opombaIzvIzredni, "}}")))) - } else { - izbor.izvajalci.izredni.tex <- "Ni ocen." - } -} else { - izbor.izvajalci.skupaj.tex <- "Ni ocen." - izbor.izvajalci.redni.tex <- "Ni ocen." - izbor.izvajalci.izredni.tex <- "Ni ocen." -} - -## /lecturer course averages/ ## - - -####################### -## course averages ## -####################### -izbor.predmeti <- subset(povprecja.predmeti, predmet.sifra %in% predmeti.izbor) # Izberemo predmete, ki so imeli dovolj enot -if (nrow(izbor.predmeti) > 0) { - - povprecja.predmeti <- povprecja.predmeti[!(is.na(povprecja.predmeti$ime.predmeta)), ] - rownames(izbor.predmeti) <- make.unique(povprecja.predmeti[rownames(izbor.predmeti), "ime.predmeta"]) - - # Loimo povpreje komponent predmetov PRED in PO izpitu na REDNI in IZREDNi TUDIJ, na podalgi katerih nato delamo LATEX tabele - izbor.predmeti.pred.redni <- izbor.predmeti[izbor.predmeti$NACIN_STUDIJA=="1",c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"), - "predmet.ocena.SKUPAJ.pred")] - izbor.predmeti.pred.izredni <- izbor.predmeti[izbor.predmeti$NACIN_STUDIJA=="2", c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"), - "predmet.ocena.SKUPAJ.pred")] - izbor.predmeti.po.redni <- izbor.predmeti[izbor.predmeti$NACIN_STUDIJA=="1", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - izbor.predmeti.po.izredni <- izbor.predmeti[izbor.predmeti$NACIN_STUDIJA=="2", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - - # Oblikovanje podatkov in generiranje Latex tabele za anketno PRED izpitom: REDNI TUDIJ - if (nrow(izbor.predmeti.pred.redni) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.pred.redni))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.","- Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - if (sortByAverage) { - izbor.predmeti.pred.redni <- izbor.predmeti.pred.redni[order(izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ.pred, - izbor.predmeti.pred.redni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.pred.redni) <- formatProgImena(rownames(izbor.predmeti.pred.redni), - izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ.pred) - } else { # sort by name - izbor.predmeti.pred.redni <- izbor.predmeti.pred.redni[order(rownames(izbor.predmeti.pred.redni), decreasing=FALSE),] - } - izbor.predmeti.pred.redni <- rbind(izbor.predmeti.pred.redni, colMeans(izbor.predmeti.pred.redni, na.rm=TRUE)) - #Sivo barvanje - izbor.predmeti.pred.redni1 <- formatNA1(izbor.predmeti.pred.redni[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") #stolpcem 1:5 dodamo sivo barvanje - izbor.predmeti.pred.redni2 <- formatNA(izbor.predmeti.pred.redni[6:13], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], - povprecje.ocen.SKUPAJ.pred=pobarvankaPredmSkupaj), na.repl=".") # preostale vrednosti obarvamo - izbor.predmeti.pred.redni <- cbind(izbor.predmeti.pred.redni1,izbor.predmeti.pred.redni2) #zdruimo - # tevilo vseh predmetov rednega tudija. Insert v tabelo - vsota_predmetov <- sum(izbor.predmeti.pred.redni$predmet.ocena.SKUPAJ.pred != ".")-1 - # Imena vrstic tabele - rownames(izbor.predmeti.pred.redni)[nrow(izbor.predmeti.pred.redni)] <- c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_predmetov, " predmetov)}")) - # Imena stolpcev tabele - colnames(izbor.predmeti.pred.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - # Latex tabela - izbor.predmeti.pred.redni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.pred.redni, - caption="Povpreja \\textbf{predmetov} - (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{6.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.pred.redni.tex <- "Ni ocen." - } - - # Oblikovanje podatkov in generiranje Latex tabele za anketno PRED izpitom: IZREDNI TUDIJ - if (nrow(izbor.predmeti.pred.izredni) > 0) { - # PRED - izredni - if (any(is.na(izbor.predmeti.pred.izredni))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - if (sortByAverage) { - izbor.predmeti.pred.izredni <- izbor.predmeti.pred.izredni[order(izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ.pred, - izbor.predmeti.pred.izredni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.pred.izredni) <- formatProgImena(rownames(izbor.predmeti.pred.izredni), - izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ.pred) - } else { # sort by name - izbor.predmeti.pred.izredni <- izbor.predmeti.pred.izredni[order(rownames(izbor.predmeti.pred.izredni), decreasing=FALSE),] - } - izbor.predmeti.pred.izredni <- rbind(izbor.predmeti.pred.izredni, colMeans(izbor.predmeti.pred.izredni, na.rm=TRUE)) - izbor.predmeti.pred.izredni1 <- formatNA1(izbor.predmeti.pred.izredni[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") #stolpcem 1:5 dodamo sivo barvanje - izbor.predmeti.pred.izredni2 <- formatNA(izbor.predmeti.pred.izredni[6:13], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], - povprecje.ocen.SKUPAJ.pred=pobarvankaPredmSkupaj), na.repl=".") # preostale vrednosti obarvamo - izbor.predmeti.pred.izredni <- cbind(izbor.predmeti.pred.izredni1,izbor.predmeti.pred.izredni2) #zdruimo - # tevilo predmetov izrednega tudija - vsota_izredni <- sum(izbor.predmeti.pred.izredni$predmet.ocena.SKUPAJ.pred != ".") - 1 - # Imena vrstic v tabelah - rownames(izbor.predmeti.pred.izredni)[nrow(izbor.predmeti.pred.izredni)] <- - c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_izredni, " predmetov)}")) - # Imena stolpcev v tabelah - colnames(izbor.predmeti.pred.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - #Generiranje Latex tabele - izbor.predmeti.pred.izredni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.pred.izredni, - caption="Povpreja \\textbf{predmetov} (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{6.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.pred.izredni.tex <- "Ni ocen." - } - - # REDNI TUDIJ - if (nrow(izbor.predmeti.po.redni) > 0) { - # PO - redni - if (any(is.na(izbor.predmeti.po.redni))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."} - if (sortByAverage) { - izbor.predmeti.po.redni <- izbor.predmeti.po.redni[order(izbor.predmeti.po.redni$predmet.ocena.SKUPAJ.po, - izbor.predmeti.po.redni$N_anket_po_izpitu, decreasing=TRUE),] - rownames(izbor.predmeti.po.redni) <- formatProgImena(rownames(izbor.predmeti.po.redni), - izbor.predmeti.po.redni$predmet.ocena.SKUPAJ.po) - } else { # sort by name - izbor.predmeti.po.redni <- izbor.predmeti.po.redni[order(rownames(izbor.predmeti.po.redni), decreasing=FALSE),] - } - izbor.predmeti.po.redni <- rbind(izbor.predmeti.po.redni, colMeans(izbor.predmeti.po.redni, na.rm=TRUE)) - izbor.predmeti.po.redni1 <- formatNA1(izbor.predmeti.po.redni[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") #stolpcem 1:5 dodamo sivo barvanje - izbor.predmeti.po.redni2 <- formatNA(izbor.predmeti.po.redni[6:11], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") # preostale vrednosti obarvamo - izbor.predmeti.po.redni <- cbind(izbor.predmeti.po.redni1,izbor.predmeti.po.redni2) # zdruimo - vsota_predmeti.po <- sum(izbor.predmeti.po.redni$predmet.ocena.SKUPAJ.po != ".") - 1 - rownames(izbor.predmeti.po.redni)[nrow(izbor.predmeti.po.redni)] <- c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_predmeti.po, " predmetov)}")) - colnames(izbor.predmeti.po.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - # Ker elimo da sta v tabelah komponenti UTREZNOST KT in KOMPETENCE prikazani na koncu pred generiranjem tabel spremenimo vrstni red - izbor.predmeti.po.redni <- izbor.predmeti.po.redni[c(1,2,3,4,5,7,8,9,10,6,11)] - # Generiranje LATEX TABELE - izbor.predmeti.po.redni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.redni, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.redni.tex <- "Ni ocen." - } - - # IZREDNI TUDIJ - if (nrow(izbor.predmeti.po.izredni) > 0) { - # PO - izredni - if (any(is.na(izbor.predmeti.po.izredni))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."} - if (sortByAverage) { - izbor.predmeti.po.izredni <- izbor.predmeti.po.izredni[order(izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ.po, - izbor.predmeti.po.izredni$N_anket_po_izpitu, decreasing=TRUE),] - rownames(izbor.predmeti.po.izredni) <- formatProgImena(rownames(izbor.predmeti.po.izredni), - izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ.po) - } else { # sort by name - izbor.predmeti.po.izredni <- izbor.predmeti.po.izredni[order(rownames(izbor.predmeti.po.izredni), decreasing=FALSE),] - } - izbor.predmeti.po.izredni <- rbind(izbor.predmeti.po.izredni, colMeans(izbor.predmeti.po.izredni, na.rm=TRUE)) - izbor.predmeti.po.izredni1 <- formatNA1(izbor.predmeti.po.izredni[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") #stolpcem 1:5 dodamo sivo barvanje - izbor.predmeti.po.izredni2 <- formatNA(izbor.predmeti.po.izredni[6:11], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") # preostale vrednosti obarvamo - izbor.predmeti.po.izredni <- cbind(izbor.predmeti.po.izredni1,izbor.predmeti.po.izredni2) #zdruimo - # tevilo vshe predmetov v anketi PO - vsota_predmeti.po.izr <- sum(izbor.predmeti.po.izredni$predmet.ocena.SKUPAJ.po != ".") - 1 - rownames(izbor.predmeti.po.izredni)[nrow(izbor.predmeti.po.izredni)] <- c(paste0("\\hline \\textbf{Povpreje fakultete (",vsota_predmeti.po.izr, " predmetov)}")) - colnames(izbor.predmeti.po.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - # Uredimo vrstni red, ki ga eimov v tabeli - izbor.predmeti.po.izredni<-izbor.predmeti.po.izredni[c(1,2,3,4,5,7,8,9,10,6,11)] - # Latex tabela - izbor.predmeti.po.izredni.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.izredni, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8.4cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.izredni.tex <- NULL - } - - - ################# - #TUDIJSKA PRAKSA - ################# - #POROILO ZA PREDMETE KI VSEBUJEJO PRAKSO - izbor.predmeti.praksa <- izbor.predmeti[c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$praksa,"_mean"),"predmet.ocena.SKUPAJ.praksa", - "PRAKSA")] - # Zberemo predmete ki imajo tudijsko prakso (izbor.predmeti$PRAKSA==1) - izbor.predmeti.praksa <- izbor.predmeti[izbor.predmeti$PRAKSA==1 , - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$praksa,"_mean"),"predmet.ocena.SKUPAJ.praksa")] - - if (all(!is.na(izbor.predmeti.praksa[1]))) { - if (nrow(izbor.predmeti.praksa) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.praksa))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - if (sortByAverage) { - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa, - izbor.predmeti.praksa$N_anket_po_izpitu, decreasing=TRUE),] - rownames(izbor.predmeti.praksa) <- make.unique(formatProgImena(rownames(izbor.predmeti.praksa), - izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa)) - } else { # sort by name - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(rownames(izbor.predmeti.praksa), decreasing=FALSE),] - } - izbor.predmeti.praksa <- rbind(izbor.predmeti.praksa, - colMeans(izbor.predmeti.praksa[c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$praksa, "_mean"), - "predmet.ocena.SKUPAJ.praksa")], na.rm=TRUE)) - izbor.predmeti.praksa1 <- formatNA1(izbor.predmeti.praksa[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") - izbor.predmeti.praksa2 <- formatNA(izbor.predmeti.praksa[6:15], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$praksa]),decimalkePredmSkupaj), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$praksa], - povprecje.ocen.praksa=pobarvankaPredmSkupaj), na.repl=".") - izbor.predmeti.praksa<-cbind(izbor.predmeti.praksa1,izbor.predmeti.praksa2) - # tevilo predmetov, ki imajo tudijsko prakso - vsota_praks <- sum(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa != ".") - 1 - rownames(izbor.predmeti.praksa)[nrow(izbor.predmeti.praksa)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_praks," tudijskih praks)}")) - colnames(izbor.predmeti.praksa) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])), "\\textbf{Skupaj}")) - izbor.predmeti.praksa.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.praksa, - caption="Povpreja \\textbf{tudijskih praks} (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$praksa)),"|c"), - rowlabel.just="A{6.1cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.praksa.tex <- c("\\newline","\\newline", "Ni ocen za tudijsko prakso.") - } - - } else { - izbor.predmeti.praksa.tex <- c("\\newline","\\newline", "Ni ocen za tudijsko prakso.") - } - ## //TUDIJSKA PRAKSA// ## - - - - # Naredimo e tabelo za anketo PO izpitu, kjer vrednosti v tabelah sortiramo glede na vrednost komponente USTREZNOST KT# - ## DODATNO SORTIJANJE PO USTREZNOSTI KREDITNIH TOK# - # REDNI TUDIJ - izbor.predmeti.po.redni.krediti <- izbor.predmeti[izbor.predmeti$NACIN_STUDIJA=="1", - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po", - "predmet.ocena.krediti_mean")] - - if (nrow(izbor.predmeti.po.redni.krediti) > 0) { - # PO - redni - if (any(is.na(izbor.predmeti.po.redni.krediti))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."} - if (sortbykrediti) { - rownames(izbor.predmeti.po.redni.krediti) <- formatProgImena(rownames(izbor.predmeti.po.redni.krediti), - izbor.predmeti.po.redni.krediti$predmet.ocena.krediti_mean) - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po.redni.krediti[order(izbor.predmeti.po.redni.krediti$predmet.ocena.krediti_mean, - decreasing=TRUE),] - } else { # sort by name - izbor.predmeti.po.redni.krediti <- izbor.predmeti.po.redni.krediti[order(rownames(izbor.predmeti.po.redni.krediti), decreasing=FALSE),] - } - izbor.predmeti.po.redni.krediti <- rbind(izbor.predmeti.po.redni.krediti, colMeans(izbor.predmeti.po.redni.krediti, na.rm=TRUE)) - izbor.predmeti.po.redni.krediti1 <- formatNA1(izbor.predmeti.po.redni.krediti[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") - izbor.predmeti.po.redni.krediti2 <- formatNA(izbor.predmeti.po.redni.krediti[6:11], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), - na.repl=".") - izbor.predmeti.po.redni.krediti <- cbind(izbor.predmeti.po.redni.krediti1,izbor.predmeti.po.redni.krediti2) - vsota_krediti <- sum(izbor.predmeti.po.redni.krediti$predmet.ocena.SKUPAJ.po != ".") - 1 - rownames(izbor.predmeti.po.redni.krediti)[nrow(izbor.predmeti.po.redni.krediti)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_krediti," predmetov)}")) - colnames(izbor.predmeti.po.redni.krediti) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - izbor.predmeti.po.redni.krediti<-izbor.predmeti.po.redni.krediti[c(1,2,3,4,5,7,8,9,10,6,11)] - izbor.predmeti.po.redni.krediti.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.redni.krediti, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.redni.krediti.tex <- "Ni ocen." - } - - - # IZREDNI TUDIJ - izbor.predmeti.po.izredni.krediti <- izbor.predmeti[izbor.predmeti$NACIN_STUDIJA=="2", - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po", - "predmet.ocena.krediti_mean")] - - if (nrow(izbor.predmeti.po.izredni.krediti) > 0) { - # PO - izredni - if (any(is.na(izbor.predmeti.po.izredni.krediti))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.", - "* {\\color{Orange}\\textbf{Oranno}} so oznaena - odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."} - if (sortByAverage) { - izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po.izredni.krediti[order(izbor.predmeti.po.izredni.krediti$predmet.ocena.krediti_mean, - izbor.predmeti.po.izredni.krediti$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.po.izredni.krediti) <- formatProgImena(rownames(izbor.predmeti.po.izredni.krediti), - izbor.predmeti.po.izredni.krediti$predmet.ocena.krediti_mean) - } else { # sort by name - izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po.izredni.krediti[order(rownames(izbor.predmeti.po.izredni.krediti), - decreasing=FALSE),] - } - izbor.predmeti.po.izredni.krediti <- rbind(izbor.predmeti.po.izredni.krediti, colMeans(izbor.predmeti.po.izredni.krediti, na.rm=TRUE)) - izbor.predmeti.po.izredni.krediti1 <- formatNA1(izbor.predmeti.po.izredni.krediti[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), na.repl=".") - izbor.predmeti.po.izredni.krediti2 <- formatNA(izbor.predmeti.po.izredni.krediti[6:11], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), - na.repl=".") - izbor.predmeti.po.izredni.krediti <- cbind(izbor.predmeti.po.izredni.krediti1,izbor.predmeti.po.izredni.krediti2) - vsota_krediti.izr <- sum(izbor.predmeti.po.izredni.krediti[11] != ".") - 1 - rownames(izbor.predmeti.po.izredni.krediti)[nrow(izbor.predmeti.po.izredni.krediti)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",vsota_krediti.izr," predmetov)}")) - colnames(izbor.predmeti.po.izredni.krediti) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - izbor.predmeti.po.izredni.krediti <- izbor.predmeti.po.izredni.krediti[c(1,2,3,4,5,7,8,9,10,6,11)] - izbor.predmeti.po.izredni.krediti.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.po.izredni.krediti, - caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{8cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.po.izredni.krediti.tex <- "Ni ocen." - } - - - ################################ - ##OCENE PROGRAMOV PO PREDMETIH## - ################################ - # ANKETA PRED IZPITOM - progMeanPRED.tmp <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - progMeanPRED.tmp <- cbind(progMeanPRED.tmp, predmet.ocena.SKUPAJ=rowMeans(progMeanPRED.tmp[vars.predmet.vars], na.rm=TRUE)) - rownames(progMeanPRED.tmp) <- progMeanPRED.tmp[rownames(progMeanPRED.tmp),"student.program.ime"] - - if (nrow(progMeanPRED.tmp) > 0 & nrow(proggPRED.tmp1) > 0) { - progMeanPRED.fak.skupaj <- merge(proggPRED.tmp1, progMeanPRED.tmp, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - - if (any(is.na(progMeanPRED.fak.skupaj))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - if ( sortByAverage1) { - rownames(progMeanPRED.fak.skupaj) <- formatProgImena(progMeanPRED.fak.skupaj$program.studentov.ime, progMeanPRED.fak.skupaj$predmet.ocena.SKUPAJ) - progMeanPRED.fak.skupaj <- progMeanPRED.fak.skupaj[order(progMeanPRED.fak.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(progMeanPRED.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(progMeanPRED.fak.skupaj) <- progMeanPRED.fak.skupaj$program.studentov.ime - progMeanPRED.fak.skupaj <- progMeanPRED.fak.skupaj[order(as.character(sapply(rownames(progMeanPRED.fak.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(progMeanPRED.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - progMeanPRED.fak.skupaj <- rbind(progMeanPRED.fak.skupaj, c("-", colMeans(progMeanPRED.fak.skupaj[2:ncol(progMeanPRED.fak.skupaj)], na.rm=TRUE))) - progMeanPRED.fak.skupaj <- formatNA(progMeanPRED.fak.skupaj, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(progMeanPRED.fak.skupaj )[nrow(progMeanPRED.fak.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(progMeanPRED.fak.skupaj ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - progMeanPRED.fak.skupaj.tex <- capture.output(Hmisc::latex(progMeanPRED.fak.skupaj, - caption="Povpreja \\textbf{predmetov} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{", opomba, "}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - progMeanPRED.fak.skupaj.tex <- "Ni ocen." - } - - - - ##ANKETA PO IZPITU## - progMeanPO.tmp <- aggregate(data.predmeti[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - progMeanPO.tmp <- cbind(progMeanPO.tmp, predmet.ocena.SKUPAJ=rowMeans(progMeanPO.tmp[vars.predmet$cont$po[-1]], na.rm=TRUE)) - rownames(progMeanPO.tmp) <- progMeanPO.tmp[rownames(progMeanPO.tmp),"student.program.ime"] - - if (nrow(progMeanPO.tmp) > 0 & !is.null(proggPO.tmp1)) { - progMeanPO.fak.skupaj <- merge(proggPO.tmp1, progMeanPO.tmp, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[c(1,2,3,4,5,6,7,9,8)] - if (any(is.na(progMeanPO.fak.skupaj))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so - oznaena odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} - pa odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."} - - if (sortByAverage1) { - progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[order(progMeanPO.fak.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(progMeanPO.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - rownames(progMeanPO.fak.skupaj) <- formatProgImena(progMeanPO.fak.skupaj$program.studentov.ime, progMeanPO.fak.skupaj$predmet.ocena.SKUPAJ) - } else { # sort by name - rownames(progMeanPO.fak.skupaj) <- progMeanPO.fak.skupaj$program.studentov.ime - progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[order(as.character(sapply(rownames(progMeanPO.fak.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(progMeanPO.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - - } - progMeanPO.fak.skupaj <- rbind(progMeanPO.fak.skupaj, c("-", colMeans(progMeanPO.fak.skupaj[2:ncol(progMeanPO.fak.skupaj)], na.rm=TRUE))) - progMeanPO.fak.skupaj <- formatNA(progMeanPO.fak.skupaj, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(progMeanPO.fak.skupaj)[nrow(progMeanPO.fak.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(progMeanPO.fak.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), - "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[c(1,3,4,5,6,2,7)] - progMeanPO.fak.skupaj.tex <- capture.output(Hmisc::latex(progMeanPO.fak.skupaj, - caption="Povpreja \\textbf{predmetov} po - tudijskih programih (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{", opomba, "}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - progMeanPO.fak.skupaj.tex <- NULL - } - ############################ - - - ################################################################### - #LOENI IZPISI ZA PRVO (DODIPLOMSKI) IN DRUGO (PODIPLOMSKI) STOPNJO - ################################################################### - #FAKULTETA: IZPIS PROGRAMOV ZA PRVO STOPNJO - #DODIPLOMSKI PROGRAM - stopnja_program <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program <- stopnja_program[stopnja_program$N_anket >=minEnot, c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_program) >0) { - stopnja_program <- aggregate(stopnja_program$predmet.sifra, - by=stopnja_program[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - } else {stopnja_program <- stopnja_program} - stopnja_program.pred <- merge(test.pred, stopnja_program, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - - - #ANKETA PRED IZPITOM - program.1stopnja <- aggregate(data.predmeti[vars.predmet.vars], by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja <- cbind(program.1stopnja, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program1 <- stopnja_program - colnames(stopnja_program1)[4] <- "N_anket" - rownames(stopnja_program1) <- stopnja_program1[rownames(stopnja_program1),"student.program.ime"] - - if (nrow(stopnja_program1) > 0 & any(stopnja_program1$STOPNJA==1)) { - program_BD_pred.skupaj <- merge(stopnja_program1, program.1stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_pred.skupaj <- subset(program_BD_pred.skupaj, STOPNJA==1) - program_BD_pred.skupaj <- program_BD_pred.skupaj[, !(colnames(program_BD_pred.skupaj) %in% c("STOPNJA"))] - - # Magistrski - # e se pojavi "Magistrski" v dodiplomskih programih, izloi vrstico, ki vsebuje besedo "Magistrski" - #if (gregexpr(pattern = "Magistrski",program_BD_pred.skupaj$program.studentov.ime)[[1]][1] == 1){ - # program_BD_pred.skupaj<-program_BD_pred.skupaj[- grep("Magistrski", program_BD_pred.skupaj$program.studentov.ime),] - - #} - # /Magistrski # - - st.programov <- length(program_BD_pred.skupaj$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_pred.skupaj) <- formatProgImena(program_BD_pred.skupaj$program.studentov.ime, program_BD_pred.skupaj$predmet.ocena.SKUPAJ) - program_BD_pred.skupaj <- program_BD_pred.skupaj[order(program_BD_pred.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.skupaj) <- program_BD_pred.skupaj$program.studentov.ime - program_BD_pred.skupaj <- program_BD_pred.skupaj[order(as.character(sapply(rownames(program_BD_pred.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.skupaj <- rbind(program_BD_pred.skupaj, c(colMeans(program_BD_pred.skupaj[1:1]), - colMeans(program_BD_pred.skupaj[2:ncol(program_BD_pred.skupaj)], na.rm=TRUE))) - program_BD_pred.skupaj <- formatNA(program_BD_pred.skupaj, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka = c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.skupaj )[nrow(program_BD_pred.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov," programov)}")) - colnames(program_BD_pred.skupaj ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.skupaj.tex <- capture.output(Hmisc::latex(program_BD_pred.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih - programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else {c( - program_BD_pred.skupaj.tex <- "Ni ocen za izraun povpreja \\textbf{predmetov} po tudijskih programih (anketa PRED izpitom) sortirana po \\textbf{Skupaj}") - } - - - - #ANKETA PO IZPITU - stopnja_program.PO <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO <- stopnja_program.PO[stopnja_program.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (any(!is.na(stopnja_program.PO))){ - stopnja_program.PO <- aggregate(stopnja_program.PO$predmet.sifra, - by=stopnja_program.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.pred <- merge(test.po, stopnja_program.PO, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else { stopnja_program.PO <- NULL} - - program.1stopnja.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO <- cbind(program.1stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO1 <- stopnja_program.PO - if (!is.null(stopnja_program.PO1)) { - colnames(stopnja_program.PO1)[4] <- "N_anket" - rownames(program.1stopnja.PO) <- program.1stopnja.PO[rownames(program.1stopnja.PO),"student.program.ime"] - } - - if (nrow(program.1stopnja.PO) > 0 & !is.null(stopnja_program.PO1)) { - program_BD_po.skupaj <- merge(stopnja_program.PO1, program.1stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_po.skupaj <- subset(program_BD_po.skupaj, STOPNJA==1) - } else {program_BD_po.skupaj <- NULL } - - - if (nrow(program.1stopnja.PO) > 0 & nrow(program_BD_po.skupaj) > 0) { - program_BD_po.skupaj <- program_BD_po.skupaj[, !(colnames(program_BD_po.skupaj) %in% c("STOPNJA"))] - program_BD_po.skupaj <- program_BD_po.skupaj[c(1,2,3,4,5,6,7,9,8)] - - st.programov1 <-length(program_BD_po.skupaj$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.skupaj) <- formatProgImena(program_BD_po.skupaj$program.studentov.ime, program_BD_po.skupaj$predmet.ocena.SKUPAJ) - program_BD_po.skupaj <- program_BD_po.skupaj[order(program_BD_po.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj) <- program_BD_po.skupaj$program.studentov.ime - program_BD_po.skupaj <- program_BD_po.skupaj[order(as.character(sapply(rownames(program_BD_po.skupaj))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj <- rbind(program_BD_po.skupaj, c(colMeans(program_BD_po.skupaj[1:1]), - colMeans(program_BD_po.skupaj[2:ncol(program_BD_po.skupaj)], na.rm=TRUE))) - program_BD_po.skupaj <- formatNA(program_BD_po.skupaj, decimalke=c(0,as.numeric(decimalno_mestoPO), - decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - - rownames(program_BD_po.skupaj )[nrow(program_BD_po.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj ) <- - latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), - "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj <-program_BD_po.skupaj[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11.5cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else {c( - program_BD_po.skupaj.tex <- "Ni ocen za izraun povpreja \\textbf{predmetov} po tudijskih programih (anketa PO izpitu) sortirana po \\textbf{Skupaj}") - } - - #ANKETA PO IZPITU SORITRANA PO USTREZNOSTI KREDITNIH TOK - stopnja_program.PO.krediti <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO.krediti <- stopnja_program.PO.krediti[stopnja_program.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_program.PO.krediti) > 0) { - stopnja_program.PO.krediti <- aggregate(stopnja_program.PO.krediti$predmet.sifra, - by=stopnja_program.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.krediti.pred <- merge(test.po, stopnja_program.PO.krediti, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } - - program.1stopnja.PO.krediti <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO.krediti <- cbind(program.1stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO.krediti1 <- stopnja_program.PO.krediti - colnames(stopnja_program.PO.krediti1)[4] <- "N_anket" - rownames(program.1stopnja.PO.krediti) <- program.1stopnja.PO.krediti[rownames(program.1stopnja.PO.krediti),"student.program.ime"] - - - if (nrow(program.1stopnja.PO.krediti) > 0 & nrow(stopnja_program.PO.krediti1) > 0) { - program_BD_po.skupaj.krediti <- merge(stopnja_program.PO.krediti1, program.1stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_po.skupaj.krediti <- subset(program_BD_po.skupaj.krediti, STOPNJA==1) - } else {program_BD_po.skupaj.krediti <- stopnja_program.PO.krediti1} - - if (nrow(program.1stopnja.PO.krediti) > 0 & nrow(program_BD_po.skupaj.krediti) > 0) { - program_BD_po.skupaj.krediti<- program_BD_po.skupaj.krediti[, !(colnames(program_BD_po.skupaj.krediti) %in% c("STOPNJA"))] - program_BD_po.skupaj.krediti<- program_BD_po.skupaj.krediti[c(1,2,3,4,5,6,7,9,8)] - #if (gregexpr(pattern = "Magistrski",program_BD_po.skupaj.krediti$program.studentov.ime)[[1]][1] == 1){ - # program_BD_po.skupaj.krediti<-program_BD_po.skupaj.krediti[- grep("Magistrski", program_BD_po.skupaj.krediti$program.studentov.ime),] - - #} - st.programov1 <- length(program_BD_po.skupaj.krediti$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.skupaj.krediti) <- formatProgImena(program_BD_po.skupaj.krediti$program.studentov.ime, program_BD_po.skupaj.krediti$predmet.ocena.krediti) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[order(program_BD_po.skupaj.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj.krediti) <- program_BD_po.skupaj.krediti$program.studentov.ime - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[order(as.character(sapply(rownames(program_BD_po.skupaj.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj.krediti <- rbind(program_BD_po.skupaj.krediti, c(colMeans(program_BD_po.skupaj.krediti[1:1]), - colMeans(program_BD_po.skupaj.krediti[2:ncol(program_BD_po.skupaj.krediti)], na.rm=TRUE))) - program_BD_po.skupaj.krediti <- formatNA(program_BD_po.skupaj.krediti, decimalke=c(0,as.numeric(decimalno_mestoPO), - decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.skupaj.krediti )[nrow(program_BD_po.skupaj.krediti)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj.krediti ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), - "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj.krediti<-program_BD_po.skupaj.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj.krediti, - caption="Povpreja \\textbf{predmetov} po - tudijskih programih (anketa PO izpitu), - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else {c( - program_BD_po.skupaj.krediti.tex <- "Ni ocen za izraun povpreja \\textbf{predmetov} po tudijskih programih (anketa PO izpitu) sortirana po \\textbf{Ustreznost KT} ") - } - - - - - ################### - ################### - - - - ###FAKULTETA: IZPIS PROGRAMOV ZA DRUGO STOPNJO - #PODIPLOMSKI PROGRAM - stopnja_program_podipl <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl <- stopnja_program_podipl[stopnja_program_podipl$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (nrow(stopnja_program_podipl) > 0) { - stopnja_program_podipl <- aggregate(stopnja_program_podipl$predmet.sifra, - by=stopnja_program_podipl[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - } else {stopnja_program_podipl <- stopnja_program_podipl} - stopnja_program_podipl.pred <- - merge(test.pred, stopnja_program_podipl, by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - - - - #ANKETA PRED IZPITOM - program.2stopnja <- aggregate(data.predmeti[vars.predmet.vars], by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.2stopnja <- cbind(program.2stopnja, predmet.ocena.SKUPAJ=rowMeans(program.2stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program_podipl1 <- stopnja_program_podipl - colnames(stopnja_program_podipl1)[4] <- "N_anket" - rownames(stopnja_program_podipl1) <- stopnja_program_podipl1[rownames(stopnja_program_podipl1),"student.program.ime"] - ##Izloimo Neznan program - stopnja_program_podipl1 <- stopnja_program_podipl1[!stopnja_program_podipl1$program.studentov.ime == "Neznan program", ] - - - if (nrow(stopnja_program_podipl1) > 0 & any(stopnja_program_podipl1$STOPNJA==2)) { - program_BD_pred.podipl <- merge(stopnja_program_podipl1, program.2stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_pred.podipl <- subset(program_BD_pred.podipl, STOPNJA==2) - program_BD_pred.podipl <- program_BD_pred.podipl[, !(colnames(program_BD_pred.podipl) %in% c("STOPNJA"))] - st.programov2 <- length(program_BD_pred.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_pred.podipl) <- formatProgImena(program_BD_pred.podipl$program.studentov.ime, program_BD_pred.podipl$predmet.ocena.SKUPAJ) - program_BD_pred.podipl <- program_BD_pred.podipl[order(program_BD_pred.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.podipl) <- program_BD_pred.podipl$program.studentov.ime - program_BD_pred.podipl <- program_BD_pred.podipl[order(as.character(sapply(rownames(program_BD_pred.podipl),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.podipl <- rbind(program_BD_pred.podipl, c(colMeans(program_BD_pred.podipl[1:1]), - colMeans(program_BD_pred.podipl[2:ncol(program_BD_pred.podipl)], na.rm=TRUE))) - program_BD_pred.podipl <- formatNA(program_BD_pred.podipl, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.podipl )[nrow(program_BD_pred.podipl)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov2," programov)}")) - colnames(program_BD_pred.podipl ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.podipl.tex <- capture.output(Hmisc::latex(program_BD_pred.podipl, - caption="Povpreja \\textbf{predmetov} po - tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else {c( - program_BD_pred.podipl.tex <- "Ni ocen za izraun povpreja \\textbf{predmetov} po tudijskih programih (anketa PRED izpitom) sortirana po \\textbf{Skupaj}") - } - ############### - - - #ANKETA PO IZPITU - stopnja_program_podipl.PO <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov","program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO <- stopnja_program_podipl.PO[stopnja_program_podipl.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_program_podipl.PO) > 0) { - stopnja_program_podipl.PO <- aggregate(stopnja_program_podipl.PO$predmet.sifra, - by=stopnja_program_podipl.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.pred <- merge(test.po, stopnja_program_podipl.PO, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } - - program.22stopnja.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO <- cbind(program.22stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO1 <- stopnja_program_podipl.PO - colnames(stopnja_program_podipl.PO1)[4] <- "N_anket" - rownames(program.22stopnja.PO) <- program.22stopnja.PO[rownames(program.22stopnja.PO),"student.program.ime"] - - if (nrow(program.22stopnja.PO) > 0 & nrow(stopnja_program_podipl.PO1)>0) { - program_BD_po.podipl <- merge(stopnja_program_podipl.PO1, program.22stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_po.podipl <- subset(program_BD_po.podipl, STOPNJA==2) - } else {program_BD_po.podipl <- stopnja_program_podipl.PO} - - if (nrow(program_BD_po.podipl) > 0 & !is.null(program_BD_po.podipl)) { - program_BD_po.podipl <- program_BD_po.podipl[, !(colnames(program_BD_po.podipl) %in% c("STOPNJA"))] - program_BD_po.podipl <- program_BD_po.podipl[c(1,2,3,4,5,6,7,9,8)] - st.programov3 <- length(program_BD_po.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl) <- - formatProgImena(program_BD_po.podipl$program.studentov.ime, program_BD_po.podipl$predmet.ocena.SKUPAJ) - program_BD_po.podipl <- program_BD_po.podipl[order(program_BD_po.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl) <- program_BD_po.podipl$program.studentov.ime - program_BD_po.podipl <- program_BD_po.podipl[order(as.character(sapply(rownames(program_BD_po.podipl))), decreasing=FALSE), - !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl <- rbind(program_BD_po.podipl, c(colMeans(program_BD_po.podipl[1:1]), - colMeans(program_BD_po.podipl[2:ncol(program_BD_po.podipl)], na.rm=TRUE))) - program_BD_po.podipl <- formatNA(program_BD_po.podipl, decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj, - as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl )[nrow(program_BD_po.podipl)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), - "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl<-program_BD_po.podipl[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.tex <- capture.output(Hmisc::latex(program_BD_po.podipl, - caption="Povpreja \\textbf{predmetov} po - tudijskih programih (anketa PO izpitu), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11.5cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else {c( - program_BD_po.podipl.tex <- "Ni ocen za izraun povpreja \\textbf{predmetov} po tudijskih programih (anketa PO izpitu) sortirana po \\textbf{Skupaj}") - } - - - #ANKETA PO IZPITU SORTIRANA PO USTRETNOSTI KREDITNIH TOK - stopnja_program_podipl.PO.krediti <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO.krediti <- stopnja_program_podipl.PO.krediti[stopnja_program_podipl.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_program_podipl.PO.krediti) > 0) { - stopnja_program_podipl.PO.krediti <- aggregate(stopnja_program_podipl.PO.krediti$predmet.sifra, - by=stopnja_program_podipl.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.krediti.pred <- merge(test.po, stopnja_program_podipl.PO.krediti, by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } - - program.22stopnja.PO.krediti <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO.krediti <- cbind(program.22stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO.krediti1 <- stopnja_program_podipl.PO.krediti - colnames(stopnja_program_podipl.PO.krediti1)[4] <- "N_anket" - rownames(program.22stopnja.PO.krediti) <- program.22stopnja.PO.krediti[rownames(program.22stopnja.PO.krediti),"student.program.ime"] - - if (nrow(program.22stopnja.PO.krediti) > 0 & nrow(stopnja_program_podipl.PO.krediti1) > 0) { - program_BD_po.podipl.krediti <- merge(stopnja_program_podipl.PO.krediti1, program.22stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - program_BD_po.podipl.krediti <- subset(program_BD_po.podipl.krediti, STOPNJA==2) - } else {program_BD_po.podipl.krediti <- stopnja_program_podipl.PO.krediti1} - - - if (nrow(program_BD_po.podipl.krediti) > 0 & !is.null(program_BD_po.podipl.krediti)) { - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[, !(colnames(program_BD_po.podipl.krediti) %in% c("STOPNJA"))] - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[c(1,2,3,4,5,6,7,9,8)] - st.programov3 <- length(program_BD_po.podipl.krediti$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl.krediti) <- formatProgImena(program_BD_po.podipl.krediti$program.studentov.ime, program_BD_po.podipl.krediti$predmet.ocena.krediti) - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[order(program_BD_po.podipl.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl.krediti) <- program_BD_po.podipl.krediti$program.studentov.ime - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[order(as.character(sapply(rownames(program_BD_po.podipl.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl.krediti <- rbind(program_BD_po.podipl.krediti, c(colMeans(program_BD_po.podipl.krediti[1:1]), - colMeans(program_BD_po.podipl.krediti[2:ncol(program_BD_po.podipl.krediti)], na.rm=TRUE))) - program_BD_po.podipl.krediti <- formatNA(program_BD_po.podipl.krediti, decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj, - as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl.krediti )[nrow(program_BD_po.podipl.krediti)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl.krediti ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.podipl.krediti, - caption="Povpreja \\textbf{predmetov} po - tudijskih programih (anketa PO izpitu), - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else {c( - program_BD_po.podipl.krediti.tex <- "Ni ocen za izraun povpreja \\textbf{predmetov} po tudijskih programih (anketa PO izpitu) sortirana po \\textbf{Ustreznost KT}") - } - ##################### - ####################### - #/LOENI IZPISI ZA PRVO IN DRUGO STOPNJA/# - - vsota.izvajalcev <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$"N_anket" >= minEnot, - c("izvajalec.sifra", "program.studentov", "program.studentov.ime")] - if (!is.null(vsota.izvajalcev)) { - st.izvajalcev.fak1 <- aggregate(vsota.izvajalcev$izvajalec.sifra, - by=vsota.izvajalcev[c("program.studentov","program.studentov.ime")], FUN=function(x) length(unique(x))) - } - ## - #Poiemo samo veljavne izvajalce po katerih bomo raunali povpreja - izv.vel <- data.izvajalci[data.izvajalci$veljavna,] - izv.vel1 <- aggregate(izv.vel[vars.izvajalec$cont$vars], by=izv.vel[c("student.program.ime")], FUN=mean, na.rm=TRUE) - izv.popv <- cbind(izv.vel1, izvajalec.ocena.SKUPAJ=rowMeans(izv.vel1[vars.izvajalec$cont$vars], na.rm=TRUE)) - - - if (nrow(izv.predmet) > 0) { - izv.predmet.skupaj <- merge(izv.popv, st.izvajalcev.fak1, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - izv.predmet.skupaj <- izv.predmet.skupaj[c("x","student.program.ime","program.studentov",vars.izvajalec$cont$vars,"izvajalec.ocena.SKUPAJ")] - - if (sortByAverage) { - rownames(izv.predmet.skupaj) <- formatProgImena(izv.predmet.skupaj$student.program.ime, izv.predmet.skupaj$izvajalec.ocena.SKUPAJ) - izv.predmet.skupaj <- izv.predmet.skupaj[order(izv.predmet.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(izv.predmet.skupaj) %in% c("program.studentov","student.program.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(izv.predmet.skupaj) <- izv.predmet.skupaj$student.program.ime - izv.predmet.skupaj <- izv.predmet.skupaj[order(as.character(sapply(rownames(izv.predmet.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(izv.predmet.skupaj) %in% c("program.studentov","student.program.ime"))] # sort and drop unneeded columns - } - izv.predmet.skupaj <- rbind(izv.predmet.skupaj, c(colMeans(izv.predmet.skupaj[1:1]), - colMeans(izv.predmet.skupaj[2:ncol(izv.predmet.skupaj)], na.rm=TRUE))) - izv.predmet.skupaj <- formatNA(izv.predmet.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(izv.predmet.skupaj )[nrow(izv.predmet.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(izv.predmet.skupaj ) <- latex.rotate(c("t. izvajalcev", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - izv.predmet.skupaj.tex <- capture.output(Hmisc::latex(izv.predmet.skupaj, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - }else { - izv.predmet.skupaj.tex <- NULL - } - - - - ########################## - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA - - - if (nrow(izv.predmet) > 0 & nrow(proggIZ.tmp) > 0) { - stopnja_izvajalec.skupaj <- merge(proggIZ.tmp, progMeanIzv.fak1,by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra", "student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.skupaj <- merge(stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], - by="program.studentov.ime", sort=FALSE) - - dodiplomski_studij <- stopnja_izvajalec.skupaj - - stopnja_izvajalec.skupaj <- subset(stopnja_izvajalec.skupaj, STOPNJA==1) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[, !(colnames(stopnja_izvajalec.skupaj) %in% c("STOPNJA"))] - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - #if (gregexpr(pattern = "Magistrski",stopnja_izvajalec.skupaj$program.studentov.ime)[[1]][1] == 1){ - # stopnja_izvajalec.skupaj<-stopnja_izvajalec.skupaj[- grep("Magistrski", stopnja_izvajalec.skupaj$program.studentov.ime),] - - #} - st.programov4 <- length(stopnja_izvajalec.skupaj$program.studentov.ime) - } else {dodiplomski_studij$STOPNJA <- NULL} - - if (nrow(izv.predmet) > 0 & any(dodiplomski_studij$STOPNJA==1)) { - if (sortByAverage) { - rownames(stopnja_izvajalec.skupaj) <- formatProgImena(stopnja_izvajalec.skupaj$program.studentov.ime, stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[order(stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.skupaj) <- stopnja_izvajalec.skupaj$program.studentov.ime - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[order(as.character(sapply(rownames(stopnja_izvajalec.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.skupaj <- rbind(stopnja_izvajalec.skupaj, c(colMeans(stopnja_izvajalec.skupaj[1:1]), - colMeans(stopnja_izvajalec.skupaj[2:ncol(stopnja_izvajalec.skupaj)], na.rm=TRUE))) - stopnja_izvajalec.skupaj <- formatNA(stopnja_izvajalec.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.skupaj )[nrow(stopnja_izvajalec.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov4," programov)}")) - colnames(stopnja_izvajalec.skupaj ) <- latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.skupaj.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.skupaj, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh izvajalcev - pri predmetih na doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else {c( - stopnja_izvajalec.skupaj.tex <- - "Ni ocen za izraun povpreja \\textbf{izvajalcev pri predmetih} po tudijskih programih (anketa PRED izpitom) sortirana po \\textbf{Skupaj}") - } - ###/IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA/### - - - - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA### - if (nrow(izv.predmet) > 0) { - stopnja_izvajalec.podipl <- merge(proggIZ.tmp, progMeanIzv.fak1,by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.podipl <- merge(stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], - by="program.studentov.ime", sort=FALSE) - - podiplomski_studij <- stopnja_izvajalec.podipl - - stopnja_izvajalec.podipl <- subset(stopnja_izvajalec.podipl, STOPNJA==2) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[, !(colnames(stopnja_izvajalec.podipl) %in% c("STOPNJA"))] - stopnja_izvajalec.podipl <- - stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[!stopnja_izvajalec.podipl$program.studentov.ime == "Neznan program", ] - st.programov5<-length(stopnja_izvajalec.podipl$program.studentov.ime) - } else {podiplomski_studij <- NULL - podiplomski_studij$STOPNJA <- NULL} - - - if (nrow(izv.predmet) > 0 & any(podiplomski_studij$STOPNJA==2)) { - if (sortByAverage) { - rownames(stopnja_izvajalec.podipl) <- formatProgImena(stopnja_izvajalec.podipl$program.studentov.ime, stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[order(stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.podipl) <- stopnja_izvajalec.podipl$program.studentov.ime - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[order(as.character(sapply(rownames(stopnja_izvajalec.podipl), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.podipl <- rbind(stopnja_izvajalec.podipl, c(colMeans(stopnja_izvajalec.podipl[1:1]), - colMeans(stopnja_izvajalec.podipl[2:ncol(stopnja_izvajalec.podipl)], na.rm=TRUE))) - stopnja_izvajalec.podipl <- formatNA(stopnja_izvajalec.podipl, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.podipl )[nrow(stopnja_izvajalec.podipl)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov5," programov)}")) - colnames(stopnja_izvajalec.podipl ) <- latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.podipl.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.podipl, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh izvajalcev - pri predmetih na doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else {c( - stopnja_izvajalec.podipl.tex <- "Ni ocen za izraun povpreja \\textbf{izvajalcev pri predmetih} po tudijskih programih (anketa PRED izpitom) sortirana po \\textbf{Skupaj}") - } - ###/IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA/### - - - - - #####SKUPNE OCENE IZVAJALCEV PRI PROGRAMIH ZA PODIPLOMSKI TUDIJ - vsota.izvajalcev <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$"N_anket" >= minEnot, - c("izvajalec.sifra", "program.studentov", "program.studentov.ime")] - - if (!is.null(vsota.izvajalcev)) { - st.izvajalcev.fak1 <- aggregate(vsota.izvajalcev$izvajalec.sifra, - by=vsota.izvajalcev[c("program.studentov","program.studentov.ime")], - FUN=function(x) length(unique(x))) - } - stopnja_izvajalec <- merge(povprecja.izvajalci[c("predmet.sifra","STOPNJA")], - povprecja.izvajalci.programi[c("predmet.sifra",paste0(vars.izvajalec$cont$vars,"_mean"), - "program.studentov","program.studentov.ime","N_anket")], - by="predmet.sifra", sort=FALSE) - stopnja_izvajalec <- stopnja_izvajalec[stopnja_izvajalec$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_izvajalec) > 0) { - stopnja_izvajalec <- aggregate(stopnja_izvajalec$predmet.sifra, - by=stopnja_izvajalec[c("program.studentov","program.studentov.ime","STOPNJA")], - function(x) length(unique(x))) - } else {stopnja_izvajalec <- stopnja_izvajalec} - - if (!is.null(st.izvajalcev.fak1)) { - stopnja_izvajalec.1_stopnja <- merge(st.izvajalcev.fak1, stopnja_izvajalec, by="program.studentov.ime", all=TRUE) - } - - if (!is.null(st.izvajalcev.fak1)){ - program_izvajalcev <- merge(st.izvajalcev.fak1,progMeanIzv.fak1, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - rownames(program_izvajalcev) <- program_izvajalcev[rownames(program_izvajalcev),"program.studentov.ime"] - ##Izloimo Neznan program - program_izvajalcev <- program_izvajalcev[!program_izvajalcev$program.studentov.ime == "Neznan program", ] - } else {program_izvajalcev <- vsota.izvajalcev} - - - if (nrow(program_izvajalcev) > 0) { - program_izvajalcev.skupaj <- merge(program_izvajalcev, stopnja_izvajalec.1_stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("program.studentov.x","program.studentov.ime"), all=TRUE, sort=FALSE) - program_izvajalcev.skupaj <- subset(program_izvajalcev.skupaj, STOPNJA==2) - } else {program_izvajalcev.skupaj <- program_izvajalcev} - - - if (nrow(program_izvajalcev.skupaj) > 0 & !is.null(program_izvajalcev.skupaj)) { - program_izvajalcev.skupaj <- program_izvajalcev.skupaj[, !(colnames(program_izvajalcev.skupaj) %in% - c("program.studentov", "STOPNJA", - "N_anket.y", "N_anket", "x.x", - "program.studentov.y", "STOPNJA.y", - "x.y","izvajalec.sifra","STOPNJA.x"))] - if (sortByAverage) { - rownames(program_izvajalcev.skupaj) <- formatProgImena(program_izvajalcev.skupaj$program.studentov.ime, program_izvajalcev.skupaj$izvajalec.ocena.SKUPAJ) - program_izvajalcev.skupaj <- program_izvajalcev.skupaj[order(program_izvajalcev.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_izvajalcev.skupaj) %in% c("program.studentov.ime","program.studentov", - "STOPNJA", "N_anket.y", "N_anket", "x.x", - "program.studentov.y", "STOPNJA.y","x.y", - "izvajalec.sifra","STOPNJA.x"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_izvajalcev.skupaj) <- program_izvajalcev.skupaj$program.studentov.ime - program_izvajalcev.skupaj <- program_izvajalcev.skupaj[order(as.character(sapply(rownames(program_izvajalcev.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(program_izvajalcev.skupaj) %in% - c("program.studentov.ime","program.studentov", - "STOPNJA", "N_anket.y", "N_anket", "x.x", - "program.studentov.y", "STOPNJA.y","x.y", - "izvajalec.sifra","STOPNJA.x"))] # sort and drop unneeded columns - } - program_izvajalcev.skupaj <- rbind(program_izvajalcev.skupaj, c(colMeans(program_izvajalcev.skupaj[1:1]), - colMeans(program_izvajalcev.skupaj[2:ncol(program_izvajalcev.skupaj)], na.rm=TRUE))) - program_izvajalcev.skupaj <- formatNA(program_izvajalcev.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_izvajalcev.skupaj )[nrow(program_izvajalcev.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(program_izvajalcev.skupaj ) <- latex.rotate(c("t. izvajalcev", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program_izvajalcev.skupaj.tex <- capture.output(Hmisc::latex(program_izvajalcev.skupaj, - caption="Povpreja \\textbf{izvajalcev} po - tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - }else { - program_izvajalcev.skupaj.tex <- "Ni ocen." - } - - #//####SKUPNE OCENE IZVAJALCEV PRI PROGRAMIH ZA PODIPLOMSKI TUDIJ //# - - - - #####SKUPNE OCENE IZVAJALCEV PRI PROGRAMIH ZA DODIPLOMSKI TUDIJ (IPP) - vsota.izvajalcev.dodi <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$"N_anket" >= minEnot, - c("izvajalec.sifra", "program.studentov", "program.studentov.ime")] - - if (nrow(vsota.izvajalcev.dodi) > 0) { - st.izvajalcev.fak2 <- aggregate(vsota.izvajalcev.dodi$izvajalec.sifra, - by=vsota.izvajalcev.dodi[c("program.studentov","program.studentov.ime")], FUN=function(x) length(unique(x))) - } - - stopnja_izvajalec.dodi <- merge(povprecja.izvajalci[c("predmet.sifra","STOPNJA")], - povprecja.izvajalci.programi[c("predmet.sifra",paste0(vars.izvajalec$cont$vars,"_mean"), - "program.studentov","program.studentov.ime","N_anket")], - by="predmet.sifra", sort=FALSE) - stopnja_izvajalec.dodi <- stopnja_izvajalec.dodi[stopnja_izvajalec.dodi$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_izvajalec.dodi) > 0) { - stopnja_izvajalec.dodi <- aggregate(stopnja_izvajalec.dodi$predmet.sifra, - by=stopnja_izvajalec.dodi[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - - stopnja_izvajalec.dodi.1_stopnja <- merge(st.izvajalcev.fak2, stopnja_izvajalec.dodi, by="program.studentov.ime", all=TRUE) - program_izvajalcev.dodi <- merge(st.izvajalcev.fak2,progMeanIzv.fak1, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - rownames(program_izvajalcev.dodi) <- program_izvajalcev.dodi[rownames(program_izvajalcev.dodi),"program.studentov.ime"] - } else {program_izvajalcev.dodi <- vsota.izvajalcev.dodi} - - if (nrow(program_izvajalcev.dodi) > 0) { - program_izvajalcev.dodi.skupaj <- merge(program_izvajalcev.dodi, stopnja_izvajalec.dodi.1_stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("program.studentov.x","program.studentov.ime"), all=TRUE, sort=FALSE) - program_izvajalcev.dodi.skupaj<-subset(program_izvajalcev.dodi.skupaj, STOPNJA==1) - } else {program_izvajalcev.dodi.skupaj <- vsota.izvajalcev.dodi} - - if (nrow(program_izvajalcev.dodi.skupaj) > 0 & !is.null(program_izvajalcev.dodi.skupaj)) { - program_izvajalcev.dodi.skupaj <- program_izvajalcev.dodi.skupaj[, !(colnames(program_izvajalcev.dodi.skupaj) %in% - c("program.studentov", "STOPNJA", "N_anket.y", "N_anket", "x.x", "program.studentov.y", "STOPNJA.y","x.y","izvajalec.sifra","STOPNJA.x"))] - if (sortByAverage) { - rownames(program_izvajalcev.dodi.skupaj) <- formatProgImena(program_izvajalcev.dodi.skupaj$program.studentov.ime, program_izvajalcev.dodi.skupaj$izvajalec.ocena.SKUPAJ) - program_izvajalcev.dodi.skupaj <- program_izvajalcev.dodi.skupaj[order(program_izvajalcev.dodi.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_izvajalcev.dodi.skupaj) %in% c("program.studentov.ime","program.studentov", "STOPNJA", "N_anket.y", "N_anket", "x.x", "program.studentov.y", "STOPNJA.y","x.y","izvajalec.sifra","STOPNJA.x"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_izvajalcev.dodi.skupaj) <- program_izvajalcev.dodi.skupaj$program.studentov.ime - program_izvajalcev.dodi.skupaj <- program_izvajalcev.dodi.skupaj[order(as.character(sapply(rownames(program_izvajalcev.dodi.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(program_izvajalcev.dodi.skupaj) %in% - c("program.studentov.ime","program.studentov", "STOPNJA", "N_anket.y", "N_anket", "x.x", "program.studentov.y", "STOPNJA.y","x.y","izvajalec.sifra","STOPNJA.x"))] # sort and drop unneeded columns - } - program_izvajalcev.dodi.skupaj <- rbind(program_izvajalcev.dodi.skupaj, c(colMeans(program_izvajalcev.dodi.skupaj[1:1]), - colMeans(program_izvajalcev.dodi.skupaj[2:ncol(program_izvajalcev.dodi.skupaj)], na.rm=TRUE))) - program_izvajalcev.dodi.skupaj <- formatNA(program_izvajalcev.dodi.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_izvajalcev.dodi.skupaj )[nrow(program_izvajalcev.dodi.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(program_izvajalcev.dodi.skupaj ) <- latex.rotate(c("t. izvajalcev", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program_izvajalcev.dodi.skupaj.tex <- capture.output(Hmisc::latex(program_izvajalcev.dodi.skupaj, - caption="Povpreja \\textbf{izvajalcev} po - tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{11cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - }else { - program_izvajalcev.dodi.skupaj.tex <- "Ni ocen." - } - #//####SKUPNE OCENE IZVAJALCEV PRI PROGRAMIH ZA DODIPLOMSKI TUDIJ //# - - ## //OCENE PROGRAMOV PO PREDMETIH// ## - - -} else { - izbor.predmeti.pred.redni.tex <- "Ni ocen." - izbor.predmeti.pred.izredni.tex <- "Ni ocen." - izbor.predmeti.po.redni.tex <- "Ni ocen." - izbor.predmeti.po.izredni.tex <- NULL - izbor.predmeti.po.redni.krediti.tex<- "Ni ocen." - izbor.predmeti.po.izredni.krediti.tex <- "Ni ocen." - progMeanPRED.fak.skupaj.tex <- "Ni ocen." - progMeanPO.fak.skupaj.tex <- "Ni ocen." - izbor.predmeti.praksa.tex <- "Ni ocen." - izv.predmet.skupaj.tex <- "Ni ocen." - program_BD_pred.skupaj.tex<- "Ni ocen." - program_BD_po.skupaj.tex<- "Ni ocen." - program_BD_po.podipl.tex <- "Ni ocen." - program_BD_pred.podipl.tex <- "Ni ocen." - stopnja_izvajalec.skupaj.tex<- "Ni ocen." - stopnja_izvajalec.podipl.tex <- "Ni ocen." - program_izvajalcev.skupaj.tex <- "Ni ocen." - program_izvajalcev.dodi.skupaj.tex <- "Ni ocen." - program_BD_po.podipl.krediti.tex <- "Ni ocen." -} -## /course averages/ ## - - -################## -# GENERIRANJE PDF# -################## -tex.glava <- scan("Evalvacija/latexkosi/a-glava-program.tex", character(0), sep="\n", quiet=TRUE, encoding='UTF-8') -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) # tudijsko leto -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.glava <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) # Naslov poroila na prvi strani -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE) -Rdirektorij <- getwd() - -# Povpreja izvajalcev fakultete, ki ga nato zapiemo v podatkovni okvir izbor.tex -izvajalci.tex<- c("\\chapter{Povpreja po izvajalcih}", - paste("Pri izraunu povpreij za izvajalce imajo vsi predmeti (redni in izredni) enako teo, - ne glede na tevilo tudentov. V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je - tevilo vseh predmetov izvajalca, kjer so na anketo odgovarjali vsaj", minEnot, "tudenti. - Ocene pod 4.0 so obarvane {\\color{Orange}\\textbf{oranno}}, ocene pod 3.0 pa - {\\color{BrickRed}\\textbf{rdee}}. Podrobnosti so v metodolokih navodilih na koncu - poroila in na \\url{http://ul.1ka.si/metodologija}."), - izbor.izvajalci.skupaj.tex) -## //Povpreja izvajalcev fakultete// ## - -# Posamezne latex tabele sestavimo v celoto <- izbor.tex, na podalgi katere nastane PDF poroilo -izbor.tex <- c( - "\\chapter{Redni tudij}","\\renewcommand{\\leftmark}{Predmeti - redni tudij}", - paste("Prikazana so povpreja za ocene komponent na skalah 1-5 za vse predmete z vsaj 4 odgovori. - Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno}}, povpreja pod 3.0 - pa {\\color{BrickRed}\\textbf{rdee}}. Nizko tevilo enot in neugodne stopnje sodelovanja - so oznaene z enojnim oklepajem () oziroma z dvojnim oklepajem (()). Podrobnosti so v metodolokih - navodilih na koncu poroila in na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki."), - "\\section{Predmeti}", - "\\subsection{Anketa PRED izpitom}", izbor.predmeti.pred.redni.tex, "\\newpage","\\subsection{Anketa PO izpitu}", - izbor.predmeti.po.redni.tex, "\\newpage", izbor.predmeti.po.redni.krediti.tex,"\\newpage", - "\\renewcommand{\\leftmark}{Izvajalci pri predmetih - redni tudij}", - "\\section{Izvajalci pri predmetih}", izbor.izvajalci.redni.tex, - "\\chapter{Izredni tudij}","\\renewcommand{\\leftmark}{Predmeti - izredni tudij}", - if (izbor.predmeti.pred.izredni.tex != "Ni ocen." && !is.null(izbor.predmeti.po.izredni.tex) && izbor.izvajalci.izredni.tex != "Ni ocen."){ - c("\\section{Predmeti}","\\subsection{Anketa PRED izpitom}", izbor.predmeti.pred.izredni.tex, - "\\newpage","\\subsection{Anketa PO izpitu}", izbor.predmeti.po.izredni.tex,"\\newpage", - izbor.predmeti.po.izredni.krediti.tex, "\\newpage", - "\\renewcommand{\\leftmark}{Izvajalci pri predmetih - izredni tudij}", - "\\section{Izvajalci pri predmetih}", izbor.izvajalci.izredni.tex) - } else {"Ni ocen za izredni tudij."},"\\newpage", - "\\renewcommand{\\leftmark}{Povpreja po izvajalcih}", izvajalci.tex, - "\\chapter{tudijska praksa}","\\renewcommand{\\leftmark}{tudijska praksa}", - paste("Za evalvacijo tudijske prakse, velja enaka metodologija kot za anketo - PO izpitu, le komponente (vpraanja) so bile specifine. - Podrobnosti so na \\url{http://ul.1ka.si/praksa}."), - izbor.predmeti.praksa.tex, "\\newpage", - "\\chapter{Povpreja po tudijskih programih}","\\renewcommand{\\leftmark}{tudijski programi}", - paste("Izraunana so povpreja po vseh predmetih (oziroma po vseh izvedbah pri predmetih), - rednih in izrednih, ki so jih ocenjevali tudenti doloenega tudijskega programa. - Predmeti z veliko in malo tudenti imajo enako teo. V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je - skupno tevilo predmetov (oziroma izvajalcev pri predmetih), kjer so odgovarjali vsaj", minEnot, "tudenti. - Med predmete doloenega programa so vkljueni tudi prosto izbirni predmeti (oziroma izvajalci pri predmetih) - drugim programov (e so jih izbrali tudenti). Opozorilo: V primeru, da je zaradi majhnega tevila enot v oceno - programa vkljueno malo predmetov (npr. 1 ali 2) potem so take ocene manj natanne."), - "\\section{Dodiplomski tudij}", - program_BD_pred.skupaj.tex,"\\newpage",program_BD_po.skupaj.tex,"\\newpage",program_BD_po.skupaj.krediti.tex, - "\\newpage",stopnja_izvajalec.skupaj.tex,"\\newpage","\\section{Podiplomski tudij}",program_BD_pred.podipl.tex, - "\\newpage",program_BD_po.podipl.tex,"\\newpage",program_BD_po.podipl.krediti.tex,"\\newpage", - stopnja_izvajalec.podipl.tex,"\\newpage") -# Posamezne latex tabele sestavimo v celoto - -# Sestavimo LATEX DOKUMENT, KI GA NATO ZAPIEMO V PDF: GLAVA(tex.glava), NAE VREDNOSTI OZ LATEX TABELE S TEKSTOM (izbor.tex), -# METODOLOKO POJASNILO NA KONCU (tex.okvir) in zakljuim dokument z tex.noga -tex.izbor <- c(tex.glava,"\\setlength{\\tabcolsep}{4pt}", - izbor.tex,"\\newpage", "\\renewcommand{\\leftmark}{Metodoloko pojasnilo}", - tex.okvir, - tex.noga) - -tex.izbor <- gsub('(continued)', '(nadaljevanje)', tex.izbor, fixed=TRUE) # Ker uporabljamo ukaz LONGTABLE, se pri lomljenju tabel pojavlja -# angleka beseda continued, ki jo zamenjanjamo z besedo nadaljevanje. - - -if (sortByAverage) {sortiranjetext <- "po_povprecju"} else {sortiranjetext <- "po_imenih"} # Ime PDF datoteke_ Fakultete_slupaj po povpreju -setwd(paste(Rdirektorij, "Evalvacija/results", sep="/")) -# Outputs the objects, concatenating the representations. cat performs much less conversion than print. -cat(tex.izbor, file=paste0("fakulteta_skupaj_", sortiranjetext,"_", fakulteta, ".tex"), sep="\n") -# ZAPIEMO tex format v PDF -tools::texi2pdf(file=paste0("fakulteta_skupaj_", sortiranjetext,"_", fakulteta, ".tex"), quiet=TRUE, clean=TRUE) -setwd(Rdirektorij) - - - - - - - - - - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_izvajalec_predmet.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_izvajalec_predmet.R deleted file mode 100644 index aac7fca02..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_izvajalec_predmet.R +++ /dev/null @@ -1,2804 +0,0 @@ -# Del, ki ga potrebuje Peter za delovanje kode na streniku 1KA. Za izpis poroil v Rstudiu tega ne poganjamo -#params <- commandArgs(trailingOnly=TRUE) -#ID <- params[1] -# sesionID <- params[2] -## //1KA strenik// ## - -# Run first -#source("Evalvacija/R/koda.r") -semester.leto <- "tudijsko leto 2016/17" # Prikaz na prvi strani PDF poroila pod naslovom in v nogi -omejeniIzvajalci <- FALSE -part <- NULL -############## -## izvajalec -############# -# omejeniIzvajalci v primeru da se generira samo poroila za doloene izvajalce; naredi se tudi za vse soizvajalce pri vseh njihovih predemtih + -# (za primere kjer je nosilec v omejeniIzvajalciSifre) -# Spremenljivka omejeniIzvajalci je definirana v skripti navodila_dodatno-UTF-8.r -if (omejeniIzvajalci) { - omejeniPredmetiSifre <- data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% omejeniIzvajalciSifre] - sifreIzvajalec <- as.character(unique(data.izvajalci$izvajalec.sifra[data.izvajalci$predmet.sifra %in% omejeniPredmetiSifre])) -} else {sifreIzvajalec <- as.character(unique(data.izvajalci$izvajalec.sifra))} - -izvajalci <- NULL -izvajalci_program <- NULL # Povpreja za ocene komponent vseh programov, v katerih je izvajalec sodeloval - -# Zanka, ki generira poroila za vse unikatne ifre izvajalcev, ki so v sifreIzvajalec -for (izvajalec in sifreIzvajalec) { - # indeks izvajalcev z imeni in predmeti po ifrah izvajalcev - ime.izvajalca <- sifrant[sifrant$IDPEDAGOGA==izvajalec, 'NAZIV.PEDAGOGA'][1] # Ime izvajalca - if (is.na(ime.izvajalca)) { - warning(paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!'), immediate.=TRUE) - ime.izvajalca <- paste('Izvajalca', izvajalec, 'ni v ifrantu predmetov!') - } - - # izvajalec in Povpreje predmeta / predmetov - izvajalci[[izvajalec]] <- list(ime=ime.izvajalca, - predmeti=as.character(unique(subset(povprecja.izvajalci, izvajalec.sifra==izvajalec)$predmet.sifra)), - ime.datoteke=paste('izvajalec_', izvajalec, '.pdf', sep='')) - - # Povpreje izvajalca: tudijski program (Uporabimo pri poroilu izvajalca in sicer poglavje: Sumarne tudijske ocene programov) - izvajalci_program[[izvajalec]] <- list(ime=ime.izvajalca, - predmeti=as.character(unique(subset(povprecja.izvajalci.programi, izvajalec.sifra==izvajalec)$predmet.sifra)), - ime.datoteke=paste('izvajalec_', izvajalec, '.pdf', sep='')) - - - # Analize za vse predmete, ki jih pouuje izvajalec - for (predmet in izvajalci[[izvajalec]]$predmeti){ # Zanka za vse ifre predmetov izvajalca izvajalci[[izvajalec]]$predmeti - povprecja.izvajalec.predmet.temp <- subset(povprecja.izvajalci, izvajalec.sifra==izvajalec & predmet.sifra==predmet) # Povpreje predmetov izvajalca - data.izvajalec.predmet.temp <- subset(data.izvajalci, izvajalec.sifra==izvajalec & predmet.sifra==predmet & veljavna) # Podatki o izvajalcu (komentarji na njegove predmete, itd.) - # Generiraj poroila za vse komponente, kjer so vsaj 4 odgovori - if (povprecja.izvajalec.predmet.temp$N_anket >= minEnot) { # cele dele dela smo kjer je dovolj enot (ve ali enako 4) - - # Oblikujemo podatke za izvajalca, ki jih bomo nato s funkcijo capture.output(Hmisc::latex) zapisali v LATEX TABELE: IZVAJALEC - ## tEVILSKE ## - # vars.izvajalec$cont$vars <- imena komponent za izvajalca, ki so jih ocenjevali tudenti - tabela.cont <- cbind.data.frame( - N=as.numeric(povprecja.izvajalec.predmet.temp[paste0(vars.izvajalec$cont$vars,"_N")]), # tevilo odgovorov posamezne komponente - mean=as.numeric(povprecja.izvajalec.predmet.temp[paste0(vars.izvajalec$cont$vars,"_mean")]), # Povpreje komponent izvajalca (Kakovost, itd.) - sd=as.numeric(povprecja.izvajalec.predmet.temp[paste0(vars.izvajalec$cont$vars,"_sd")]), # Standardni odklon komponent - min=as.numeric(povprecja.izvajalec.predmet.temp[paste0(vars.izvajalec$cont$vars,"_min")]), # Min vrednosti komponent - max=as.numeric(povprecja.izvajalec.predmet.temp[paste0(vars.izvajalec$cont$vars,"_max")])) # Max vrednosti komponent - - povprecja2 <- tabela.cont$mean - - tabela.cont[is.na(tabela.cont)] <- "." # e je NA potem doda piko "." <- Prikaz v latex tabeli - - if (min(as.numeric(tabela.cont$N)) < minEnot) { # e je tevilo enot manje kot 4 dodaj opombo, ki se bo izpisala pod latex tabelo - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' - } else {opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}"} - FDVcont <- data.frame(vars.izvajalec$cont$meansFDV[vars.izvajalec$cont$vars]) # Povpreja ocen komponent izvajalcev celotne fakultete - colnames(FDVcont) <- 'FDVcont' - tabela.cont <- cbind(tabela.cont, FDVcont) - - ################ - ## radar graf ## - ################ - # Glej poroilo za izvajalca, in sicer Slika: Opisne statistike pedagokega dela za izvajalca pri predmetu (anketa PRED izpitom) - if (sum(!is.na(povprecja2)) < 4) {povprecja2 <- povprecja2[!is.na(povprecja2)] <-NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reemo, da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(FDVcont, as.numeric(povprecja2)))), row.names=1:4, check.names=F) - #Imena stolpcev radar grafa:"Kakovost","Pripravljenost", "Razumljivost","Zanimivost","Kritinost","Korektnost" - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars])) - # CairoPDF initializes a new graphics device that uses the cairo graphics library for rendering - CairoPDF(paste('Evalvacija/results/part-izvajalec-slike/', izvajalec, '_', predmet, '_cont.pdf', sep=''), - family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) #Setting graph margins. xpd=TRUE -enable things to be drawn outside the plot region - # Plot RADAR CHART fmsb::radarchart - fmsb::radarchart(radar.cont, pcol=c('dodgerblue3', 'firebrick3'), cglcol='gray75', plwd=2, plty=1, cglwd=1, - cglty=1, seg=4, axistype=1, caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Izvajalec", paste(fakulteta, "Povpreje")), - col=c('firebrick3', 'dodgerblue3'), lty=1, lwd=2, bty='n') - dev.off() - ## //radar graf// ## - - ######################### - # PORAZDELITEV IZVAJALEC - ######################### - # Zdruimo vrstice: tabela.cont z vrsticami: SKUPNE OCENE IZVAJALCA in vrstice s Povpreji Fakultete (FDVcont) - tabela.cont <- rbind(tabela.cont, c('', povprecja.izvajalec.predmet.temp$izvajalec.ocena.SKUPAJ, '', '', '', mean(tabela.cont$FDVcont, na.rm=TRUE))) - - # Barvanje vrednosti glede na mejne vrednosti. - # Prvi stolpec: enojni ali dvojni oklepaji (formatNA1), decimalke pomeni zaokroevanje, pobarvanka predstavlja barvanje - tabela.contR1 <- formatNA1(tabela.cont[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - # Ostale stolpce obarvano (pobarvanka) zaokroimo na eno ali nobeno decimalko (decimalke), in NA vrednosti zamenjamo z loilom. - tabela.contR2 <- formatNA(tabela.cont[2:6], decimalke=c(1,1,0,0,1), pobarvanka=c(pobarvankaIzvSkupaj,"NE","NE","NE",pobarvankaIzvSkupaj),na.repl=".") - tabela.contR <- cbind(tabela.contR1,tabela.contR2) # Zdruimo podatke - - # Premaknemo SD, MIN IN MAX V TABELO porazdelitev.tex - opisne.statistike.izvajalec <- tabela.contR[c(3,4,5)] - - # Imena vrstic tabele - rownames(tabela.contR) <- c(as.character(vars.izvajalec$cont$ime.dolgo[vars.izvajalec$cont$vars]), '\\hline\n\\textbf{Skupaj}') - - ## Tabela frekvennih porazdelitev ocen komoonent ## - data.izvajalec.predmet.temp.someMiss <- subset(data.izvajalci.someMiss, izvajalec.sifra==izvajalec & predmet.sifra==predmet) - - # frekvence - porazdelitev <- t(sapply(data.izvajalec.predmet.temp.someMiss[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izvajalec.someMiss)))) - - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - porazdelitev.pct.1 <- round((rowSums(porazdelitev[,1:2], na.rm = TRUE)) / (rowSums(porazdelitev, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - porazdelitev.pct.2 <- round((rowSums(porazdelitev[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - # Barvanje vrednosti - porazdelitev.pct.1 <- ifelse(porazdelitev.pct.1 >= 20, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.1, '}}'),porazdelitev.pct.1) - porazdelitev.pct.2 <- ifelse(porazdelitev.pct.2 <= 50, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.2, '}}'),porazdelitev.pct.2) - ## /Porazdelitev delei / ## - - # Zdruimo stolpce - tabela.contR <- qpcR:::cbind.na(tabela.contR,porazdelitev.pct.1,porazdelitev.pct.2) - tabela.contR <- tabela.contR[,c(1,2,7,8,6)] - - ######################### - # PORAZDELITEV FAKULTETA - ######################### - # Enako naredimo e za FAKULTETO - data.izvajalec.temp.fakulteta <- subset(data.izvajalci, (veljavna)) - porazdelitev.izvajalec.fakulteta <- t(sapply(data.izvajalec.temp.fakulteta[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izvajalec.someMiss)))) - - porazdelitev.pct.izv.FDV.1 <- round((rowSums(porazdelitev.izvajalec.fakulteta[,1:2], na.rm = TRUE))/ (rowSums(porazdelitev.izvajalec.fakulteta, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - porazdelitev.pct.izv.FDV.2 <- round((rowSums(porazdelitev.izvajalec.fakulteta[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev.izvajalec.fakulteta, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - - porazdelitev.pct.izv.FDV.1 <- ifelse(porazdelitev.pct.izv.FDV.1 >= 20, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.izv.FDV.1, '}}'),porazdelitev.pct.izv.FDV.1) - porazdelitev.pct.izv.FDV.2 <- ifelse(porazdelitev.pct.izv.FDV.2 <= 50, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.izv.FDV.2, '}}'),porazdelitev.pct.izv.FDV.2) - # /Porazdelitev delei/ # - - # Zdruimo - tabela.contR <- qpcR:::cbind.na(tabela.contR,porazdelitev.pct.izv.FDV.1,porazdelitev.pct.izv.FDV.2) - - #colnames(tabela.cont.delezi) <- c('n', 'povp.', 'sd', 'min', 'max','1&2 %','4&5 %', 'povp.','1 in 2 %','4 in 5 %') - colnames(tabela.contR) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Tabela: Opisne statistike komponent pedagokega dela za izvajalca pri predmetu (anketa PRED izpitom) <- Glej poroilo za izvajalca - # Generiranje LATEX TABELE capture.output(Hmisc::latex) - # latex converts its argument to a .tex file appropriate for inclusion in a LaTeX2e document - tabela.contR.tex <- capture.output(Hmisc::latex(toLatex(tabela.contR), - caption="Povpreja in delei kategorij odgovorov za komponente pedagokega dela - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)", - rowlabel='', # Prva vrstica v tabeli (zgoraj levo ne bo poimenovana) - file='', - where='H', - longtable=FALSE, - cgroup=c("Izvajalec", fakulteta), # Imena stolpcev bodo razdeljena na dva dela ter poimenovana (Izvajalec, ime fakultete) in - n.cgroup=c(4,3), # grupirana. Prvi stolpec obsega 5 vrstic drugi stolpec obsega 1 vrstico - col.just=rep_len('c', ncol(tabela.contR)), - rowlabel.just='p{7cm}', # irina vrstic - insert.bottom=opomba)) - - - ## Tabela frekvennih porazdelitev ocen komoonent ## - data.izvajalec.predmet.temp.someMiss <- subset(data.izvajalci.someMiss, izvajalec.sifra==izvajalec & predmet.sifra==predmet) - - # frekvence - porazdelitev <- t(sapply(data.izvajalec.predmet.temp.someMiss[,vars.izvajalec$cont$vars], - function(x) table(factor(x, levels=izvajalec.someMiss)))) - - # Porazdelitev delei - # Dodamo e dva stolpca, kjer so prikzani delei odgovorov 1 in 2 ter 4 in 5 - porazdelitev.pct.1 <- round((rowSums(porazdelitev[,1:2], na.rm = TRUE))/ (rowSums(porazdelitev, na.rm = TRUE)) * 100, 0) # Dele ocen 1 in 2 - porazdelitev.pct.2 <- round((rowSums(porazdelitev[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev, na.rm = TRUE)) * 100, 0) # Dele ocen 4 in 5 - # /Porazdelitev delei/ # - - # samo kjer je dovolj enot - porazdelitev[rowSums(porazdelitev) < minEnot,] <- NA - porazdelitev <- cbind(porazdelitev, rowSums(porazdelitev, na.rm=TRUE)) - - # Obarvanje vrednosti (formatNA) - porazdelitev <- formatNA(data.frame(porazdelitev, - row.names=Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko[vars.izvajalec$cont$vars])), - stringsAsFactors=FALSE), decimalke=0, na.repl=".") - - # Imena stolpcev - porazdelitev <- cbind(porazdelitev,opisne.statistike.izvajalec[c(1,2,3,4,5,6),]) - #porazdelitev$sd <- round(porazdelitev$sd ,1) - colnames(porazdelitev) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}", - "\\textbf{Ne elim odg.}", - "\\textbf{Nimam informacij}","\\textbf{Skupaj}","\\textbf{Sd}","\\textbf{Min}","\\textbf{Max}") - # "\\textbf{1 in 2 (\\%)}", "\\textbf{4 in 5 (\\%)}") - # Generiranje LATEX TABELE - porazdelitev.tex <- capture.output(Hmisc::latex(porazdelitev, - caption="Frekvenna porazdelitev ocen komponent pedagokega dela izvajalca - (anketa PRED izpitom)", - rowlabel="\\textbf{Komponente}", - file="", - where="H", - longtable=FALSE, - #cgroup=c("", "Izbrani \\%"), - #n.cgroup=c(8,2), - col.just=rep_len("c", ncol(porazdelitev)), - insert.bottom="")) - ## //podrobna porazdelitev ocen// ## - - # Shranimo tex tabele za posameznega izvajalca + vstavimo radar graf (\\begin{figure}[H]") - part$izvajalec[[izvajalec]][[predmet]]$cont <- c(tabela.contR.tex, - # Radar graf, ki smo ga prej shranili s pomojo CAIROPDF, sedaj naloimo - "\\begin{figure}[H]", - "\\caption{Opisne statistike pedagokega dela za \\textbf{izvajalca} - pri predmetu (anketa PRED izpitom)}", - paste0('\\centerline{\\includegraphics[width=0.85\\textwidth]{part-izvajalec-slike/', izvajalec, '_', predmet, '_cont.pdf}}'), - "\\end{figure}", - porazdelitev.tex) - - - ## //tEVILSKE// ## - - - ## TEKSTOVNE (KOMENTARJI tUDENTOV) ## - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpraanja" - data.text <- lapply(data.izvajalec.predmet.temp[vars.izvajalec$text$vars], trim) - for (textvar in names(data.text)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo otevileni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text <- append(tex.text, append(paste('\\textbf{', vars.izvajalec$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - part$izvajalec[[izvajalec]][[predmet]]$text <- tex.text - - ## //TEKSTOVNE// ## - - - ## analiza izvajalca po smereh in letnikih tudentov ## - # Glej kodo tabelaBy.r kjer definiramo funkcijo tabelaBy - sredineIzvajalca <- as.numeric(povprecja.izvajalec.predmet.temp[c("N_anket", paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")]) - izvajalecBySmer <- tabelaBy(data=subset(povprecja.izvajalci.programi.brez.cenzure, izvajalec.sifra==izvajalec & predmet.sifra==predmet & N_anket > 0)[c( - "N_anket", paste0(vars.izvajalec$cont$vars,"_mean"), paste0(vars.izvajalec$cont$vars,"_N"), "program.studentov.ime")], - contvars=vars.izvajalec$cont$vars, - plusvars=NULL, - by="program.studentov.ime", - minEnot=minEnot, - tablename="Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} - glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)", - colNames=latex.rotate(c("t. odgovorov", as.character(vars.izvajalec$cont$ime.kratko), "\\textbf{Skupaj}")), - decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c(FDVstopnjaPobarvanka$n.anket,as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), - rownameSirina="p{10.2cm}", - means=sredineIzvajalca, meansName="\\hline \\textbf{Povpreje izvajalca pri predmetu}", - meansFDV=c(n.sodelujocih.jepouceval="--", vars.izvajalec$cont$meansFDV), - meansFDVname=paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.izvajalci.st," izvedb pri predmetih)}")) - - - # Povpreja glede na letnik tudentov - izvajalecByLetnik <- tabelaBy(data=subset(povprecja.izvajalci.letniki.brez.cenzure, izvajalec.sifra==izvajalec & predmet.sifra==predmet & N_anket > 0)[c( - "N_anket", paste0(vars.izvajalec$cont$vars,"_mean"), paste0(vars.izvajalec$cont$vars,"_N"), "letnik.studentov")], - contvars=vars.izvajalec$cont$vars, - plusvars=NULL, - by="letnik.studentov", - minEnot=minEnot, - tablename="Povprene ocene komponent pedagokega dela \\textbf{izvajalca pri predmetu} po letniku vpisanih tudentov (anketa PRED izpitom)", - colNames=latex.rotate(c("t. odgovorov", as.character(vars.izvajalec$cont$ime.kratko), "\\textbf{Skupaj}")), - decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c(FDVstopnjaPobarvanka$n.anket,as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), - rownameSirina="p{10.2cm}", - means=sredineIzvajalca, meansName="\\hline \\textbf{Povpreje izvajalca pri predmetu}", - meansFDV=c(n.sodelujocih.jepouceval="--", vars.izvajalec$cont$meansFDV), - meansFDVname=paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.izvajalci.st, " izvedb pri predmetih)}")) - - - # Kvantilni rangi - # Generiranje tabel, glej poroilo za izvajalca, tabelo: - # "Kvantilni rangi za Povprene ocene komponentizvajalca pri predmetu glede na tudijske programe tudentov** (anketa PRED izpitom)" - progs <- sub("\\*$", "", rownames(izvajalecBySmer$tabela[izvajalecBySmer$tabela$N_anket >= minEnot,])) - izvajalecBySmerProgrami <- subset(kvantili.izvajalci.programi, izvajalec.sifra==izvajalec & predmet.sifra==predmet & program.studentov.ime %in% progs) - - if (nrow(izvajalecBySmerProgrami) > 0) { - if (any(izvajalecBySmerProgrami$izvajalec.ocena.kakovost_mean>0)) { - progMeanIzv.tmp <- subset(izv.predmet[c("x","student.program.ime",vars.izvajalec$cont$vars,"izvajalec.ocena.SKUPAJ")],student.program.ime %in% progs) - izvajalecBySmerProgrami <- merge(progMeanIzv.tmp,izvajalecBySmerProgrami, by.x="student.program.ime", by.y="program.studentov.ime", all=TRUE) - - if (nrow(izvajalecBySmerProgrami) > 0) { - # Imena vrstic - rownames(izvajalecBySmerProgrami) <- make.unique(c(paste0(izvajalecBySmerProgrami$student.program.ime, " \\textbf{}"))) - izvajalecBySmerProgrami <- izvajalecBySmerProgrami[c("x", "N_anket", paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ.y")] - # Imena Stolpcev - colnames(izvajalecBySmerProgrami) <- latex.rotate(c("t. IPP***","t. odgovorov*", as.character(vars.izvajalec$cont$ime.kratko), - "\\textbf{Skupaj}")) - izvajalecBySmerProgrami <- capture.output(Hmisc::latex(izvajalecBySmerProgrami, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetu} - glede na vse predmete v doloen tudijski program vpisanih tudentov** (anketa PRED izpitom)"), - rowlabel="", - file="", - where="H", - rowlabel.just="p{10.2cm}", - insert.bottom=kvan.pojas3, - longtable = TRUE, - multicol=FALSE, - col.just=c("c","|c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowname=Hmisc::latexTranslate(rownames(izvajalecBySmerProgrami)))) - } else {izvajalecBySmerProgrami <- NULL} - - - ## NOT DOING THIS NOW ## - if (nrow(progMeanIzv.tmp) > 0) { - rownames(progMeanIzv.tmp) <- make.unique(progMeanIzv.tmp$student.program.ime) - progMeanIzv.tmp <- progMeanIzv.tmp[progs, c("x", paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - colnames(progMeanIzv.tmp) <- latex.rotate(c("t. IPP**", as.character(vars.izvajalec$cont$ime.kratko), "\\textbf{Skupaj}")) - progMeanIzv.tmp <- capture.output(Hmisc::latex(progMeanIzv.tmp, - caption=paste("Povprene ocene komponent vseh \\textbf{izvajalcev pri predmetih} - med tudenti, vpisanimi v odgovarjajoi tudijski program* - (anketa PRED izpitom) - (kot primerjava za ocene obravnavenega predmeta v zgornji tabeli)"), - rowlabel="", - file="", - where="H", - rowlabel.just="p{10.2cm}", - # insert.bottom=pojasIZV.tmp, - longtable=TRUE, - multicol=FALSE, - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowname=Hmisc::latexTranslate(rownames(progMeanIzv.tmp)))) - } else {progMeanIzv.tmp <- NULL} - } else {izvajalecBySmerProgrami <- NULL - progMeanIzv.tmp <- NULL} - } else {izvajalecBySmerProgrami <- NULL - progMeanIzv.tmp <- NULL} - ## //NOT DOING THIS NOW// ## - - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik <- c(izvajalecBySmer$tex, izvajalecBySmerProgrami, izvajalecByLetnik$tex) - # /analiza izvajalca po smereh in letnikih tudentov/ # - - - } else { # e ni dovolj enot - part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot <- - "- Zaradi prenizkega tevila odgovorov analiza izvajalca ni bila narejena. -" - } - - } - - - ################################################################### - ##PODPOGLAVJE: Ocene predmetov in izvajalca (POGLAVJE POVZETEK) ## - ################################################################### - # paste0(vars.izvajalec$cont$vars,"_mean") <- Kakovost, Pripravljenost, razumljivost, zanimivost, kritinost, korektnost - povzetek.izvajalca <- povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra==izvajalec, - c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct", - paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - # Preverimo e pri izvajalcu obstajajo lurkerji - povzetek.izvajalca.lurkerji <- povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra==izvajalec, - c("N_lurkerjev_ivz")] - - # Povpreje vsek izvajalcev fakultete in insert v tabelo 1.3 (zadnja vrstica) - # which courses should be included (all from predmeti.izbor) - predmeti.izbor <- povprecja.predmeti$predmet.sifra - izvajalci.izbor <- unique(povprecja.izvajalci$izvajalec.sifra) - izbor.izvajalci <- subset(povprecja.izvajalci, predmet.sifra %in% predmeti.izbor & izvajalec.sifra %in% izvajalci.izbor) - izbor.izvajalci.skupaj <- aggregate(izbor.izvajalci[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by=izbor.izvajalci[c("izvajalec.sifra")], FUN=mean, na.rm=TRUE) - povprecja.vseh.izvajalcev <- izbor.izvajalci.skupaj[complete.cases(izbor.izvajalci.skupaj) , ] - povprecja.vseh.izvajalcev <- colMeans(izbor.izvajalci.skupaj[2:ncol(izbor.izvajalci.skupaj)], na.rm=TRUE) - ## //Povpreje vsek izvajalcev fakultete// ## - - # e povpreja Predmetov - # Komponente za anketo PRED izpitom (glej tabelo 1,1) - povzetek.predmetov.pred <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - - # Preverimo, e so v v odgovore ankete PRED zajeti tudi lurkerji - povzetek.predmetov.pred.lurkerji <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_pred")] - - - - # Komponente za anketo PO ipzitu (glej tabelo 1,2) - povzetek.predmetov.po <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - povzetek.predmetov.po.lurkerji <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("N_lurkerjev_po")] - - # TABLE ROWNAMES # - # Imena vrstic za Tabelo 1.3 (Izvajalec pri predmetu) - rownames.povzetek.izvajalca <- povprecja.izvajalci[povprecja.izvajalci$izvajalec.sifra==izvajalec, "ime.predmeta"] - # Imena vrstic za Tabelo 1.1 <- ANKETA PRED IZPITOM - rownames.povzetek.predmetov <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # Imena vrstic za Tabelo 1.2 <- ANKETA PO IZPITU - rownames.povzetek.predmetov1 <- povprecja.predmeti[povprecja.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, "ime.predmeta"] - # //TABLE ROWNAMES// # - - # V primeru, da bi eleli pri predmetu v tabeli 1.1 dodati oznako X, da je takoj jasno, na kateri predmet se X v sliki nanaa) - oznaka <- rownames.povzetek.predmetov - oznaka[1]=paste(oznaka [1],"(X)",sep=" ") - ## //oznaka x// ## - - # PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA # - # Povprene ocene izvajalca pri predmetih - povprecja.izvajalci.skupaj.temp <- subset(povprecja.izvajalci.skupaj, izvajalec.sifra==izvajalec) - meansI <- povprecja.izvajalci.skupaj.temp[c("ST_STUD","N_anket","N_anketSkupaj","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct","nipouceval.pct", - paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpred <- subset(povprecja.predmetov.izvajalca.skupaj, izvajalec.sifra==izvajalec)[c("ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"), - "predmet.ocena.SKUPAJ.pred")] - # Povpreja vseh predmetov doloenega izvajalca (anket PRED izpitom) - meansPpo <- subset(povprecja.predmetov.izvajalca.skupaj, izvajalec.sifra==izvajalec)[c("ST_STUD","N_anket_po_izpitu", - "sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu", - "neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ.po", - "predmet.ocena.krediti_mean")] - ## //PovpreNE OCENE DOLOENEGA IZVAJALCA IN PovpreNE OCENE PREDMETOV DOLOENEGA IZVAJALCA// ## - - - ##### averages of programmes from which lecturer got grades# from which programme most grades come from ##### - maxProgram <- sub("program_studenta_", "", names(sort(povprecja.izvajalci.skupaj.temp[paste0("program_studenta_", programi$student.program.sifra)], decreasing =TRUE)[1])) - maxIPP <- subset(izv.predmet, program.studentov %in% maxProgram) - if (nrow(maxIPP) > 0) { - maxProgramIme <- paste0("\\hline \\textbf{Povpreje ",programi$student.program.ime[programi$student.program.sifra == maxProgram], " (", as.numeric(maxIPP["x"]), " izvajalcev pri predmetih)*}") - meansIprog <- c("--", "--", "--", "--", "--","--","--", unname(subset(progMeanIzv, student.program.sifra == maxProgram)[c(vars.izvajalec$cont$vars,"izvajalec.ocena.SKUPAJ")])) - } else {maxProgramIme <- NULL - meansIprog <- NULL} - - # PREDMET PRED IZPITOM - # averages of programmes from which lectur got grades# from which programme most grades come from - maxProgramPRED <- sub("program_studenta_", "", names(sort(povprecja.izvajalec.predmet.temp[paste0("program_studenta_", programi$student.program.sifra)], decreasing =TRUE)[1])) - if (!is.null(pred.predmet)){ - maxPRED <- subset(pred.predmet, program.studentov %in% maxProgramPRED) - } - if (nrow(maxPRED) > 0) { - maxProgramImePRED <- paste0("\\hline \\textbf{Povpreje ",programi$student.program.ime[programi$student.program.sifra == maxProgramPRED], " (", as.numeric(maxPRED["x"]), " predmetov)*}") - ime.programa <- paste0(programi$student.program.ime[programi$student.program.sifra == maxProgramPRED]) - meansIprogPRED <- - c("--", "--", "--", "--", "--", unname(subset(progMeanPredm, student.program.sifra == maxProgramPRED)[c(vars.predmet$cont$pred,"predmet.ocena.SKUPAJ.pred")])) - } else { - maxProgramImePRED <- NULL - meansIprogPRED <- NULL - } - - # PREDMET PO IZPITU - maxProgramPO <- sub("program_studenta_", "", names(sort(povprecja.izvajalec.predmet.temp[paste0("program_studenta_", programi$student.program.sifra)], decreasing =TRUE)[1])) - if (!is.null(po.predmet)) { - maxPO <- subset(po.predmet, program.studentov %in% maxProgramPO) - maxProgramImePO <- paste0("\\hline \\textbf{Povpreje ",programi.PO$student.program.ime[programi.PO$student.program.sifra == maxProgramPO], " (", as.numeric(maxPO["x"]), " predmetov)**}") - meansIprogPO <- c("--", "--", "--", "--", "--", unname(subset(progMeanPredm.PO, student.program.sifra == maxProgramPO)[c(vars.predmet$cont$po,"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti")])) - } else { - maxProgramImePO <- NULL - meansIprogPO <- NULL - } - ## //averages of programmes from which lecturer got grades# from which programme most grades come from// ## - - # Dodajanje opomb, ki se prikaejo pod posamezno tabelo v poglavju POVZETEK - if (sum(is.na(povzetek.izvajalca)) > 0) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. \\newline - ** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmeta). \\newline - *** tudent je v anketi oznail, da ga dolo - en izvajalec pri predmetu ni poueval (npr. ko ve asistentov izvaja vaje pri istem predmetu za razline skupine tudentov).}}" -} else {opombaI <- "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih -ostalih programov, v katere so vpisani tudenti, ki so posluali predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.\\newline -** tevilo tudentov, ki je ocenjevalo izvajalca pri predmetu (in ne zgolj predmeta). \\newline -*** tudent je v anketi oznail, da ga doloen izvajalec ni poueval (npr. ko ve asistentov izvaja vaje pri istem predmetu za razline skupine tudentov).}}"} - if (sum(is.na(povzetek.predmetov.pred)) > 0) {opombaPpred <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv.\\newline * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}. }}" - }else {opombaPpred <- "{\\footnotesize \\textit{-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, ki so posluali predmete izvajalca, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}"} - if (sum(is.na(povzetek.predmetov.po)) > 0) {opombaPpo <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline -- Podatek je manj pomemben ali teko izraunljiv. - \\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih komponent (glej metodoloka pojasnila): - Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, - vrednost nad 3.0 pa pomeni nadpovpreno tevilo ur. {\\color{Orange}\\textbf{Oranno}} so oznaena opazna - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} pa izrazita - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}} in nad {\\color{BrickRed}\\textbf{3.6}}). - \\newline ** Program je izbran na podlagi najvijega tevila odgovorov. Ocene morebitnih - ostalih programov, v katere so vpisani tudenti, so v poglavju \\textbf{Sumarne ocene tudijskih programov}.}}"} else {opombaPpo <- KTust} - ## //OPOMBE// ## - - # Zdruimo izraunane vrednosti (v vrstice) za izvajalca in za predmete - povzetek.izvajalca <- rbind(povzetek.izvajalca, meansI, meansIprog, - c(FDVizvajalci["skupaj", c("ST_STUD","N_anket","N_anketSkupaj", - "sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct","nipouceval.pct")], vars.izvajalec$cont$meansFDV)) - povzetek.izvajalca <- rbind(povzetek.izvajalca,c("--","--","--","--","--","--","--",povprecja.vseh.izvajalcev)) # Zdruimo e vrstice s Povpreji FDV izvajalcev - # Povprene ocene komponent (anketa PRED) - - - povzetek.predmetov.pred <- rbind(povzetek.predmetov.pred, meansPpred,meansIprogPRED, - c(FDVpredmeti["skupaj",c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")])) - # Povprene ocene komponent (anketa PO izpitu) - povzetek.predmetov.po <- rbind(povzetek.predmetov.po,meansPpo,meansIprogPO, - c(FDVpredmeti["skupaj",c("ST_STUD","N_anket_po_izpitu", - "sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct_po_izpitu")], vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, - "povprecje.ocen.po")], vars.predmet$krediti$meansFDV)) - - # SIVEVRSTICE # - # kjer je bilo premalo enot oz. anket naj bodo vrstice sive, tukaj samo pogledamo katere so to - siveVrsticeIzv <- c((as.numeric(povzetek.izvajalca$N_anket[1:length(izvajalci[[izvajalec]]$predmeti)]) < minEnot), - rep(FALSE, nrow(povzetek.izvajalca) - length(izvajalci[[izvajalec]]$predmeti))) - siveVrsticePpred <- c((as.numeric(povzetek.predmetov.pred$N_anket[1:length(izvajalci[[izvajalec]]$predmeti)]) < minEnot), - rep(FALSE, nrow(povzetek.predmetov.pred) - length(izvajalci[[izvajalec]]$predmeti))) - siveVrsticePpo <- c((as.numeric(povzetek.predmetov.po$N_anket_po_izpitu[1:length(izvajalci[[izvajalec]]$predmeti)]) < minEnot), - rep(FALSE, nrow(povzetek.predmetov.po) - length(izvajalci[[izvajalec]]$predmeti))) - ## //SIVEVRSTICE// ## - - ########################################## - # OBARVANJA VREDNOSTI V TABELAH (formatNA) - ########################################## - # Dodajanje enojnih ali dvojnih oklepajev za tevilo tudentov, dele odgovorov, itd. #Glej fukcijo formatNA1 v R skripti funkcije - # decmalke <- zaokroevanje vrednosti v stolpcih na eno decimalko, pobarvanka <- barvanje mejnih vrednosti v stolpcih doloenih v excel datoteki navodila - povzetek.izvajalca1 <- formatNA1(povzetek.izvajalca[1:6], decimalke=c(0,0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket,"NE", - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), siveVrstice=siveVrsticeIzv, na.repl=".") #Vrednostim 1:5 dodamo oklepaje - - # (FDVstopnjaPobarvanka$n.anket <- barvanje N_anket oz tevila odgovorov) - # FDVstopnjaPobarvanka$st.stud <- mejne vrednosti za barvanje stolpca ST_STUDENTOV. Mejne vrednosti so bile dogovorjene in so definirane v + - # navodila_dodatno-UTF-8.r. Glej tudi izpis za izvajalca, poglavje Splona metodologija, kjer so opredeljene mejne vrednosi barvanja - povzetek.izvajalca2 <- formatNA(povzetek.izvajalca[8:14], decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), - siveVrstice=siveVrsticeIzv, na.repl=".") # preostale vrednosti obarvamo - povzetek.izvajalca3 <- formatNA1(povzetek.izvajalca[7] , decimalke=c(0), pobarvanka="NE", siveVrstice=FALSE, na.repl=".") - povzetek.izvajalca <- cbind(povzetek.izvajalca1,povzetek.izvajalca3,povzetek.izvajalca2) #zdruimo - povzetek.izvajalca <- povzetek.izvajalca[c(1,3,2,4,5,6,7,8,9,10,11,12,13,14)] - # OBARVANJA IN OKLEPAJI KOMPONENT PREDMETOV - # Anketa PRED - povzetek.predmetov.pred1 <- formatNA1(povzetek.predmetov.pred[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket, - FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct, - FDVstopnjaPobarvanka$zavr.pct), siveVrstice=siveVrsticePpred, na.repl=".") #Vrednostim 1:5 dodamo oglepaje - povzetek.predmetov.pred2 <- formatNA(povzetek.predmetov.pred[6:13], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), - pobarvanka=c(as.character(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred]),pobarvankaPredmSkupaj), - siveVrstice=siveVrsticePpred, na.repl=".") # preostale vrednosti obarvamo - povzetek.predmetov.pred <- cbind(povzetek.predmetov.pred1,povzetek.predmetov.pred2) #zdruimo - - # Anketa PO - povzetek.predmetov.po1 <- formatNA1(povzetek.predmetov.po[1:5], decimalke=c(0,0,0,0,0), - pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket,FDVstopnjaPobarvanka$sodelu.pct, - FDVstopnjaPobarvanka$zavr.pct,FDVstopnjaPobarvanka$zavr.pct), - siveVrstice=siveVrsticePpo, na.repl=".") #Vrednostim 1:5 dodamo oglepaje - povzetek.predmetov.po2 <- formatNA(povzetek.predmetov.po[6:11], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj, as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(as.character(vars.predmet$cont$pobarvanka[vars.predmet$cont$po]),pobarvankaPredmSkupaj, - as.character(vars.predmet$krediti$pobarvanka)), - siveVrstice=siveVrsticePpo, na.repl=".") # preostale vrednosti obarvamo - povzetek.predmetov.po <- cbind(povzetek.predmetov.po1,povzetek.predmetov.po2) #zdruimo - ### //OBARVANJE UVODNIH TABEL// ### - - ## Imena vrstc TABEL ## - # Imena vrstic tabele 1.3 oz. IZVAJALCA - rownames.povzetek.izvajalca <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', rownames.povzetek.izvajalca)), paste0('\\hline \\textbf{Povpreje izvajalca}'), - maxProgramIme, paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.izvajalci.st," \nizvajalcev pri predmetih)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.izvajalci.skupaj.st ," \nizvajalcev)}")) - #rownames.povzetek.izvajalca <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', rownames.povzetek.izvajalca)), paste0('\\hline \\textbf{Povpreje izvajalca}'), maxProgramIme, paste0("\\hline \\textbf{Povpreje (",kvantili.izvajalci.st," \nizvajalcev pri predmetih)}")) - - # Imena vrstic tabele 1.1 oz PREDMETA - rownames.povzetek.predmetov <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', rownames.povzetek.predmetov)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}' - ,maxProgramImePRED, paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.pred," predmetov)}")) - oznaka <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', oznaka)), '\\hline \\textbf{Povpreje vseh predmetov izvajalca}', - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.pred," \nocenjenih predmetov)}")) - - # Imena vrstic tabele 121 oz PREDMETA - rownames.povzetek.predmetov1 <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', rownames.povzetek.predmetov1)), - '\\hline \\textbf{Povpreje vseh predmetov izvajalca}',maxProgramImePO, - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," predmetov)}")) - ## //Imena vrstc// ## - - ## Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ ## - colnames(povzetek.izvajalca) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "t. odg. izvajalca**", "\\% odgovorov izvajalca", "\\% zavrnitev predmeta", "\\% nesodelujoih","\\% ni poueval***", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - colnames(povzetek.predmetov.pred) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - "\\textbf{Skupaj}")) - colnames(povzetek.predmetov.po) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - ## //Imena stolpcev TABEL IN ROTIRANJE ZA 90 STOPINJ // ## - - - ## e so v bati LURKERJI: Preverimo pri katerem predmetu smo jih upotevali po ZAVRNJENE ENOTE - # IZVAJALCI PRI PREDMETIH ANKETA PRED - st.lurkerjev.IZV <- ifelse(povzetek.izvajalca.lurkerji >= 1, "\\#", "") - povzetek.izvajalca[,5][1:length(st.lurkerjev.IZV)] <- paste(povzetek.izvajalca[,5][1:length(st.lurkerjev.IZV)], st.lurkerjev.IZV, sep = "") - - if('\\#' %in% st.lurkerjev.IZV){ - opombaLurkerji.IZV <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.IZV <- NULL - } - - # ANKETA PRED PREDMETI - st.lurkerjev.PRED <- ifelse(povzetek.predmetov.pred.lurkerji >= 1, "\\#", "") - povzetek.predmetov.pred[,4][1:length(st.lurkerjev.PRED)] <- paste(povzetek.predmetov.pred[,4][1:length(st.lurkerjev.PRED)], st.lurkerjev.PRED, sep = "") - - if('\\#' %in% st.lurkerjev.PRED){ - opombaLurkerji.PRED <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PRED <- NULL - } - - - # ANKETA PO PREDMETI - st.lurkerjev.PO <- ifelse(povzetek.predmetov.po.lurkerji >= 1, "\\#", "") - povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)] <- paste(povzetek.predmetov.po[,4][1:length(st.lurkerjev.PO)], st.lurkerjev.PO, sep = "") - - if('\\#' %in% st.lurkerjev.PO){ - opombaLurkerji.PO <- "{\\footnotesize \\textit{\\# Vkljueni so tudi tudenti, ki so v anketi sodelovali a niso podali nobenega odgovora.}}" - } else{ - opombaLurkerji.PO <- NULL - } - - - ##################################### - ## Histogrami v poglavju: POVZETEK ## - ##################################### - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) { #Histograme izrie v primeru, da ni NA vrednosti - CairoPDF(paste('Evalvacija/results/part-izvajalec-slike/', izvajalec, '_HISTOGRAM1.pdf', sep=''), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - hist(povprecja.izvajalci$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.st," izvajalcev pri predmetih")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=12) # control over exactly the breakpoints between bins - points(x=subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - y=0, pch="X", cex=2.0) #Kriec v histogramu - # Drugi histogram - hist(povprecja.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.izvajalci.skupaj.st," izvajalcev")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5)) - points(x=subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, - y=0, pch="X", cex=2.0) - dev.off() - } - - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ.pred))) { - CairoPDF(paste('Evalvacija/results/part-izvajalec-slike/', izvajalec, '_HISTOGRAM2.pdf', sep=''), family='sans', - pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) # Set margins (Dva histograma na stran) - hist(povprecja.predmeti$predmet.ocena.SKUPAJ.pred, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.pred," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points(x=subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.pred[1],y=0, pch="X", cex=2.0) - - hist(povprecja.predmeti$predmet.ocena.zadovoljstvo_mean, - xlab=c(paste0("Zadovoljstvo za\n", kvantili.zadovoljstvo," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=15) - points(x=subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1],y=0, pch="X", cex=2.0) - dev.off() - } - - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ.po))) { - CairoPDF(paste('Evalvacija/results/part-izvajalec-slike/', izvajalec, '_HISTOGRAM3.pdf', sep=''), family='sans') - hist(povprecja.predmeti$predmet.ocena.SKUPAJ.po, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points(x=subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.po[1],y=0, pch="X", cex=2.0) - dev.off() - } - - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ.po))) { - CairoPDF(paste('Evalvacija/results/part-izvajalec-slike/', izvajalec, '_HISTOGRAM5.pdf', sep=''), - family='sans',pointsize=9, width=10, height=5) - par(mfrow = c(1,2)) - hist(povprecja.predmeti$predmet.ocena.SKUPAJ.po, - xlab=c(paste0("Ocena Skupaj za\n", kvantili.predmeti.st.po," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points(x=subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.po[1],y=0, pch="X", cex=2.0) - hist(povprecja.predmeti$predmet.ocena.krediti_mean, - xlab=c(paste0("Ustreznost KT za\n", kvantili.ustreznotsKT," predmetov")), - ylab="Frekveca", - main=NULL, - xlim=c(1,5), - breaks=10) - points(x=subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1],y=0, pch="X", cex=2.0) - dev.off() - } - ## //Histogrami v poglavju: POVZETEK// ## - - - ## Pojasnilo pod posameznim histogramom ## - pojas.histog <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.povzetek.izvajalca[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.pred[1], - digits=1)," (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.zadovoljstvo_mean[1], - digits=1)," (\\textbf{Zadovoljstvo}) v desnem grafu. }}")) - # Anketa PO - pojas.histog.po <- c(paste0("{\\footnotesize \\textit{* Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.povzetek.izvajalca[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.po[1], - digits=1)," (\\textbf{Skupaj}) v levem grafu oziroma pri vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - digits=1)," (\\textbf{Ustreznost KT}) v desnem grafu.}}")) - # Ustreznost KT - pojas.histog.KT <- c(paste0("{\\footnotesize \\textit{** Poloaj predmeta \\guillemotright\\textbf{", - paste0(rownames.povzetek.izvajalca[1]),"}\\guillemotleft \\ v desnem grafu oznauje kriec X pri vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.krediti_mean[1], - digits=1)," (\\textbf{Ustreznost KT}) v tabeli 1.2.}}")) - - pojas.histog.KT <- NULL - - # Izvajalec - pojas.histog.izv <- c(paste0("{\\footnotesize \\textit{* Poloaj izvajalca pri predmetu \\guillemotright\\textbf{", - paste0(rownames.povzetek.izvajalca[1]),"}\\guillemotleft \\ oznauje kriec X pri vrednosti ", - round(subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], digits=1), - " (\\textbf{Skupaj}) v levem grafu. \\newline ** Poloaj izvajalca (povpreje po vseh njegovih predmetih) - med vsemi izvajalci oznauje kriec X pri vrednosti ", - round(subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits=1), " v desnem grafu.}}")) - - pojas.histog.izv.skupaj <- c(paste0("{\\footnotesize \\textit{** Poloaj izvajalca (povpreja po vseh njegovih predmetih) - v desnem grafu oznauje kriec X pri vrednosti ", - round(subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits=1), - " (\\textbf{Skupaj}) v tabeli 1.3.}}")) - pojas.histog.izv.skupaj <- NULL - ## //Pojasnilo dodatno pod histograme// ## - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.2 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - povzetek.predmetov.po <- povzetek.predmetov.po[c(1,2,3,4,5,7,8,9,10,6,11)] - ## //vrstni red stolpcev// ## - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in - # poimenovali vrstice ter stolpce podatkovnega okvirja zanemo z generiranjem LATEX tabel - # Generiranje tabel v poglavju POVZETEK: Tabele Povpreij ankete PRED izpitom, PO izpitu in izvajalcev pri predmetih - tex.povzetek <- c("\\section{Ocene predmetov in izvajalca}", - paste("Prikazana so povpreja za ocene komponent na lestvici 1-5 - za vse predmete izvajalca z vsaj 4 odgovori. - Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno}}, - povpreja pod 3.0 pa {\\color{BrickRed}\\textbf{rdee}}. - Nizko tevilo enot in neugodne stopnje sodelovanja so oznaene - z enojnim () oziroma z dvojnim oklepajem (()). - Podrobnosti so v metodolokih navodilih na koncu poroila in - na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki."), - - capture.output(Hmisc::latex(povzetek.predmetov.pred, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.3cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpred,opombaLurkerji.PRED), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowname=rownames.povzetek.predmetov)), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ.pred))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.1) Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.pred),"\\textbf{predmetov} in frekvenna porazdelitev povprenih ocen za \\textbf{Zadovoljstvo} - za", paste0(kvantili.zadovoljstvo),"\\textbf{predmetov}}", - paste0('\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/', izvajalec, '_HISTOGRAM2.pdf}}'), - "\\end{figure}",pojas.histog)}, "\\newpage", - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo,opombaLurkerji.PO), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowname=rownames.povzetek.predmetov1)), - # Vstavimo Histogram - if (any(!is.na(povprecja.predmeti$predmet.ocena.SKUPAJ.po))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.2) Frekvenna porazdelitev* povprenih ocen \\textbf{Skupaj} za", - paste0(kvantili.predmeti.st.po),"\\textbf{predmetov} in frekvenna porazdelitev povprenih ocen \\textbf{Ustreznost KT} za", - kvantili.ustreznotsKT,"\\textbf{predmetov}}", - paste0('\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/', izvajalec, '_HISTOGRAM5.pdf}}'), - "\\end{figure}", pojas.histog.po,"\\newline", pojas.histog.KT)},"\\newpage", - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI,opombaLurkerji.IZV), - col.just=c(rep_len("c",2),"c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowname=rownames.povzetek.izvajalca)), - # Vstavimo Histogram - if (any(!is.na(povprecja.izvajalci$izvajalec.ocena.SKUPAJ))) {c( - "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.3) Frekvenna porazdelitev povprenih ocen \\textbf{Skupaj} za ", - kvantili.izvajalci.st, - "\\textbf{izvajalcev pri predmetih*} in frekvenna porazdelitev povprenih ocen izvajalcev \\textbf{Skupaj}\n za", - kvantili.izvajalci.skupaj.st," \\textbf{izvajalcev}**}", - paste0('\\centerline{\\includegraphics[width=0.80\\textwidth]{part-izvajalec-slike/', izvajalec, '_HISTOGRAM1.pdf}}'), - "\\end{figure}", pojas.histog.izv,"\\newline",pojas.histog.izv.skupaj)},"\\newpage") - - # "\\begin{figure}[H]", "\\caption{(Ilustracija Tabele 1.3) Frekvenna porazdelitev popvreja izvajalca po vseh predmetih \\textbf{Skupaj}\n za", kvantili.izvajalci.skupaj.st," \\textbf{izvajalcev}* na", fakulteta,"} - (anketa PRED izpitom)}", paste0('\\centerline{\\includegraphics[width=0.40\\textwidth]{part-izvajalec-slike/', izvajalec, '_HISTOGRAM1.pdf}}'), "\\end{figure}",pojas.histog.izv.skupaj,"\\newpage") - - # Vse vrednosti za izvajalca zapiemo v spremenljivko, ki jo na koncu uporabimo pri generiranju celotnega poroila - part$izvajalec[[izvajalec]]$povzetek <- tex.povzetek - # V novem poroilu "POVZETEK" elimo imeti samo tabele, brez kvantilnih rangov in histogramov zato spremenljivko prilagodimo - tex.povzetek.povzetek <- c( - capture.output(Hmisc::latex(povzetek.predmetov.pred, - caption="Povprene ocene komponent \\textbf{predmetov} - (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.3cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpred,opombaLurkerji.PRED), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowname=rownames.povzetek.predmetov)), - - # Latex tabela - capture.output(Hmisc::latex(povzetek.predmetov.po, - caption="Povprene ocene komponent \\textbf{predmetov} (anketa PO izpitu)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{8.6cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaPpo,opombaLurkerji.PO), - col.just=c(rep_len("c",1),"c|","c","c","c|", - rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowname=rownames.povzetek.predmetov1)), - - - capture.output(Hmisc::latex(povzetek.izvajalca, - caption="Povprene ocene komponent \\textbf{izvajalca pri predmetih} (anketa PRED izpitom)", - rowlabel="", - file="", - where="H", - rowlabel.just="p{7.1cm}", - longtable=TRUE, - multicol=FALSE, - insert.bottom=c(opombaI,opombaLurkerji.IZV), - col.just=c(rep_len("c",2),"c|","c","c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowname=rownames.povzetek.izvajalca))) - - part$izvajalec[[izvajalec]]$povzetek.povzetek <- tex.povzetek.povzetek - ## //Ocene predmetov in izvajalca <- skupne tabele// ## - - ## //Generiranje LATEX tabel//## - - ############################### - # PODPOGLAVJE: Kvantilni rangi# - ############################### - ## kvantili ## - if (any(kvantili.izvajalci$izvajalec.sifra==izvajalec)) { - kvantili.izvajalca <- kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra==izvajalec, - c("ST_STUD","N_anket","sodelujocih.pct", - paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - kvantili.izvajalca.skupaj <- kvantili.izvajalci.skupaj[kvantili.izvajalci.skupaj$izvajalec.sifra==izvajalec, - c("ST_STUD","N_anket","sodelujocih.pct", - paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - kvantili.predmetov.pred <- kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket","sodelujocih.pct", - paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - kvantili.predmetov.po <- kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% izvajalci[[izvajalec]]$predmeti, - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - # Pojasnilo vrednosti k posamezni tabeli kvantilnih rangov - pojas <- c(paste0("{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. \\newline ** Kvantilni rang ", kvantili.izvajalca[1,10], " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca[1,10], "\\%"), " od ",kvantili.izvajalci.st," izvajalcev pri predmetih imelo nije povpreje ocen od - vrednosti izvajalca pri predmetu ", - round(subset(povprecja.izvajalci, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], digits=1), - " (\\textbf{Skupaj}) v tabeli 1.3.}}")) - pojas1 <- c(paste0("{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta v tabeli 1.1. Kvantilni rang ", kvantili.predmetov.pred[1,1]," za predmet \\guillemotright ", - rownames.povzetek.izvajalca[1],"\\guillemotleft \\ pomeni, da je imelo ", paste0(kvantili.predmetov.pred[1,1], "\\%"), - " predmetov nije tevilo vpisanih tudentov od vrednosti ", paste0(povzetek.predmetov.pred[1,1]), - " v tabeli 1.1.\\newline ** Kvantilni rang ", kvantili.predmetov.pred[1,11], " (\\textbf{Skupaj}) - pomeni, \nda je ", paste0(kvantili.predmetov.pred[1,11], "\\%"), " od ",kvantili.predmeti.st.pred," predmetov imelo - nije povpreje ocen od vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.pred[1],digits=1), - " (\\textbf{Skupaj}) v tabeli 1.1.}}")) - pojas2 <- c(paste0("{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti predmeta v tabeli 1.2.\\newline ** Kvantilni rang ", kvantili.predmetov.po[1,8], " (\\textbf{Skupaj}) - pomeni, \nda je ", paste0(kvantili.predmetov.po[1,8], "\\%"), " od ",kvantili.predmeti.st.po," predmetov - imelo nije povpreje od vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.po[1], digits=1), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", kvantili.predmetov.po[1,9], - " (\\textbf{Ustreznost KT}) pa pomeni, da je (glede na tevilo kreditnih tok) ", paste0(kvantili.predmetov.po[1,9], "\\%"), - " vseh predmetov zahtevalo nije tevilo ur.}}")) - pojas3 <- c(paste0("{\\footnotesize \\textit{* Vrednosti za \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti izvajalca v tabeli 1.3. \\newline ** Kvantilni rang ", kvantili.izvajalca.skupaj[1,10], " (\\textbf{Skupaj}) - pomeni, \nda je ", paste0(kvantili.izvajalca.skupaj[1,10], "\\%"), " od ",kvantili.izvajalci.skupaj.st, - " izvajalcev pri predmetih imelo nije povpreje od vrednosti izvajalca pri predmetih ", - round(subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, digits=1), - " (\\textbf{Skupaj}) v tabeli 1.3.}}")) - ## //pojasnilo// ## - - ## Opomba poda tabelami kvantilnih rangov ## - if (any(kvantili.izvajalca == ".")) {opombaI <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", kvantili.izvajalca[1,10], - " (\\textbf{Skupaj}) pomeni, \nda je ", paste0(kvantili.izvajalca[1,10], "\\%"), - " od ",kvantili.izvajalci.st," izvajalcev pri predmetu - imelo nije povpreje od vrednosti ", - round(subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], digits=1), - " (\\textbf{Skupaj}) v tabeli 1.3.}}"))} else {opombaI <- pojas} - if (any(kvantili.izvajalca.skupaj == ".")) {opombaIs <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.3. - \\newline ** Kvantilni rang ", kvantili.izvajalca.skupaj[1,10], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.izvajalca.skupaj[1,10], "\\%"), " od ", - kvantili.izvajalci.skupaj.st," izvajalcev pri predmetih imelo nije povpreje - od vrednosti ", - round(subset(povprecja.izvajalci.skupaj, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], - digits=1), - " (\\textbf{Skupaj}) v tabeli 1.3. Glej tudi desno sliko 1.3.}}"))} else {opombaIs <- pojas3} - if (any(kvantili.predmetov.pred == ".")) {opombaPpred <- c(paste("{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.1, - Kvantilni rang ", kvantili.predmetov.pred[1,1]," za predmet - \\guillemotright ", rownames.povzetek.izvajalca[1], - "\\guillemotleft \\ pomeni, da je imelo ", - paste0(kvantili.predmetov.pred[1,1], "\\%"), - " izvajalcev pri predmetih v Povpreju nije tevilo vpisanih - tudentov od vrednosti ", - paste0(povzetek.predmetov.pred[1,1]), " v tabeli 1.1. - \\newline ** Kvantilni rang ", kvantili.predmetov.pred[1,11], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.pred[1,11], "\\%"), " od ", - kvantili.predmeti.st.pred," predmetov imelo nije povpreje - od vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.pred[1],digits=1), - " (\\textbf{Skupaj}) v tabeli 1.1.}}"))} else {opombaPpred <- pojas1} - if (any(kvantili.predmetov.po == ".")) {opombaPpo <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi - premajhnega tevila enot.\\newline * Vrednosti za - \\guillemotright t.vpisanih\\guillemotleft, - \\guillemotright t.odgovorov\\guillemotleft \\ in - \\guillemotright \\% odgovorov\\guillemotleft \\\nso - kvantilni rangi za odgovarjajoe vrednosti v tabeli 1.2. - \\newline ** Kvantilni rang ", kvantili.predmetov.po[1,8], - " (\\textbf{Skupaj}) pomeni, \nda je ", - paste0(kvantili.predmetov.po[1,8], "\\%"), " od ",kvantili.predmeti.st.po, - " predmetov imelo nije povpreje od vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.po[1], digits=1), - " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang " - , kvantili.predmetov.po[1,9], - " (\\textbf{Ustreznost KT} pa pomeni, da je (glede na tevilo kreditnih tok) ", - paste0(kvantili.predmetov.po[1,9], "\\%"), - " vseh predmetov nije - tevilo ur.}}"))} else {opombaPpo <- pojas2} - ## //opomba kvantili// ## - - # Imena vrstic v tabelah kvantilnih rangov - rownames.kvantili.izvajalca <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', - kvantili.izvajalci[kvantili.izvajalci$izvajalec.sifra==izvajalec, "ime.predmeta"]))) #, paste("\\hline \\textbf{Povpreje izvajalca med", kvantili.izvajalci.skupaj.st, "izvajalci}")) - rownames.kvantili.predmetov.pred <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"]))) #, paste("\\hline \\textbf{Povpreje predmetov izvajalca med", kvantili.predmetov.izvajalca.skupaj.st.pred, "izvajalci}")) - rownames.kvantili.predmetov.po <- c(Hmisc::latexTranslate(gsub('izredna izvedba', 'I', - kvantili.predmeti[kvantili.predmeti$predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti, "ime.predmeta"]))) #, paste("\\hline \\textbf{Povpreje predmetov izvajalca med", kvantili.predmetov.izvajalca.skupaj.st.po, "izvajalci}")) - - - # V primeru, da bi eleli pri predmetu v tabeli 1.1 dodati oznako X, da je takoj jasno, na kateri predmet se X v histogramu nanaa) - rownames.kvantili.izvajalca[1] = paste(rownames.kvantili.izvajalca[1], "**", sep = " ") - rownames.kvantili.predmetov.pred[1] = paste(rownames.kvantili.predmetov.pred[1], "**", sep = " ") - rownames.kvantili.predmetov.po[1] = paste(rownames.kvantili.predmetov.po[1], "**", sep = " ") - - # Imena stolpcev za tabele - colnames(kvantili.izvajalca) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), "\\textbf{Skupaj**}")) - colnames(kvantili.izvajalca.skupaj) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", - as.character(vars.izvajalec$cont$ime.kratko), "\\textbf{Skupaj**}")) - colnames(kvantili.predmetov.pred) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - "\\textbf{Skupaj**}")) - colnames(kvantili.predmetov.po) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj**}", as.character(paste0(vars.predmet$krediti$ime.kratko,"*")))) - - # explain what specific quantile means - primer.kvantil <- kvantili.izvajalca[,ncol(kvantili.izvajalca)][kvantili.izvajalca[,ncol(kvantili.izvajalca)] != "."][1] - if (is.na(primer.kvantil)) { - primer.kvantil <- "." - } - - # Interpretacija vrednosti kvantilnih rangov v tabelah: glej poroilo za izvajalca, podpoglavje Kvantilni rangi. - opredelitev.kvantili <- paste("Kvantilni rangi oznaujejo poloaj predmeta - oziroma izvajalca med vsemi predmeti oziroma - izvajalci celotne fakultete.\nZgornja etrtina - (75-100) je obarvana {\\color{Chateau Green}\\textbf{zeleno}}, - zgornja desetina (90-100) {\\color{Blue Stone}\\textbf{modrozeleno}}. - Spodnja etrtina (0-25) je obarvana {\\color{Orange}\\textbf{oranno}}, - spodnja desetina (0-10) {\\color{BrickRed}\\textbf{rdee}}. - Podrobnosti so v metodolokih navodilih na koncu poroila in - na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki.") - pojasnilo.kvantili1 <- paste("Primer interpretacije vrednosti v tabeli 1.5:\nKvantilni rang" - , kvantili.izvajalca.skupaj[10], "(\\textbf{Skupaj}) pomeni, - \nda ima", paste0(kvantili.izvajalca.skupaj[10], "\\%"), - "od skupno",kvantili.izvajalci.skupaj.st," izvajalcev nije - povpreje ocenjenih komponent (\\textbf{Skupaj}) za izvajalca pri predmetih - od vrednosti izvajalca", round(subset(povprecja.izvajalci.skupaj, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, digits=1), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili2 <- paste("Primer interpretacije vrednosti v tabeli 1.4:\nKvantilni rang", - primer.kvantil, "(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.povzetek.izvajalca[1],"\\guillemotleft\\ pomeni, da je", - paste0(primer.kvantil, "\\%"), " od skupno", kvantili.izvajalci.st, - "izvajalcev pri predmetih imelo nije povpreje ocenjenih - komponent od vrednosti",round(subset(povprecja.izvajalci, - izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ[1], digits=1), - "(\\textbf{Skupaj}) v tabeli 1.2. Glej tudi sliko 1.2.") - pojasnilo.kvantili4 <- paste("Primer interpretacije vrednosti v tabeli 1.7:\nKvantilni rang", - kvantili.predmetov.po[1,8],"(\\textbf{Skupaj}) za predmet \\guillemotright", - rownames.kvantili.predmetov.po[1], "\\guillemotleft\\ pomeni, \nda je", - paste0(kvantili.predmetov.po[1,8], "\\%"), "od skupno", kvantili.predmeti.st.po, - " predmetov imelo nije povpreje ocenjenih komponent od vrednosti ", - round(subset(povprecja.predmeti, predmet.sifra %in% - izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.po[1], - digits=1), "(\\textbf{Skupaj}) v tabeli 1.3. Glej tudi sliko 1.3.") - ## //Interpretacija// ## - - - ## Vrstni red stolpcev ## - # ANKETA PO IZPITU - # Ker elimo v tabeli 1.5 komponenti: Ustreznost KT (predmet.ocena.krediti_mean) in Kompetence(predmet.ocena.kompetence_mean) + - # prikazati kot zadnja dva stolpca, ustrezno uredimo vrstni red stolpcev - kvantili.predmetov.po <- kvantili.predmetov.po[c(1,2,3,5,6,7,8,4,9)] - - ########################################################## - # Generiranje LATEX tabel <- capture.output(Hmisc::latex)# - # Ko smo naredili vse: izraunali, obarvali, zrduili in ppimenovali vrstice ter stolpce podatkovnega okvirja - # zanemo z generiranjem LATEX tabel za podpoglavje: kvantilni rangi - part$izvajalec[[izvajalec]]$kvantili <- c("\\section{Kvantilni rangi}", opredelitev.kvantili, - - capture.output(Hmisc::latex(kvantili.predmetov.pred, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.pred), - " predmeti (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpred, - rowlabel.just='p{9cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$pred)),'|c'), - rowname=rownames.kvantili.predmetov.pred)), - - - capture.output(Hmisc::latex(kvantili.predmetov.po, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{predmetov} med", - paste0(kvantili.predmeti.st.po), - " predmeti (anketa PO izpitu)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaPpo, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.predmet$cont$po[-1])),'|c','|c','c'), - rowname=rownames.kvantili.predmetov.po)), - - - capture.output(Hmisc::latex(kvantili.izvajalca, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca pri predmetih} ", - paste0("med ",kvantili.izvajalci.st, - " izvajalci pri predmetih "), - " (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaI, - rowlabel.just='p{10cm}', - longtable = F, - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname=rownames.kvantili.izvajalca)), - - - capture.output(Hmisc::latex(kvantili.izvajalca.skupaj, - caption=paste("Kvantilni rangi za povprene ocene - komponent \\textbf{izvajalca} ", - paste0("med ", kvantili.izvajalci.skupaj.st, - " izvajalci")," (anketa PRED izpitom)"), - rowlabel='', - file='', - where='H', - insert.bottom=opombaIs, - rowlabel.just='p{10cm}', - multicol=FALSE, - col.just=c('c','c','c|', - rep_len('c', length(vars.izvajalec$cont$vars)),'|c'), - rowname="\\textbf{Povpreje izvajalca**}")),"\\newpage") - - - - } else {part$izvajalec[[izvajalec]]$kvantili <- NULL} - ## /kvantili/ ## - - ## //Generiranje LATEX tabel// ## - - - - ################################################################################# - ###Sumarne ocene tudijskih programov (Poglavje pred metodolokim pojasnilom)#### - ################################################################################# - #Izpis Tabel: Povpreja za ocene komponent vseh programov, v katerih je izvajalec sodeloval - for (predmet in izvajalci_program[[izvajalec]]$predmeti){ - povprecja.izvajalci.programi.temp <- subset(povprecja.izvajalci.programi, izvajalec.sifra==izvajalec & predmet.sifra==predmet) - - rownames(povprecja.izvajalci.programi.temp) <- make.unique(as.character(povprecja.izvajalci.programi.temp$program.studentov.ime)) - izvajalec_program_ime <- rownames(povprecja.izvajalci.programi.temp) - - sortByAverage1 <- FALSE #if true sort by average, else by name - - #tUDIJSKI PROGRAM IZPIS ZA IZVAJALCA - vsota.izvajalcev <- povprecja.izvajalci.programi[povprecja.izvajalci.programi$"N_anket" >= minEnot, - c("izvajalec.sifra", "program.studentov", "program.studentov.ime")] - if (nrow(vsota.izvajalcev) > 0) { - st.izvajalcev.fak1 <- aggregate(vsota.izvajalcev$izvajalec.sifra, - by = vsota.izvajalcev[c("program.studentov","program.studentov.ime")], - FUN = function(x) length(unique(x))) - } else { st.izvajalcev.fak1 <- NULL} - - #Poiemo samo veljavne ankete za izvajalce po katerih bomo raunali Povpreja - izv.vel <- data.izvajalci[data.izvajalci$veljavna,] - izv.vel1 <- aggregate(izv.vel[vars.izvajalec$cont$vars], by=izv.vel[c("student.program.ime")], FUN = mean, na.rm = TRUE) - izv.popv <- cbind(izv.vel1, izvajalec.ocena.SKUPAJ=rowMeans(izv.vel1[vars.izvajalec$cont$vars], na.rm = TRUE)) - - if (nrow(izv.predmet) > 0) { - izv.predmet.skupaj <- merge(izv.popv, izv.predmet, by=c("student.program.ime"), all = TRUE) - izv.predmet.skupaj <- izv.predmet.skupaj[c("x","student.program.ime","program.studentov", - paste0(vars.izvajalec$cont$vars,".x"), - "izvajalec.ocena.SKUPAJ.x")] - - izv.predmet.skupaj<-subset(izv.predmet.skupaj, student.program.ime %in% izvajalec_program_ime) - if (sortByAverage1) { - # rownames(izv.predmet.skupaj) <- formatProgImena(izv.predmet.skupaj$student.program.ime, izv.predmet.skupaj$izvajalec.ocena.SKUPAJ) - # izv.predmet.skupaj <- izv.predmet.skupaj[order(izv.predmet.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), !(colnames(izv.predmet.skupaj) %in% c("program.studentov","student.program.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(izv.predmet.skupaj) <- make.unique(izv.predmet.skupaj$student.program.ime) - izv.predmet.skupaj <- izv.predmet.skupaj[order(as.character(sapply(rownames(izv.predmet.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(izv.predmet.skupaj) %in% c("program.studentov","student.program.ime"))] # sort and drop unneeded columns - } - izv.predmet.skupaj <- rbind(izv.predmet.skupaj, c("--", colMeans(izv.predmet.skupaj[2:ncol(izv.predmet.skupaj)], na.rm=TRUE))) - izv.predmet.skupaj <- formatNA(izv.predmet.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(izv.predmet.skupaj )[nrow(izv.predmet.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(izv.predmet.skupaj ) <- latex.rotate(c("t. IPP", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - # Generating LATEX table - izv.predmet.skupaj.tex <- capture.output(Hmisc::latex(izv.predmet.skupaj, - caption="Ocene komponent \\textbf{izvajalcev pri predmetih} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel="", - file="", - where="H", - rowlabel.just="A{9.5cm}", - longtable=FALSE, - multicol=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek je - manj pomemben ali teko izraunljiv. - \\newline ** t. IPP - tevilo vseh - izvajalcev pri predmetih na doloenem programu.}}"), - col.just=c("c|", - rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - }else { - izv.predmet.skupaj.tex <- NULL - } - part$izvajalec[[izvajalec]]$povzetek1<-izv.predmet.skupaj.tex - ######### - - - - ## OCENE PROGRAMOV PO PREDMETIH ## - ##ANKETA PRED IZPITOM - progMeanPRED.tmp <- aggregate(data.predmeti[vars.predmet.vars], - by = data.predmeti[c("student.program.sifra","student.program.ime")], - FUN = mean, na.rm = TRUE) - progMeanPRED.tmp <- cbind(progMeanPRED.tmp, predmet.ocena.SKUPAJ=rowMeans(progMeanPRED.tmp[vars.predmet.vars], na.rm = TRUE)) - rownames(progMeanPRED.tmp) <- make.unique(progMeanPRED.tmp[rownames(progMeanPRED.tmp),"student.program.ime"]) - - if (nrow(progMeanPRED.tmp) > 0 & nrow(proggPRED.tmp1) > 0) { - progMeanPRED.fak.skupaj <- merge(proggPRED.tmp1, progMeanPRED.tmp, by.x = c("program.studentov","program.studentov.ime"), - by.y = c("student.program.sifra","student.program.ime"), all = TRUE, sort = FALSE) - progMeanPRED.fak.skupaj <- subset(progMeanPRED.fak.skupaj,program.studentov.ime %in% izvajalec_program_ime) - progMeanPRED.fak.skupaj$program.studentov.ime <- as.character(progMeanPRED.fak.skupaj$program.studentov.ime) - if (sortByAverage1) { - # rownames(progMeanPRED.fak.skupaj) <- formatProgImena(progMeanPRED.fak.skupaj$program.studentov.ime, progMeanPRED.fak.skupaj$predmet.ocena.SKUPAJ) - # progMeanPRED.fak.skupaj <- progMeanPRED.fak.skupaj[order(progMeanPRED.fak.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(progMeanPRED.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(progMeanPRED.fak.skupaj) <- make.unique(progMeanPRED.fak.skupaj$program.studentov.ime) - progMeanPRED.fak.skupaj <- progMeanPRED.fak.skupaj[order(as.character(sapply(rownames(progMeanPRED.fak.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(progMeanPRED.fak.skupaj) %in% - c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - progMeanPRED.fak.skupaj <- rbind(progMeanPRED.fak.skupaj, - c("--", colMeans(progMeanPRED.fak.skupaj[2:ncol(progMeanPRED.fak.skupaj)], na.rm=TRUE))) - progMeanPRED.fak.skupaj <- formatNA(progMeanPRED.fak.skupaj, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(progMeanPRED.fak.skupaj )[nrow(progMeanPRED.fak.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(progMeanPRED.fak.skupaj ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), - "\\textbf{Skupaj}")) - progMeanPRED.fak.skupaj.tex <- capture.output(Hmisc::latex(progMeanPRED.fak.skupaj, - caption="Ocene komponent \\textbf{predmetov} glede na tudijske programe - (anketa PRED izpitom), sortirano po abecedi", - rowlabel="", - file="", - where="H", - rowlabel.just="A{9.5cm}", - longtable=FALSE, - multicol=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - progMeanPRED.fak.skupaj.tex <- "Ni ocen." - } - - part$izvajalec[[izvajalec]]$povzetek2<-progMeanPRED.fak.skupaj.tex - - - ##ANKETA PO IZPITU## - progMeanPO.tmp <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], - FUN=mean, na.rm=TRUE) - progMeanPO.tmp <- cbind(progMeanPO.tmp, predmet.ocena.SKUPAJ=rowMeans(progMeanPO.tmp[vars.predmet$cont$po[-1]], na.rm=TRUE)) - rownames(progMeanPO.tmp) <- make.unique(progMeanPO.tmp[rownames(progMeanPO.tmp),"student.program.ime"]) - - if (nrow(progMeanPO.tmp) > 0 & !is.null(proggPO.tmp1)) { - progMeanPO.fak.skupaj <- merge(proggPO.tmp1, progMeanPO.tmp, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), - all=TRUE, sort=FALSE) - progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[c(1,2,3,4,5,6,7,9,8)] - progMeanPO.fak.skupaj <- subset(progMeanPO.fak.skupaj,program.studentov.ime %in% izvajalec_program_ime) - progMeanPO.fak.skupaj$program.studentov.ime <- as.character(progMeanPO.fak.skupaj$program.studentov.ime) - if (any(is.na(progMeanPO.fak.skupaj))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so - oznaena opazna odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita - odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).") - } else {opomba <- "-- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena opazna odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."} - - if (sortByAverage1) { - # progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[order(progMeanPO.fak.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(progMeanPO.fak.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - # rownames(progMeanPO.fak.skupaj) <- formatProgImena(progMeanPO.fak.skupaj$program.studentov.ime, progMeanPO.fak.skupaj$predmet.ocena.SKUPAJ) - } else { # sort by name - rownames(progMeanPO.fak.skupaj) <- make.unique(progMeanPO.fak.skupaj$program.studentov.ime) - progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[order(as.character(sapply(rownames(progMeanPO.fak.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(progMeanPO.fak.skupaj) %in% - c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - progMeanPO.fak.skupaj <- rbind(progMeanPO.fak.skupaj, c("--", colMeans(progMeanPO.fak.skupaj[2:ncol(progMeanPO.fak.skupaj)], na.rm=TRUE))) - progMeanPO.fak.skupaj <- formatNA(progMeanPO.fak.skupaj, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj, - as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO), - pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(progMeanPO.fak.skupaj)[nrow(progMeanPO.fak.skupaj)] <- "\\hline \\textbf{Povpreje programov}" - colnames(progMeanPO.fak.skupaj) <- latex.rotate(c("t. predmetov", - Hmisc::latexTranslate(as.character(imena_stolpcevPO)), - "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - progMeanPO.fak.skupaj <- progMeanPO.fak.skupaj[c(1,3,4,5,6,2,7)] - progMeanPO.fak.skupaj.tex <- capture.output(Hmisc::latex(progMeanPO.fak.skupaj, - caption="Ocene komponent \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{", opomba, "}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - progMeanPO.fak.skupaj.tex <- "Ni ocen." - } - - part$izvajalec[[izvajalec]]$povzetek3<-progMeanPO.fak.skupaj.tex - - } - - } - -################### -## //izvajalec// ## -################### - - - -############## -## predmet -############# -predmeti <- NULL -if (omejeniIzvajalci) { - sifrePredmet <- as.character(unique(data.izvajalci$predmet.sifra[data.izvajalci$izvajalec.sifra %in% sifreIzvajalec])) -} else {sifrePredmet <- as.character(unique(data.izvajalci$predmet.sifra))} - -for (predmet in sifrePredmet){ - - povprecja.predmet.temp <- subset(povprecja.predmeti, predmet.sifra==predmet) - data.predmet.temp <- subset(data.predmeti, predmet.sifra==predmet & (veljavna | veljavna_po_izpitu)) - - #kdo so izvajalci predmeta - izvajalci.predmeta <- unique(subset(data.izvajalci, predmet.sifra==predmet)$izvajalec.sifra) - if (omejeniIzvajalci) {izvajalci.predmeta <- izvajalci.predmeta[izvajalci.predmeta %in% sifreIzvajalec]} - - ## stopnja sodelovanja ## - sodelujocih <- povprecja.predmet.temp$N_anket - stopnjaPredmeta <- povprecja.predmet.temp$STOPNJA - if (stopnjaPredmeta==1) { - FDVstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - FDVstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', povprecja.predmet.temp$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - FDVstring <- '' - } - imepredmeta <- sub("^BD |^BP ", "", povprecja.predmet.temp$ime.predmeta) # ime brez BD/BP predpone - imepredmeta <- gsub('_', '\\_', imepredmeta, fixed=T) # pravilni izpis podrtaja v pdf izpisu "_" - imepredmeta <- gsub('&', '\\&', imepredmeta, fixed=T) # pravilni izpis in v pdg izpisu "&" - - - ##Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PRED IZPITOM - CairoPDF(paste('Evalvacija/results/part-predmet-slike/', predmet, '_response_pred_izpitom.pdf', sep=''), - family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.pred <- cbind(c(povprecja.predmet.temp$sodelujocih.pct, - povprecja.predmet.temp$zavrnjenih.pct, - povprecja.predmet.temp$neodzivnih.pct), - c(FDVpredmeti[as.character(stopnjaPredmeta),"sodelujocih.pct"], - FDVpredmeti[as.character(stopnjaPredmeta),"zavrnjenih.pct"], - FDVpredmeti[as.character(stopnjaPredmeta),"neodzivnih.pct"])) - - ## Get the y-values for text - ys.pred <- apply(mat.pred, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store mat.pred data - xs.pred <- barplot(mat.pred, names.arg=c('Predmet\n', FDVstring[2]), - col=c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim=c(0,100), - space=c(0,1)) - - ## Add text - text(rep(xs.pred, each=nrow(ys.pred)), c(ys.pred), labels=paste0(round(c(mat.pred), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - ############### - - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) - ANKETA PO IZPITU - CairoPDF(paste('Evalvacija/results/part-predmet-slike/', predmet, '_response_po_izpitu.pdf', sep=''), - family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.po <- cbind(c(povprecja.predmet.temp$sodelujocih.pct_po_izpitu, - povprecja.predmet.temp$zavrnjenih.pct_po_izpitu, - povprecja.predmet.temp$neodzivnih.pct_po_izpitu), - c(FDVpredmeti[as.character(stopnjaPredmeta),"sodelujocih.pct_po_izpitu"], - FDVpredmeti[as.character(stopnjaPredmeta),"zavrnjenih.pct_po_izpitu"], - FDVpredmeti[as.character(stopnjaPredmeta),"neodzivnih.pct_po_izpitu"])) - - ## Get the y-values for text - ys.po <- apply(mat.po, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store mat.po data - xs.po <- barplot(mat.po, names.arg=c('Predmet\n', FDVstring[2]), - col=c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim=c(0,100), - space=c(0,1)) - - ## Add text - text(rep(xs.po, each=nrow(ys.po)), c(ys.po), labels=paste0(round(c(mat.po), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - ##### - - - - # Olepavanje slovnice pri izpisu Delea odgovorov: glej tekst, ki se pojavi v drugem poglavju pri izpisu za izvajalca - if (povprecja.predmet.temp$N_neodzivnih == 1) { # here - odziv <- "ni pristopil" - } else if (povprecja.predmet.temp$N_neodzivnih == 2){ - odziv <- "nista pristopila" - } else if (povprecja.predmet.temp$N_neodzivnih == 3 | povprecja.predmet.temp$N_neodzivnih == 4){ - odziv <- "niso pristopili" - } else { - odziv <- "ni pristopilo" - } - - - # parti predmeta - # cele parte dela smo kjer je dovolj enot - if (povprecja.predmet.temp$N_anket >= minEnot | povprecja.predmet.temp$N_anket_po_izpitu >= minEnot) { - - tex.sodelovanje <- c(paste0("Na evalvacijski vpraalnik za predmet \\guillemotright ", imepredmeta, "\\guillemotleft \\ PRED izpitom - je (vsaj deloma) odgovarjalo ", povprecja.predmet.temp$N_anket," od skupno ", - povprecja.predmet.temp$ST_STUD, " vpisanih tudentov. Pri posameznih vpraanjih je lahko - tevilo nesodelujoih nekoliko veje (neodgovor spremenljivke). Dodatnih ",povprecja.predmet.temp$N_zavrnjenih, - " tudentov je zavrnilo izpolnjevanje ankete, ", povprecja.predmet.temp$N_neodzivnih, - " pa k izpolnjevanju ", odziv, ". ", "Odstotek sodelujoih znaa - \\textbf{", round(povprecja.predmet.temp$sodelujocih.pct), "\\%}, ","kar lahko primerjamo s povprejem - \\textbf{", round(FDVpredmeti[as.character(stopnjaPredmeta),"sodelujocih.pct"]), - "\\%} vseh ", FDVstring[1]," predmetov na ", fakulteta, ".",sep=""), - "\\newline", - "\\begin{figure}[H]", # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PRED izpitom)}", - paste0('\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/', - predmet, '_response_pred_izpitom.pdf}}'), "\\end{figure}", - paste0("Na anketo PO izpitu je odgovarjalo ", paste0(povprecja.predmet.temp$N_anket_po_izpitu), - " tudentov, kar je \\textbf{", round(povprecja.predmet.temp$sodelujocih.pct_po_izpitu), - "\\%} vseh vpisanih tudentov. ","povpreje deleev za vse dodiplomske predmete na ", fakulteta, - " je znaalo \\textbf{", round(FDVpredmeti[as.character(stopnjaPredmeta), - "sodelujocih.pct_po_izpitu"]), "\\%}."), - "\\begin{figure}[H]", # Vkljuimo barplot - "\\caption{Struktura (\\%) tudentov glede na sodelovanje (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, "_response_po_izpitu.pdf}}"), - "\\end{figure}") - - part$predmet[[predmet]]$response <- tex.sodelovanje - ## /stopnja sodelovanja/ ## - - - ## tEVILSKE ## - # ANKETA PRED - tabela.cont <- cbind.data.frame( - N=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$pred,"_N")]), # tevilo odgovorov - mean=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$pred,"_mean")]), # Povpreje komponent predmeta - sd=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$pred,"_sd")]), # Standardni odklon komponent - min=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$pred,"_min")]), # Min vrednost komponent - max=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$pred,"_max")])) # max - - povprecja2 <- tabela.cont$mean - - tabela.cont[is.na(tabela.cont)] <- "." - - if (min(as.numeric(tabela.cont$N)) < minEnot) { - opomba <- '{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot.}}' - } else {opomba <- "{\\footnotesize {}}"} - FDVcont <- data.frame(vars.predmet$cont$meansFDV[vars.predmet$cont$pred]) - colnames(FDVcont) <- 'FDVcont' - tabela.cont <- cbind(tabela.cont, FDVcont) - - # ANKETI PRED IN PO SKUPAJ - tabela.cont1 <- cbind.data.frame( - N=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$vars1[-8],"_N")]), - mean=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$vars1[-8],"_mean")]), - sd=round(as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$vars1[-8],"_sd")]),1), - min=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$vars1[-8],"_min")]), - max=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$vars1[-8],"_max")])) - - povprecja3 <- tabela.cont1$mean - - tabela.cont1[is.na(tabela.cont1)] <- "." - - if (min(as.numeric(tabela.cont1$N)) < minEnot) { - opomba <- '{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' - } else {opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}"} - FDVcont1 <- data.frame(vars.predmet$cont$meansFDV[vars.predmet$cont$vars1[-8]]) - colnames(FDVcont1) <- 'FDVcont' - tabela.cont1 <- cbind(tabela.cont1, FDVcont1) - - ## radar graf ## - if (sum(!is.na(povprecja3)) < 4) {povprecja3 <- povprecja3[!is.na(povprecja3)] <-NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(FDVcont1, as.numeric(povprecja3)))), row.names=1:4, check.names=F) - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$vars1[-8]])) - radar.f<-radar.cont - star.radar2<-as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$vars1[-8]]) - - for(i in 8:length(star.radar2)) - { - star.radar2[i]=paste(star.radar2[i],"*",sep="") - } - colnames(radar.f) <- sub(" ", "\n", star.radar2) - CairoPDF(paste('Evalvacija/results/part-predmet-slike/', predmet, '_cont.pdf', sep=''), - family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) - fmsb::radarchart(radar.f, pcol=c('dodgerblue3','firebrick3'), - cglcol='gray75', plwd=2, plty=1, cglwd=1, cglty=1, - seg=4, axistype=1, caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Predmet", paste(fakulteta, "Povpreje")), - col=c('firebrick3', 'dodgerblue3'), lty=1, lwd=2, bty='n') - dev.off() - ## /radar graf/ ## - - tabela.cont <- rbind(tabela.cont, c('', povprecja.predmet.temp$predmet.ocena.SKUPAJ.pred, '', '', '', - mean(tabela.cont$FDVcont, na.rm=TRUE))) - tabela.contR1 <- formatNA1(tabela.cont[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - tabela.contR2 <- formatNA(tabela.cont[2:6], decimalke=c(1,1,0,0,1), - pobarvanka=c(pobarvankaPredmSkupaj,"NE","NE","NE",pobarvankaPredmSkupaj), na.repl=".") - tabela.contR <- cbind(tabela.contR1,tabela.contR2) - - - data.predmet.odgovori <- subset(data.predmeti.someMiss, predmet.sifra==predmet) - # frekvence - if (length(predmet.someMiss) > 7) { - porazdelitev_odgovorov <- t(sapply(data.predmet.temp[,vars.predmet$cont$vars1[1:7]], - function(x) table(factor(x, levels=predmet.someMiss[c(1:5,15:16)])))) - } else { - porazdelitev_odgovorov <- t(sapply(data.predmet.temp[,vars.predmet$cont$vars1[1:7]], - function(x) table(factor(x, levels=predmet.someMiss)))) - - } - - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - porazdelitev.pct.1 <- round((rowSums(porazdelitev_odgovorov[,1:2], na.rm = TRUE))/ (rowSums(porazdelitev_odgovorov, na.rm = TRUE)) * 100, 0) - porazdelitev.pct.2 <- round((rowSums(porazdelitev_odgovorov[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev_odgovorov, na.rm = TRUE)) * 100, 0) - - porazdelitev.pct.1 <- ifelse(porazdelitev.pct.1 >= 20, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.1, '}}'),porazdelitev.pct.1) - porazdelitev.pct.2 <- ifelse(porazdelitev.pct.2 <= 50, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.2, '}}'),porazdelitev.pct.2) - - # /Porazdelitev delei/# - - # samo kjer je dovolj enot - porazdelitev_odgovorov[rowSums(porazdelitev_odgovorov) < minEnot,] <- NA - - tabela.cont.delezi <- qpcR:::cbind.na(tabela.contR,porazdelitev.pct.1,porazdelitev.pct.2) - - tabela.cont.delezi <- tabela.cont.delezi[c(1,2,3,4,5,7,8,6)] - - - # tevilo odgovorov fakultete na spremenljivke ankete PRED IZPITOM - data.predmet.temp.fakulteta <- subset(data.predmeti, (veljavna | veljavna_po_izpitu)) - if (length(predmet.someMiss) > 7) { - porazdelitev.odgovorov.fakultete <- t(sapply(data.predmet.temp.fakulteta[,vars.predmet$cont$vars1[1:7]], - function(x) table(factor(x, levels=predmet.someMiss[c(1:5,15:16)])))) - } else { - porazdelitev.odgovorov.fakultete <- t(sapply(data.predmet.temp.fakulteta[,vars.predmet$cont$vars1[1:7]], - function(x) table(factor(x, levels=predmet.someMiss)))) - - } - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - porazdelitev.pct.FDV.1 <- round((rowSums(porazdelitev.odgovorov.fakultete[,1:2], na.rm = TRUE))/ (rowSums(porazdelitev.odgovorov.fakultete, na.rm = TRUE)) * 100, 0) - porazdelitev.pct.FDV.2 <- round((rowSums(porazdelitev.odgovorov.fakultete[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev.odgovorov.fakultete, na.rm = TRUE)) * 100, 0) - - porazdelitev.pct.FDV.1 <- ifelse(porazdelitev.pct.FDV.1 >= 20, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.FDV.1, '}}'),porazdelitev.pct.FDV.1) - porazdelitev.pct.FDV.2 <- ifelse(porazdelitev.pct.FDV.2 <= 50, paste('{\\color{Orange}\\textbf{', porazdelitev.pct.FDV.2, '}}'),porazdelitev.pct.FDV.2) - - # /Porazdelitev delei/# - - tabela.cont.delezi <- qpcR:::cbind.na(tabela.cont.delezi,porazdelitev.pct.FDV.1,porazdelitev.pct.FDV.2) - - rownames(tabela.cont.delezi) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred])), - '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - #colnames(tabela.cont.delezi) <- c("\\textbf{n}","\\textbf{Povpreje}","\\textbf{sd}","\\textbf{min}","\\textbf{max}", - # "\\textbf{1 in 2 (%)}","\\textbf{3 in 4 (%)}","\\textbf{Povpreje}") - tabela.cont.delezi <- tabela.cont.delezi[c(1,2,6,7,8,9,10)] - #colnames(tabela.cont.delezi) <- c('n', 'povp.', 'sd', 'min', 'max','1&2 %','4&5 %', 'povp.','1 in 2 %','4 in 5 %') - colnames(tabela.cont.delezi) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.contR.tex <- capture.output(Hmisc::latex(toLatex(tabela.cont.delezi), - caption="Povpreja in delei kategorij odgovorov za komponente \\textbf{predmeta} - (anketa PRED izpitom)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", fakulteta), - n.cgroup=c(4,3), - col.just=rep_len('c', ncol(tabela.cont.delezi)), - rowlabel.just='p{7cm}', - insert.bottom=opomba)) - - - ##################### - tabela.cont <- cbind.data.frame( - N=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$po[-1],"_N")]), - mean=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$po[-1],"_mean")]), - sd=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$po[-1],"_sd")]), - min=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$po[-1],"_min")]), - max=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$po[-1],"_max")])) - - povprecja2 <- tabela.cont$mean - - tabela.cont[is.na(tabela.cont)] <- "." - - if (min(as.numeric(tabela.cont$N)) < minEnot) { - opomba <- '{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' - opomba.PO<-'{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot. \\newline * Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}' - } else {opomba <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}" - opomba.PO <- "{\\footnotesize {* Odstotek enot, ki so podale odgovor - 1 (sploh se ne strinjam) ali 2 (se bolj ne strinjam kot strinjam) oziroma 4 (se bolj strinjam, kot ne strinjam) - ali 5 (popolnoma se strinjam).}}"} - FDVcont <- data.frame(vars.predmet$cont$meansFDV[vars.predmet$cont$po[-1]]) - colnames(FDVcont) <- 'FDVcont' - tabela.cont <- cbind(tabela.cont, FDVcont) - - tabela.cont <- rbind(tabela.cont, c('', povprecja.predmet.temp$predmet.ocena.SKUPAJ.po, '', '', '', - mean(tabela.cont$FDVcont[-1], na.rm=TRUE))) - ## Sivo barvanje tevila odgovorov (formatNA1) in ostala barvanja (formatNA). Glej R skripto Funkcije. - tabela.contR1 <- formatNA1(tabela.cont[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - tabela.contR2 <- formatNA(tabela.cont[2:6], decimalke=c(1,1,0,0,1), - pobarvanka=c(pobarvankaPredmSkupaj,"NE","NE","NE",pobarvankaPredmSkupaj), na.repl=".") - tabela.contR <- cbind(tabela.contR1,tabela.contR2) - - # Premaknemo SD, MIN IN MAX V TABELo poratdelitev.tex - opisne.statistike <- tabela.cont1[c(3,4,5)] - ######## - - if (length(predmet.someMiss) > 7) { - porazdelitev_odgovorov_po <- t(sapply(data.predmet.temp[,vars.predmet$cont$vars1[9:11]], - function(x) table(factor(x, levels=predmet.someMiss[c(1:5,15:16)])))) - } else { - porazdelitev_odgovorov_po <- t(sapply(data.predmet.temp[,vars.predmet$cont$vars1[9:11]], - function(x) table(factor(x, levels=predmet.someMiss)))) - - } - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - porazdelitev.pct.po.1 <- round((rowSums(porazdelitev_odgovorov_po[,1:2], na.rm = TRUE))/ (rowSums(porazdelitev_odgovorov_po, na.rm = TRUE)) * 100, 0) - porazdelitev.pct.po.2 <- round((rowSums(porazdelitev_odgovorov_po[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev_odgovorov_po, na.rm = TRUE)) * 100, 0) - # /Porazdelitev delei/# - - # samo kjer je dovolj enot - porazdelitev_odgovorov_po[rowSums(porazdelitev_odgovorov_po) < minEnot,] <- NA - - tabela.contR <- qpcR:::cbind.na(tabela.contR,porazdelitev.pct.po.1,porazdelitev.pct.po.2) - - tabela.contR <- tabela.contR[c(1,2,3,4,5,7,8,6)] - - - # tevilo odgovorov fakultete na spremenljivke ankete PO IZPITU - if (length(predmet.someMiss) > 7) { - porazdelitev.odgovorov.fakultete.PO <- t(sapply(data.predmet.temp.fakulteta[,vars.predmet$cont$vars1[9:11]], - function(x) table(factor(x, levels=predmet.someMiss[c(1:5,15:16)])))) - } else { - porazdelitev.odgovorov.fakultete.PO <- t(sapply(data.predmet.temp.fakulteta[,vars.predmet$cont$vars1[9:11]], - function(x) table(factor(x, levels=predmet.someMiss)))) - - } - - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov FAKULTETE - porazdelitev.pct.FDV.po.1 <- round((rowSums(porazdelitev.odgovorov.fakultete.PO[,1:2], na.rm = TRUE))/ (rowSums(porazdelitev.odgovorov.fakultete.PO, na.rm = TRUE)) * 100, 0) - porazdelitev.pct.FDV.po.2 <- round((rowSums(porazdelitev.odgovorov.fakultete.PO[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev.odgovorov.fakultete.PO, na.rm = TRUE)) * 100, 0) - # /Porazdelitev delei/# - - tabela.contR <- qpcR:::cbind.na(tabela.contR,porazdelitev.pct.FDV.po.1,porazdelitev.pct.FDV.po.2) - - - rownames(tabela.contR) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$po[-1]])), - '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - #colnames(tabela.contR) <- c('n', 'Povpreje', 'sd', 'min', 'max','1 in 2','4 in 5', 'Povpreje' ) - - tabela.contR <- tabela.contR[c(1,2,6,7,8,9,10)] - #colnames(tabela.cont.delezi) <- c('n', 'povp.', 'sd', 'min', 'max','1&2 %','4&5 %', 'povp.','1 in 2 %','4 in 5 %') - colnames(tabela.contR) <- c('n', 'povp.', '1&2 %*','4&5 %*', 'povp.','1&2 %*','4&5 %*') - # Generating latex table - tabela.contR.tex1 <- capture.output(Hmisc::latex(toLatex(tabela.contR), - caption="Povpreja in delei kategorij odgovorov za komponente \\textbf{predmeta} - (anketa PO izpitu)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", fakulteta), - n.cgroup=c(4,3), - col.just=rep_len('c', ncol(tabela.contR)), - rowlabel.just='p{7cm}', - insert.bottom=opomba.PO)) - - - ###################### - ## tUDIJSKA PRAKSA - ###################### - if(povprecja.predmet.temp$PRAKSA==1) { #e je predmet imel tudijsko prakso naredi proroilo, sicer ne. - - ######Strukturni stolpci tudentov glede na odgovarjanje (%) -ANKETA PO IZPITU - CairoPDF(paste('Evalvacija/results/part-predmet-slike/', predmet, '_response_po_izpitu_praksa.pdf', sep=''), - family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.po <- cbind(c(povprecja.predmet.temp$sodelujocih.pct_po_izpitu, - povprecja.predmet.temp$zavrnjenih.pct_po_izpitu, - povprecja.predmet.temp$neodzivnih.pct_po_izpitu), - c(FDVpredmeti[as.character(stopnjaPredmeta),"sodelujocih.pct_po_izpitu"], - FDVpredmeti[as.character(stopnjaPredmeta),"zavrnjenih.pct_po_izpitu"], - FDVpredmeti[as.character(stopnjaPredmeta),"neodzivnih.pct_po_izpitu"])) - - ## Get the y-values for text - ys.po <- apply(mat.po, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store x data - xs.po <- barplot(mat.po, names.arg=c('Predmet', studijska.praksa), - col=c("firebrick3", "dodgerblue3", "mistyrose1"), - ylim=c(0,100), space=c(0,1)) - - ## Add text - text(rep(xs.po, each=nrow(ys.po)), c(ys.po), labels=paste0(round(c(mat.po), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni e pristopil", "Zavrnili sodelovanje", "Odgovarjal"), - col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - ##### - - tex.sodelovanje1 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za - predmet \\guillemotright ", imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", - paste0(povprecja.predmet.temp$N_anket_po_izpitu), " od skupno ", povprecja.predmet.temp$ST_STUD, - " tudentov, kar je \\textbf{", round(povprecja.predmet.temp$sodelujocih.pct_po_izpitu), "\\%} - vseh vpisanih tudentov. ", "povpreje praks ", fakulteta, " je sicer znaalo - \\textbf{", round(FDVpredmeti[as.character(stopnjaPredmeta),"sodelujocih.pct_po_izpitu"]), "\\%}."), - "\\begin{figure}[H]", - "\\caption{Struktura (\\%) tudentov glede na odgovarjanje (anketa PO izpitu)}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, "_response_po_izpitu_praksa.pdf}}"), - "\\end{figure}") - part$predmet[[predmet]]$response1 <- tex.sodelovanje1 - ## /stopnja sodelovanja/ ## - - - tabela.praksa <- cbind.data.frame( - N=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_N")]), - mean=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_mean")]), - sd=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_sd")]), - min=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_min")]), - max=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_max")])) - - povprecja.praksa <- tabela.praksa$mean - - tabela.praksa[is.na(tabela.praksa)] <- "." - - if (min(as.numeric(tabela.praksa$N)) < minEnot) { - opomba <- '{\\footnotesize {. Podatek ni prikazan zaradi premajhnega tevila enot.}}' - } else {opomba <- "{\\footnotesize {}}"} - FDVcont.praksa <- data.frame(vars.predmet$cont$meansFDV[vars.predmet$cont$praksa]) - colnames(FDVcont.praksa) <- 'FDVcont.praksa' - tabela.praksa <- cbind(tabela.praksa, FDVcont.praksa) - - - - tabela.praksa <- rbind(tabela.praksa, c('', povprecja.predmet.temp$predmet.ocena.SKUPAJ.praksa, '', '', '', - mean(tabela.praksa$FDVcont.praksa, na.rm=TRUE))) - tabela.contR.praksa1 <- formatNA1(tabela.praksa[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - tabela.contR.praksa2 <- formatNA(tabela.praksa[2:6], decimalke=c(1,1,0,0,1), - pobarvanka=c(pobarvankaPredmSkupaj,"NE","NE","NE",pobarvankaPredmSkupaj), na.repl=".") - tabela.contR.praksa<-cbind(tabela.contR.praksa1,tabela.contR.praksa2) - #tabela.contR.praksa <- formatNA(tabela.praksa, decimalke=c(0,1,1,0,0,1), pobarvanka=c("NE",pobarvankaPredmSkupaj,"NE","NE","NE",pobarvankaPredmSkupaj), na.repl=".") - - - rownames(tabela.contR.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$praksa])), - '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - colnames(tabela.contR.praksa) <- c('n', 'povpreje', 'sd', 'min', 'max', 'povpreje') - tabela.contR.praksa.tex1 <- capture.output(Hmisc::latex(toLatex(tabela.contR.praksa), - caption="Povprene ocene komponent \\textbf{tudijske prakse} - (anketa PO izpitu)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", studijska.praksa), - n.cgroup=c(5,1), - col.just=rep_len('c', ncol(tabela.contR.praksa)), - rowlabel.just='p{9.5cm}', - insert.bottom=opomba)) - - - ## radar graf ## - if (sum(!is.na(povprecja.praksa)) < 4) {povprecja.praksa <- povprecja.praksa[!is.na(povprecja.praksa)] <-NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(FDVcont.praksa, as.numeric(povprecja.praksa)))), row.names=1:4, check.names=F) - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])) - radar.f<-radar.cont - star.radar2<-as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]) - - colnames(radar.f) <- sub(" ", "\n", star.radar2) - CairoPDF(paste('Evalvacija/results/part-predmet-slike/', predmet, '_cont1.pdf', sep=''), - family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) - fmsb::radarchart(radar.f, pcol=c('dodgerblue3','firebrick3'), cglcol='gray75', - plwd=2, plty=1, cglwd=1, cglty=1, seg=4, axistype=1, - caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Predmet", paste(studijska.praksa, "Povpreje")), - col=c('firebrick3', 'dodgerblue3'), - lty=1, lwd=2, bty='n') - dev.off() - ## /radar graf/ ## - - - data.predmet.temp.someMiss1 <- subset(data.predmeti.someMiss, predmet.sifra==predmet) - # frekvence - porazdelitev1 <- t(sapply(data.predmet.temp[,vars.predmet$cont$praksa], function(x) table(factor(x, levels=predmet.someMiss)))) - # samo kjer je dovolj enot - porazdelitev1[rowSums(porazdelitev1) < minEnot,] <- NA - porazdelitev1 <- cbind(porazdelitev1, rowSums(porazdelitev1, na.rm=TRUE)) - porazdelitev1 <- formatNA(data.frame(porazdelitev1, stringsAsFactors=FALSE), decimalke=0, na.repl=".") - - - ##podrobna porazdelitev1 ocen## - rownames(porazdelitev1) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]))) - colnames(porazdelitev1) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}", - "\\textbf{Ne elim odgovoriti}","\\textbf{Nimam dovolj informacij}","\\textbf{Skupaj}") - - porazdelitev1.tex <- capture.output(Hmisc::latex(porazdelitev1, - caption='Frekvenna porazdelitev odgovorov za ocene - komponent \\textbf{tudijske prakse}', - rowlabel='\\textbf{Komponente}', - file='', - where='H', - col.just=rep_len('c', ncol(porazdelitev1)), - insert.bottom=opomba)) - ## //podrobna porazdelitev1 ocen// ## - - part$predmet[[predmet]]$cont1 <- porazdelitev1.tex - - - - data.text1 <- lapply(data.predmet.temp[vars.predmet$text$vars[-c(1,2,3)]], trim) - for (textvar in names(data.text1)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text1[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text1[[textvar]][!data.text1[[textvar]] %in% junk.komentar]) - } - - tex.text1 <- NULL - for (textvar in names(data.text1)) { - komentarji <- data.text1[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text1 <- append(tex.text1, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ')) - } - } - - part$predmet[[predmet]]$text1 <- tex.text1 - - - - - part$predmet[[predmet]]$praksa<- c("\\newpage", - "\\chapter{tUDIJSKA PRAKSA ",imepredmeta,"}", - "\\textbf{Sodelovanje v anketi}", - "\\newline","\\newline",part$predmet[[predmet]]$response1, - "\\section{Ocena tudijske prakse}", - tabela.contR.praksa.tex1, - "\\begin{figure}[H]", - "\\caption{Povprene ocene komponent \\textbf{tudijske prakse} (anketa PO izpitu)}", - paste0('\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/', - predmet, '_cont1.pdf}}'), - "\\end{figure}",part$predmet[[predmet]]$cont1, - "\\section{Praksa: Odgovori na odprta vpraanja}",part$predmet[[predmet]]$text1) - } else {part$predmet[[predmet]]$praksa <- NULL - } - - ## //tudijska praksa// ## - - - ################################# - ################################# - ## podrobna porazdelitev ocen ## - data.predmet.temp.someMiss <- subset(data.predmeti.someMiss, predmet.sifra==predmet) - # frekvence - if (length(predmet.someMiss) > 7) { - porazdelitev <- t(sapply(data.predmet.temp[,vars.predmet$cont$vars1[-8]], - function(x) table(factor(x, levels=predmet.someMiss[c(1:5,15:16)])))) - } else { - porazdelitev <- t(sapply(data.predmet.temp[,vars.predmet$cont$vars1[-8]], - function(x) table(factor(x, levels=predmet.someMiss)))) - - } - # Porazdelitev delei - # Na konec tabele dodamo e dva stolpca, kjer so prikzani delei odgovorov - porazdelitev.pct.1 <- round((rowSums(porazdelitev[,1:2], na.rm = TRUE))/ (rowSums(porazdelitev, na.rm = TRUE)) * 100, 0) - porazdelitev.pct.2 <- round((rowSums(porazdelitev[,4:5], na.rm = TRUE)) / (rowSums(porazdelitev, na.rm = TRUE)) * 100, 0) - # /Porazdelitev delei/# - - # samo kjer je dovolj enot - porazdelitev[rowSums(porazdelitev) < minEnot,] <- NA - - if (any(is.na(porazdelitev))){ - opomba.porazdelitev <- paste("{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline * Komponente ankete PO izpitu so oznaene z zvezdico.}}") - } else { - opomba.porazdelitev <- paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}") - - - } - porazdelitev <- cbind(porazdelitev, rowSums(porazdelitev, na.rm=TRUE)) - porazdelitev <- formatNA(data.frame(porazdelitev, stringsAsFactors=FALSE), decimalke=0, na.repl=".") - #ankete po izpitu oznaimo z zvedzico - zvezdica<-as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po[-1]]) - for(i in 1:length(zvezdica)) - { - zvezdica[i]=paste(zvezdica[i],"*",sep="") - } - - rownames(porazdelitev) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), - paste0(Hmisc::latexTranslate(zvezdica))) - rownames(porazdelitev)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- - paste0("\\hline\n", rownames(porazdelitev)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - - porazdelitev <- cbind(porazdelitev,opisne.statistike) - colnames(porazdelitev) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}", - "\\textbf{Ne elim odg.}","\\textbf{Nimam informacij}","\\textbf{Skupaj}", - "\\textbf{Sd}","\\textbf{Min}","\\textbf{Max}") - porazdelitev.tex <- capture.output(Hmisc::latex(porazdelitev, - caption='Frekvenna porazdelitev odgovorov za - komponente \\textbf{predmeta}\n (anketi PRED in PO* izpitu)', - rowlabel='\\textbf{Komponente}', - file='', - where='H', - #cgroup=c("", "Izbrani \\%"), - #n.cgroup=c(8,2), - #col.just=c(rep_len('c', ncol(porazdelitev)-3),'c|','c','c') - col.just=rep_len("c", ncol(porazdelitev)), - insert.bottom=opomba.porazdelitev)) - ## /podrobna porazdelitev ocen/ ## - - pojasnilo.radar <- paste("{\\footnotesize \\textit{* Komponente ankete PO izpitu so oznaene z zvezdico.}}") - - part$predmet[[predmet]]$cont <- c( - tabela.contR.tex,tabela.contR.tex1, - "\\begin{figure}[H]", "\\caption{Povprene ocene komponent \\textbf{predmeta} (anketi PRED in PO* izpitu)}", - paste0('\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/', predmet, '_cont.pdf}}'), - "\\end{figure}",pojasnilo.radar, - porazdelitev.tex) - - ## /tEVILSKE/ ## - - - - ## PORABLJENO tEVILO UT (USTREZNOST KT) ## - krediti <- cbind.data.frame(n=as.numeric(povprecja.predmet.temp[paste0("krediti_razporejanje_n_",1:5)]), - "\\hfill%"=as.numeric(povprecja.predmet.temp[paste0("krediti_razporejanje_pct_", 1:5)]), - "\\hfill%"=as.numeric(vars.predmet$krediti$pctsFDV)) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - # barplot # - CairoPDF(paste0('Evalvacija/results/part-predmet-slike/', predmet, '_krediti.pdf'), - family='sans', pointsize=9, width=6, height=4.5) - par(mar=(c(4, 5, 4, 5) + 0.1), mgp=c(3, min(2, max(1, 0)), 0), xpd=TRUE) - barplot(t(krediti[,2:3]), beside=TRUE, col=c('firebrick3', 'dodgerblue3'), - names.arg=as.character(unlist(vars.predmet$krediti$labele.graf)), - ylim=c(0,100), cex.names=0.9, las=1, axis.lty=1) - abline(h=0, xpd=FALSE, col='black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', line=1.25, cex=0.9,adj = 0) - legend('topright', inset=c(-0.15, -0.05), legend=c("Predmet", paste(fakulteta, "Povpreje")), - fill=c('firebrick3', 'dodgerblue3'), bty='n') # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - if (povprecja.predmet.temp$predmet.ocena.krediti_N < minEnot) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** {\\color{Orange}\\textbf{Oranno}} so oznaena opazna - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja - (pod {\\color{BrickRed}\\textbf{2.3}} in nad {\\color{BrickRed}\\textbf{3.6}}). - so oznaena odstopanja (pod {\\color{BrickRed}\\textbf{2.4}} in nad {\\color{BrickRed}\\textbf{(3.6)}}).}}' - } else { - opomba <- '{\\footnotesize \\textit{ ** {\\color{Orange}\\textbf{Oranno}} so oznaena opazna - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa izrazita odstopanja - (pod {\\color{BrickRed}\\textbf{2.3}} in nad {\\color{BrickRed}\\textbf{3.6}}). - so oznaena odstopanja (pod {\\color{BrickRed}\\textbf{2.4}} in nad {\\color{BrickRed}\\textbf{(3.6)}}).}}' - } - - ustrez.kre.to <- as.character(vars.predmet$krediti$ime.kratko) - ustrez.kre.to1 <- gsub("Ustreznost KT", "Frekvenna porazdelitev za oceno ustreznosti tevila porabljenih ur (anketa PO izpitu)", ustrez.kre.to) - ustrez.kre.to1 <- substr(ustrez.kre.to1, 1, nchar(ustrez.kre.to1)-1) - stevilo.por.ur <- gsub("Ustreznost KT", "Frekvenna porazdelitev za oceno ustreznosti tevila porabljenih ur (anketa PO izpitu)", ustrez.kre.to) - stevilo.por.ur1 <- substr(stevilo.por.ur, 1, nchar(stevilo.por.ur)-1) - krediti <- rbind(krediti, c(povprecja.predmet.temp$predmet.ocena.krediti_N, colSums(krediti[,2:3]))) - krediti1 <- formatNA1(krediti[1:1], decimalke=c(0),pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - krediti2 <- formatNA(krediti[2:3], decimalke=c(0,0), na.repl=".") - krediti <- cbind(krediti1,krediti2) - #krediti <- formatNA(krediti, decimalke=c(0,0,0), na.repl=".") - #K Deleem v tabeli dodatmo Povpreje predmeta in Povpreje celotne fakultete - povp <- c('', paste0('\\textit{', formatNA(povprecja.predmet.temp$predmet.ocena.krediti_mean, - decimalke=as.numeric(vars.predmet$krediti$decimalke), na.repl=".", - pobarvanka=as.character(vars.predmet$krediti$pobarvanka)), '}'), - paste0('\\textit{', formatNA(as.numeric(vars.predmet$krediti$meansFDV), - decimalke=as.numeric(vars.predmet$krediti$decimalke), na.repl=".", - pobarvanka=as.character(vars.predmet$krediti$pobarvanka)), '}')) - #ter standardni odklon predmeta in standardni odklon celotne fakultete - sd.KT<-c('', paste0('\\textit{', formatNA(povprecja.predmet.temp$predmet.ocena.krediti_sd, - decimalke=as.numeric(vars.predmet$krediti$decimalke), - na.repl=".", pobarvanka='NE'), '}'), - paste0('\\textit{', formatNA(as.numeric(vars.predmet$krediti$meansFDV1), - decimalke=as.numeric(vars.predmet$krediti$decimalke), - na.repl=".", pobarvanka='NE'), '}')) - krediti <- rbind(krediti, povp,sd.KT) - rownames(krediti) <- c(Hmisc::latexTranslate(as.character(unlist(vars.predmet$krediti$labele))), - '\\hline\n\\textbf{Skupaj}', '\\hline\\hline\n\\textit{Povpreje}','\n\\textit{Standardni odklon}') - names(krediti) <- gsub(".1", "",names(krediti)) - krediti.tex <- capture.output(Hmisc::latex(krediti, - caption=Hmisc::latexTranslate(ustrez.kre.to1), - rowlabel='', - file='', - where='H', - cgroup=c("Predmet",fakulteta), - n.cgroup=c(2,1), - col.just=strsplit("crr", "")[[1]], - insert.bottom="")) - - part$predmet[[predmet]]$krediti <- c("\\subsubsection{\\Large tevilo porabljenih ur (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright Ocenite, ali ste za predmet porabili od (min - max) ur, kot je za ta - predmet predvideno v tudijskem programu (25-30 ur tudentove - obremenitve = 1 ECTS; ki vkljuuje predavanja, vaje, seminar itd. - in vse oblike samostojnega dela)\\guillemotleft", - krediti.tex, #as.character(vars.predmet$krediti$ime.dolgo), - "\\begin{figure}[H]", - paste0("\\caption{", Hmisc::latexTranslate(stevilo.por.ur1), "}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_krediti.pdf}}"), - "\\end{figure}") - - ## //PORABLJENI tEVILO UT (USTREZNOST KT)// ## - - - ## KOMPETENCE ## - kompetence1 <- cbind.data.frame(n=as.numeric(povprecja.predmet.temp[paste0("kompetence1_razporejanje_n_", 1:5)]), - "\\hfill%"=as.numeric(povprecja.predmet.temp[paste0("kompetence1_razporejanje_pct_", 1:5)]), - "\\hfill%"=as.numeric(vars.predmet$kompetence1$pctsFDV)) # z imeni za dejansko latex tabelo; pri procentih z hfill prisilimo desno poravnavo - # barplot # - CairoPDF(paste0('Evalvacija/results/part-predmet-slike/', predmet, '_kompetence1.pdf'), - family='sans', pointsize=9, width=6, height=4.5) - par(mar=(c(4, 5, 4, 5) + 0.1), mgp=c(3, min(2, max(1, 0)), 0), xpd=TRUE) - barplot(t(kompetence1[,2:3]), beside=TRUE, col=c('firebrick3', 'dodgerblue3'), - names.arg=as.character(unlist(vars.predmet$kompetence1$labele.graf)), - ylim=c(0,100), cex.names=0.9, las=1, axis.lty=1) - abline(h=0, xpd=FALSE, col='black') # drugae lahko spusti spodnjo rto e ni podatka za leve/desne skupine kar ne zgleda ok - mtext('% tudentov', line=1.25, cex=0.9,adj = 0) - legend('topright', inset=c(-0.15, -0.05), legend=c("Predmet", paste(fakulteta, "Povpreje")), - fill=c('firebrick3', 'dodgerblue3'), bty='n') # legenda naj bi bila zunaj grafa - dev.off() - # /barplot/ # - if (povprecja.predmet.temp$predmet.ocena.kompetence1_N < minEnot) { - opomba <- '{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot. - \\newline ** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja {\\color{Orange}\\textbf{(2.4-2.6)}} - in {\\color{Orange}\\textbf{(3.4-3.6)}}, {\\color{BrickRed}\\textbf{rdee}} pa odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}})."}}' - } else { - opomba <- '{\\footnotesize \\textit{** Vrednost pod 3.0 pomeni, da je predmet glede na \\guillemotright tevilo kreditnih - tok\\guillemotleft \\ zahteval podpovpreno tevilo ur, vrednost nad 3.0 pa pomeni nadpovpreno - tevilo ur. {\\color{Orange}\\textbf{Oranno}} so oznaena odstopanja {\\color{Orange}\\textbf{(2.4-2.6)}} - in {\\color{Orange}\\textbf{(3.4-3.6)}}, {\\color{BrickRed}\\textbf{rdee}} pa odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in (nad {\\color{BrickRed}\\textbf{3.6}})."}}' - } - - ustrez.kompetenc <- as.character(vars.predmet$kompetence1$ime.kratko) - ustrez.kompetenc1 <- gsub("Kompetence1", "Frekvenna porazdelitev za oceno pridobljenih kompetenc (anketa PO izpitu)", ustrez.kompetenc) - #ustrez.kompetenc1<-substr(ustrez.kompetenc1, 1, nchar(ustrez.kompetenc1)-1) - kompetence1 <- rbind(kompetence1, c(povprecja.predmet.temp$predmet.ocena.kompetence1_N, colSums(kompetence1[,2:3]))) - kompetence11 <- formatNA1(kompetence1[1:1], decimalke=c(0),pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - kompetence12 <- formatNA(kompetence1[2:3], decimalke=c(0,0), na.repl=".") - kompetence1 <- cbind(kompetence11,kompetence12) - #kompetence1 <- formatNA(kompetence1, decimalke=c(0,0,0), na.repl=".") - #Dodatna linija za Povpreje predmeta in Povpreje fakultete - povp1 <- c('', paste0('\\textit{', formatNA(povprecja.predmet.temp$predmet.ocena.kompetence1_mean, - decimalke=as.numeric(vars.predmet$kompetence1$decimalke), na.repl=".", - pobarvanka=as.character(vars.predmet$kompetence1$pobarvanka)), '}'), - paste0('\\textit{', formatNA(as.numeric(vars.predmet$kompetence1$meansFDV), - decimalke=as.numeric(vars.predmet$kompetence1$decimalke), na.repl=".", - pobarvanka=as.character(vars.predmet$kompetence1$pobarvanka)), '}')) - #Dodatna linija za STANDARDNI ODKLON predmeta in STANDARDNI ODKLON fakultete - sd.komp <- c('', paste0('\\textit{', formatNA(povprecja.predmet.temp$predmet.ocena.kompetence1_sd, - decimalke=as.numeric(vars.predmet$kompetence1$decimalke), - na.repl=".", pobarvanka='NE'), '}'), - paste0('\\textit{', formatNA(as.numeric(vars.predmet$kompetence1$meansFDV1), - decimalke=as.numeric(vars.predmet$kompetence1$decimalke), - na.repl=".", pobarvanka='NE'), '}')) - - kompetence1 <- rbind(kompetence1, povp1,sd.komp) - rownames(kompetence1) <- c(Hmisc::latexTranslate(as.character(unlist(vars.predmet$kompetence1$labele))), - '\\hline\n\\textbf{Skupaj}', '\\hline\\hline\n\\textit{Povpreje}', - '\n\\textit{Standardni odklon}') - - names(kompetence1) <- gsub(".1", "",names(kompetence1)) - kompetence1.tex <- capture.output(Hmisc::latex(kompetence1, - caption=Hmisc::latexTranslate(ustrez.kompetenc1), - rowlabel='', - file='', - where='H', - cgroup=c("Predmet",fakulteta), - n.cgroup=c(2,1), - col.just=strsplit("crr", "")[[1]], - insert.bottom="")) - - part$predmet[[predmet]]$kompetence1 <- c("\\subsubsection{\\Large Kompetence (anketa PO izpitu)}", - "Besedilo anketnega vpraanja: \\guillemotright V kolikni meri ste pri predmetu - pridobili priakovane \\textbf{kompetence}\\guillemotleft ", - kompetence1.tex, - "\\begin{figure}[H]", - paste0("\\caption{", Hmisc::latexTranslate(ustrez.kompetenc1), "}"), - paste0("\\centerline{\\includegraphics[width=0.9\\textwidth]{part-predmet-slike/", - predmet, "_kompetence1.pdf}}"), - "\\end{figure}") - ## //KOMPETENCE// ## - - - ## TEKSTOVNE ## - data.text <- lapply(data.predmet.temp[vars.predmet$text$vars[-4]], trim) - for (textvar in names(data.text)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text[[textvar]][!data.text[[textvar]] %in% junk.komentar]) - } - - tex.text <- NULL - for (textvar in names(data.text)) { - komentarji <- data.text[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text <- append(tex.text, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text <- append(tex.text, append(paste('\\textbf{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. - \\newline \\newline ')) - } - } - - part$predmet[[predmet]]$text <- tex.text - - ## //TEKSTOVNE// ## - - # e indeks predmetov - predmeti[[predmet]] <- list(izvajalci=izvajalci.predmeta, ime.datoteke=paste('predmet_', predmet, '.pdf', sep='')) #!preveri!, ime=ime.predmeta - - - predmeti.PO.zvezdica<-as.character(vars.predmet$cont$ime.kratko) - for(i in 8:length(predmeti.PO.zvezdica)) - { - predmeti.PO.zvezdica[i]=paste(predmeti.PO.zvezdica[i],"*",sep="") - } - - predmeti.PREF.PO.zvezdica<-as.character(vars.predmet$krediti$ime.kratko) - for(i in length(predmeti.PREF.PO.zvezdica)) - { - predmeti.PREF.PO.zvezdica[i]=paste(predmeti.PREF.PO.zvezdica[i],"*",sep="") - } - - # analiza predmeta po smereh in letnikih tudentov # - # Anketa PRED - sredinePredmeta <- as.numeric(povprecja.predmet.temp[,c("N_anket", paste0(komponente.predmeta.PRED,"_mean"), "predmet.ocena.SKUPAJ.pred")]) - predmetBySmer <- tabelaBy1(data=subset(povprecja.predmeti.programi.brez.cenzure, predmet.sifra==predmet & N_anket > 0)[c( - "N_anket", paste0(komponente.predmeta.PRED, "_mean"), paste0(komponente.predmeta.PRED,"_N"), "program.studentov.ime")], - contvars=komponente.predmeta.PRED, - plusvars=NULL, - by="program.studentov.ime", - minEnot=minEnot, - tablename=c(paste("Povprene ocene komponent \\textbf{predmeta} \\guillemotright" ,imepredmeta,"\\guillemotleft \\ glede na tudijski program** vpisanih tudentov (anketa PRED izpitom)")), - colNames=latex.rotate(c("t. odgovorov", imena_stolpcevPRED, "\\textbf{Skupaj}")), - decimalke=c(0, decimalno_mestoPRED,decimalkePredmSkupaj), - pobarvanka=c(FDVstopnjaPobarvanka$n.anket, pobarvanka.PRED,pobarvankaPredmSkupaj), - rownameSirina="p{10cm}", - means=sredinePredmeta, meansName="\\hline \\textbf{Povpreje predmeta}", - meansFDV=c(n.sodelujocih="--", vars.predmet$cont$meansFDV[c(komponente.predmeta.PRED, "povprecje.ocen.pred")]), meansFDVname=paste0("\\hline \\textbf{Povpreje ", fakulteta," (",kvantili.predmeti.st.pred," predmetov)}")) - - - # Anketa PO - sredinePredmetapo <- as.numeric(povprecja.predmet.temp[,c("N_anket_po_izpitu", paste0(komponente.predmeta.PO,"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")]) - predmetBySmerpo <- tabelaBy2(data=subset(povprecja.predmeti.programi.PO.brez.cenzure.PO, predmet.sifra==predmet & N_anket_po_izpitu > 0)[c( - "N_anket_po_izpitu", paste0(c(komponente.predmeta.PO,"predmet.ocena.krediti"),"_mean"), - paste0(c(komponente.predmeta.PO,"predmet.ocena.krediti"),"_N"), "program.studentov.ime")], - contvars=komponente.predmeta.PO, - plusvars="predmet.ocena.krediti", - by="program.studentov.ime", - minEnot=minEnot, - tablename="Povprene ocene komponent \\textbf{predmeta} glede na tudijski program** vpisanih tudentov (anketa PO izpitu)", - colNames=latex.rotate(c("t. odgovorov", imena_stolpcevPO, "\\textbf{Skupaj}", "Ustreznost KT***")), - decimalke=c(0,decimalno_mestoPO,decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(FDVstopnjaPobarvanka$n.anket,pobarvanka.PO,pobarvankaPredmSkupaj,as.character(vars.predmet$krediti$pobarvanka)), - rownameSirina="p{10cm}", - means=sredinePredmetapo, meansName="\\hline \\textbf{Povpreje predmeta}", - meansFDV=c(n.sodelujocih="--", vars.predmet$cont$meansFDV[c(komponente.predmeta.PO, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV), meansFDVname=paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," izvedb pri predmetih)}")) - - - # Anketa PRED (letnik tudentov) - predmetByLetnik <- tabelaBy3(data=subset(povprecja.predmeti.letniki.brez.cenzure, predmet.sifra==predmet & N_anket > 0)[c( - "N_anket", paste0(vars.predmet$cont$pred,"_mean"), paste0(vars.predmet$cont$pred,"_N"), "letnik.studentov")], - contvars=vars.predmet$cont$pred, - plusvars=NULL, - by="letnik.studentov", - minEnot=minEnot, - tablename="Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PRED izpitom)", - colNames=latex.rotate(c("t. odgovorov", imena_stolpcevPRED, "\\textbf{Skupaj}")), - decimalke=c(0,decimalno_mestoPRED ,decimalkePredmSkupaj), - pobarvanka=c(FDVstopnjaPobarvanka$n.anket,pobarvanka.PRED, pobarvankaPredmSkupaj), - rownameSirina="p{10cm}", - means=sredinePredmeta, meansName="\\hline \\textbf{Povpreje predmeta}", - meansFDV=c(n.sodelujocih="--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]), meansFDVname=paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred," izvedb pri predmetih)}")) - - - # Anketa PO (letnik tudentov) - predmetByLetnik1 <- tabelaBy4(data=subset(povprecja.predmeti.letniki.PO.brez.cenzure.PO, predmet.sifra==predmet & N_anket_po_izpitu > 0)[c( - "N_anket_po_izpitu", paste0(c(komponente.predmeta.PO,"predmet.ocena.krediti"),"_mean"), - paste0(c(komponente.predmeta.PO,"predmet.ocena.krediti"),"_N"), "letnik.studentov")], - contvars=komponente.predmeta.PO, - plusvars="predmet.ocena.krediti", - by="letnik.studentov", - minEnot=minEnot, - tablename="Povprene ocene komponent \\textbf{predmeta} po letniku tudentov (anketa PO izpitu)", - colNames=latex.rotate(c("t. odgovorov", imena_stolpcevPO, "\\textbf{Skupaj}", predmeti.PREF.PO.zvezdica)), - decimalke=c(0,decimalno_mestoPO ,decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(FDVstopnjaPobarvanka$n.anket,pobarvanka.PO, pobarvankaPredmSkupaj,as.character(vars.predmet$krediti$pobarvanka)), - rownameSirina="p{10cm}", - means=sredinePredmetapo, meansName="\\hline \\textbf{Povpreje predmeta}", - meansFDV=c(n.sodelujocih="--", vars.predmet$cont$meansFDV[c(komponente.predmeta.PO, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV), meansFDVname=paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po," izvedb pri predmetih)}")) - - - # quantiles - progs <- sub("\\*$", "", rownames(predmetBySmer$tabela[predmetBySmer$tabela$N_anket >= minEnot,])) - predmetBySmerProgrami <- subset(kvantili.predmeti.programi, predmet.sifra==unique(as.character(predmet)) & program.studentov.ime %in% progs) - progMeanPRED.tmp <- subset(pred.predmet[c("x","student.program.ime",vars.predmet.vars,"predmet.ocena.SKUPAJ","program.studentov")], - student.program.ime %in% progs & program.studentov %in% predmetBySmerProgrami$program.studentov) - predmetBySmerProgrami <- merge(progMeanPRED.tmp,predmetBySmerProgrami, - by.x="student.program.ime", - by.y="program.studentov.ime", all=TRUE) - - - if (nrow(predmetBySmerProgrami) > 0) { - if(any(duplicated(predmetBySmerProgrami$student.program.ime))) { - rownames(predmetBySmerProgrami) <- make.unique(c(paste0(predmetBySmerProgrami$student.program.ime, " \\textbf{}"))) - predmetBySmerProgrami <- predmetBySmerProgrami[c("x","N_anket", paste0(komponente.predmeta.PRED,"_mean"), "predmet.ocena.SKUPAJ.pred")] - }else {rownames(predmetBySmerProgrami) <- c(paste0(predmetBySmerProgrami$student.program.ime, " \\textbf{}")) - predmetBySmerProgrami <- predmetBySmerProgrami[c("x","N_anket", paste0(komponente.predmeta.PRED,"_mean"), "predmet.ocena.SKUPAJ.pred")]} - colnames(predmetBySmerProgrami) <- latex.rotate(c("t. predmetov*","t. odgovorov**", imena_stolpcevPRED, "\\textbf{Skupaj}")) - predmetBySmerProgrami <- capture.output(Hmisc::latex(predmetBySmerProgrami, - caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa, v katerega - so vpisani tudenti (anketa PRED izpitom)"), - rowlabel="", - file="", - where="H", - rowlabel.just="p{10cm}", - multicol=FALSE, - insert.bottom=kvan.pojas1, - col.just=c("c|","c|",rep_len("c", length(komponente.predmeta.PRED)),"|c"), - rowname=Hmisc::latexTranslate(rownames(predmetBySmerProgrami)))) - # } else {predmetBySmerProgrami <- NULL} - # } - } else {predmetBySmerProgrami<-NULL} - - progs1 <- sub("\\*$", "", rownames(predmetBySmerpo$tabela[predmetBySmerpo$tabela$N_anket_po_izpitu >= minEnot,])) - predmetBySmerProgrami1 <- subset(kvantili.predmeti.programi.PO, predmet.sifra==predmet & program.studentov.ime %in% progs1) - if (!is.null(po.predmet)) { - progMeanPRED.PO.tmp <- subset(po.predmet[c("x","student.program.ime",vars.predmet$cont$po,"predmet.ocena.SKUPAJ")], - student.program.ime %in% progs1) - predmetBySmerProgrami1 <- merge(progMeanPRED.PO.tmp, predmetBySmerProgrami1, by.x="student.program.ime", - by.y="program.studentov.ime", all=TRUE) - } - - - if (nrow(predmetBySmerProgrami1) > 0) { - if(any(duplicated(predmetBySmerProgrami1$student.program.ime))) { - rownames(predmetBySmerProgrami1) <- make.unique(c(paste0(predmetBySmerProgrami1$student.program.ime, " \\textbf{}"))) - predmetBySmerProgrami1 <- predmetBySmerProgrami1[c("x","N_anket_po_izpitu", paste0(komponente.predmeta.PO,"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - } else {rownames(predmetBySmerProgrami1) <- c(paste0(predmetBySmerProgrami1$student.program.ime, " \\textbf{}")) - predmetBySmerProgrami1 <- predmetBySmerProgrami1[progs1, c("x","N_anket_po_izpitu", paste0(komponente.predmeta.PO,"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")]} - kvan.pojas2<-c(paste0("{\\footnotesize \\textit{* Vrednost za \\guillemotright t.odgovorov\\guillemotleft\\ je - kvantilni rang za odgovarjajoe vrednosti, vendar ni obarvan, saj gre za administrativni podatek. - \\newline ** Kvantilni rang ", predmetBySmerProgrami1[1,8]," pomeni, da je ", - paste0(predmetBySmerProgrami1[1,8], "\\%")," vseh ocenjenih predmetov zahtevalo - nije tevilo ur glede na tevilo kreditnih tok.\\newline *** Gre za vse predmete z vsaj 4 odgovori - (tudi predmete drugih programov, e so bili izbirni), ki so jih vpisali tudenti doloenega programa.}}")) - colnames(predmetBySmerProgrami1) <- latex.rotate(c("t. predmetov***","t. odgovorov*", imena_stolpcevPO, - "\\textbf{Skupaj}", predmeti.PREF.PO.zvezdica)) - predmetBySmerProgrami1 <- predmetBySmerProgrami1[c(1,2,4,5,6,7,3,8)] - predmetBySmerProgrami1 <- capture.output(Hmisc::latex(predmetBySmerProgrami1, - caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{predmeta} - glede na vse predmete tudijskega programa - (anketa PO izpitu)"), - rowlabel="", - file="", - where="H", - rowlabel.just="p{10cm}", - multicol=FALSE, - insert.bottom=kvan.pojas2, - col.just=c("c|","c|",rep_len("c", length(komponente.predmeta.PO[-1])),"|c|","c","c"), - rowname=Hmisc::latexTranslate(rownames(predmetBySmerProgrami1)))) - } else {predmetBySmerProgrami1 <- NULL} - - ##NOT DOING THIS NOW - #Tabela 2.6 pri starih izpisih (glej izvajalca 321). Kam se uvra Povpreje predmeta - #glede na povreje celotnega programa, ki mu pripada. ANKETA PRED IZPITOM - #progMeanPredm.tmp <-subset(pred.predmet[c("x","student.program.ime",vars.predmet.vars,"predmet.ocena.SKUPAJ")], - #student.program.ime %in% progs) - #if (nrow(progMeanPredm.tmp) > 0) { - # rownames(progMeanPredm.tmp) <- progMeanPredm.tmp$student.program.ime - #progMeanPredm.tmp <- progMeanPredm.tmp[progs, c("x", paste0(vars.predmet.vars),"predmet.ocena.SKUPAJ")] - #colnames(progMeanPredm.tmp) <- latex.rotate(c("t. predmetov", imena_stolpcevPRED, "\\textbf{Skupaj}")) - #progMeanPredm.tmp <- capture.output(Hmisc::latex(progMeanPredm.tmp, - #caption=paste("Skupno Povpreje komponent \\textbf{predmeta} glede na vpis v - #izbran tudijski program (anketa PRED izpitom (kot primerjava za ocene obravnavenega predmeta v zgornji tabeli)"), - #rowlabel="", file="", where="H", rowlabel.just="p{10cm}",insert.bottom=pojasPRED.tmp, multicol=FALSE, - #col.just=c("c|", rep_len("c", length(vars.predmet.vars)),"|c"), - #rowname=Hmisc::latexTranslate(rownames(progMeanPredm.tmp)))) - #} else {progMeanPredm.tmp <- NULL} - ####### - ##NOT DOING THIS NOW - progMeanPredm.tmp <- NULL - #Tabela 2.9 pri starih izpisih (glej izvajalca 321). - #Kam se uvra Povpreje predmeta glede na povreje celotnega programa, ki mu pripada. ANKETA PO IZPITU - #progMeanPredm.PO.tmp <-subset(po.predmet[c("x","student.program.ime",vars.predmet$cont$po,"predmet.ocena.SKUPAJ")], - #student.program.ime %in% progs) - #if (nrow(progMeanPredm.PO.tmp ) > 0) { - #rownames(progMeanPredm.PO.tmp) <- progMeanPredm.PO.tmp$student.program.ime - #progMeanPredm.PO.tmp <- progMeanPredm.PO.tmp[progs, c("x", paste0(vars.predmet$cont$po),"predmet.ocena.SKUPAJ")] - #colnames(progMeanPredm.PO.tmp) <- latex.rotate(c("t. predmetov", imena_stolpcevPO, "\\textbf{Skupaj}")) - #progMeanPredm.PO.tmp <- capture.output(Hmisc::latex(progMeanPredm.PO.tmp, - #caption=paste("Skupno Povpreje komponent \\textbf{predmeta} glede na vpis v - #izbran tudijski program - anketa PO izpitu (kot primerjava za ocene obravnavenega predmeta v zgornji tabeli)"), - #rowlabel="", file="", where="H", rowlabel.just="p{10cm}",insert.bottom=pojasPRED.tmp, multicol=FALSE, - #col.just=c("c|", rep_len("c", length(vars.predmet$cont$po)),"|c"), - #rowname=Hmisc::latexTranslate(rownames(progMeanPredm.PO.tmp)))) - #} else {progMeanPredm.PO.tmp <- NULL} - ####### - ##NOT DOING THIS NOW - progMeanPredm.PO.tmp <- NULL - - part$predmet[[predmet]]$BySmerLetnik <- c("\\setlength{\\tabcolsep}{3pt}", predmetBySmer$tex,predmetBySmerProgrami, - predmetBySmerpo$tex, progMeanPredm.PO.tmp, predmetBySmerProgrami1, - predmetByLetnik$tex, predmetByLetnik1$tex, "\\setlength{\\tabcolsep}{6pt}") - - - } else { # e ni dovolj enot - part$predmet[[predmet]]$pojasniloPremaloEnot <- '- Zaradi prenizkega tevila odgovorov analiza predmeta ni bila narejena. -' - } - ## //analiza predmeta po smereh in letnikih tudentov// ## - - - ## skupne tabele za predmete (POVZETKI) ## - pobarvankaIzvajalec9_BDorBP <- c("NE","NE",list(FDVstopnja=NA),"NE","NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj) - pobarvankaPredmet_BDorBPpred <- c("NE", "NE", list(pct.sodelujocih=NA), "NE", "NE", - vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj) - pobarvankaPredmet_BDorBPpo <- c("NE", "NE", list(pct.sodelujocih=NA), "NE", "NE", - vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, - vars.predmet$krediti$pobarvanka) - - # if (povprecja.predmet.temp$STOPNJA==1) { - # FDVmeans_Izvajalec9_BDorBP <- c(FDVizvajalci["1", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - # vars.izvajalec$cont$meansFDV) - - #FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["1",c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - # vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - #FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["1",c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - # "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], - # vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], - # vars.predmet$krediti$meansFDV) - # - #pobarvankaIzvajalec9_BDorBP$FDVstopnja <- FDVstopnjaPobarvanka$dodiplomski - #pobarvankaPredmet_BDorBPpred$pct.sodelujocih <- FDVstopnjaPobarvanka$dodiplomski - #pobarvankaPredmet_BDorBPpo$pct.sodelujocih <- FDVstopnjaPobarvanka$dodiplomski - #} else if (povprecja.predmet.temp$STOPNJA==2) { - # FDVmeans_Izvajalec9_BDorBP <- c(FDVizvajalci["2", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - # vars.izvajalec$cont$meansFDV) - - #FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["2",c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - # vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - #FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["2",c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - # "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], - # vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], - # vars.predmet$krediti$meansFDV) - - # pobarvankaIzvajalec9_BDorBP$FDVstopnja <- FDVstopnjaPobarvanka$podiplomski - # pobarvankaPredmet_BDorBPpred$pct.sodelujocih <- FDVstopnjaPobarvanka$podiplomski - #pobarvankaPredmet_BDorBPpo$pct.sodelujocih <- FDVstopnjaPobarvanka$podiplomski - #} else { - FDVmeans_Izvajalec9_BDorBP <- c(FDVizvajalci["skupaj", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.izvajalec$cont$meansFDV) - - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["skupaj",c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["skupaj",c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], - vars.predmet$krediti$meansFDV) - - pobarvankaIzvajalec9_BDorBP$FDVstopnja <- FDVstopnjaPobarvanka$skupaj - pobarvankaPredmet_BDorBPpred$pct.sodelujocih <- FDVstopnjaPobarvanka$skupaj - pobarvankaPredmet_BDorBPpo$pct.sodelujocih <- FDVstopnjaPobarvanka$skupaj - ## - # povzetek izvajalcev predmeta - povzIzv <- povprecja.izvajalci[povprecja.izvajalci$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - imenaIzv <- povprecja.izvajalci[povprecja.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - meansI <- subset(povprecja.predmet.izvajalci.skupaj, predmet.sifra==predmet)[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - if (sum(is.na(povzIzv)) > 0) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaI <- NULL} - povzIzv <- rbind(povzIzv, meansI, FDVmeans_Izvajalec9_BDorBP) - siveVrsticeIzv <- c((as.numeric(povzIzv$N_anket[1:(nrow(povzIzv)-2)]) < minEnot), rep(FALSE, 2)) - povzIzv <- formatNA(povzIzv, decimalke=c(0,0,0,0,0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=unlist(pobarvankaIzvajalec9_BDorBP), siveVrstice=siveVrsticeIzv, na.repl=".") - rownames(povzIzv) <- c(Hmisc::latexTranslate(imenaIzv), "\\hline \\textbf{Povpreje izvajalcev predmeta}", paste("\\hline \\textbf{Povpreje izvajalcev", fakulteta, "(po vseh izvedbah)}")) - colnames(povzIzv) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - tex.povzIzv <- capture.output(Hmisc::latex(povzIzv, caption="Povprene ocene komponent pedagokega dela izvajalcev (anketa PRED izpitom)", rowlabel="", file="", where="H", multicol=FALSE, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{8.9cm}", insert.bottom=opombaI)) - - # povzetek predmeta - povzPredmPRED <- rbind(povprecja.predmet.temp[,c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")], unlist(FDVmeansPredmet_BDorBPpred)) - povzPredmPO <- rbind(povprecja.predmet.temp[,c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")], unlist(FDVmeansPredmet_BDorBPpo)) - - if (any(is.na(povzPredmPRED))) {opombaPpred <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpred <- NULL} - if (any(is.na(povzPredmPO ))) {opombaPpo <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.}}"} else {opombaPpo <- NULL} - - #povzPredmPRED <- formatNA(povzPredmPRED, pobarvanka=as.character(pobarvankaPredmet_BDorBPpred), na.repl=".", decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj)) - #povzPredmPO <- formatNA(povzPredmPO, pobarvanka=as.character(pobarvankaPredmet_BDorBPpo), na.repl=".", decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po ]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke))) - - - povzPredmPRED1 <- formatNA1(povzPredmPRED[1:5], decimalke=c(0,0,0,0,0), pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket,FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct,FDVstopnjaPobarvanka$zavr.pct), na.repl=".") #Vrednostim 1:5 dodamo oglepaje - povzPredmPRED2 <- formatNA(povzPredmPRED[6:13], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), pobarvanka=c(as.character(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred]),pobarvankaPredmSkupaj), na.repl=".") # preostale vrednosti obarvamo - povzPredmPRED <- cbind(povzPredmPRED1,povzPredmPRED2) #zdruimo - - - povzPredmPO1 <- formatNA1(povzPredmPO[1:5], decimalke=c(0,0,0,0,0), pobarvanka=c(FDVstopnjaPobarvanka$st.stud,FDVstopnjaPobarvanka$n.anket,FDVstopnjaPobarvanka$sodelu.pct,FDVstopnjaPobarvanka$zavr.pct,FDVstopnjaPobarvanka$zavr.pct), na.repl=".") #Vrednostim 1:5 dodamo oglepaje - povzPredmPO2 <- formatNA(povzPredmPO[6:11], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), decimalkePredmSkupaj, as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c(as.character(vars.predmet$cont$pobarvanka[vars.predmet$cont$po]),pobarvankaPredmSkupaj, as.character(vars.predmet$krediti$pobarvanka)), na.repl=".") # preostale vrednosti obarvamo - povzPredmPO <- cbind(povzPredmPO1,povzPredmPO2) #zdruimo - - - rownames(povzPredmPRED) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', povprecja.predmet.temp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.pred," predmetov)}"))) - rownames(povzPredmPO) <- Hmisc::latexTranslate(c(paste0(gsub('izredna izvedba', 'I', povprecja.predmet.temp$ime.predmeta)), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (",kvantili.predmeti.st.po," predmetov)}"))) - colnames(povzPredmPRED) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - colnames(povzPredmPO) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - - - povzPredmPO <- povzPredmPO[c(1,2,3,4,5,7,8,9,10,6,11)] - tex.povzPredmPRED <- c(capture.output(Hmisc::latex(povzPredmPRED, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PRED izpitom)', rowlabel='', file='', where='H', multicol=FALSE, - col.just=c(rep_len('c',1),'c|','c','c','c|',rep_len('c', length(vars.predmet$cont$pred)),'|c'), rowlabel.just='p{7.7cm}', insert.bottom=opombaPpred))) - - tex.povzPredmPO <- c(capture.output(Hmisc::latex(povzPredmPO, caption='Povprene ocene komponent \\textbf{predmeta} (anketa PO izpitu)', rowlabel='', file='', where='H', multicol=FALSE, - col.just=c(rep_len("c",1),"c|","c","c","c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), rowlabel.just='p{8.9cm}', insert.bottom=opombaPpo))) - - - part$predmet[[predmet]]$povzetek <- c("\\chapter{Povzetek predmetov}",paste("Prikazana so povpreja za ocene komponent predmetov na lestvici 1-5 - za vse predmete izvajalca z vsaj 4 odgovori. - Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno}}, - povpreja pod 3.0 pa {\\color{BrickRed}\\textbf{rdee}}. - Nizko tevilo enot in neugodne stopnje sodelovanja so oznaene - z enojnim () oziroma z dvojnim oklepajem (()). - Podrobnosti so na \\url{http://ul.1ka.si/metodologija}, - kjer se nahajajo tudi vpraalniki."), - tex.povzPredmPRED, tex.povzPredmPO) - ## //skupne tabele za predmete (povzetki)// ## - - - ## kvantili ## - kvantili.izvajalcev.predmeta <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - imenaIzv <- kvantili.izvajalci[kvantili.izvajalci$predmet.sifra==predmet, "NAZIV.PEDAGOGA"] - - - if (any(kvantili.izvajalcev.predmeta == ".")) {opombaI <- "{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.1, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.}"} else {opombaI <- pojas} - rownames(kvantili.izvajalcev.predmeta) <- Hmisc::latexTranslate(imenaIzv) - colnames(kvantili.izvajalcev.predmeta) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - - kvantili.predmeta.pred <- kvantili.predmeti[kvantili.predmeti$predmet.sifra==predmet, c("ST_STUD","N_anket","sodelujocih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - kvantili.predmeta.po <- kvantili.predmeti[kvantili.predmeti$predmet.sifra==predmet, c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - - int.predmetPRED <- c(paste0("{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.1, \n vendar niso dodatno obarvani, saj gre za administrativne podatke. Kvantilni rang ", kvantili.predmeta.pred[1,1]," za predmet \\guillemotright ", subset(povprecja.predmet.temp, predmet.sifra==predmet)$PREDMET,"\\guillemotleft \\ pomeni, da je imelo ", paste0(kvantili.predmeta.pred[1,1], "\\%")," predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", paste0(povzPredmPRED[1,1]), " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", kvantili.predmeta.pred[1,11], " (\\textbf{Skupaj}), pomeni \nda je ", paste0(kvantili.predmeta.pred[1,11], "\\%"), " od ",kvantili.predmeti.st.pred," predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", round(subset(povprecja.predmet.temp, predmet.sifra==predmet)$predmet.ocena.SKUPAJ.pred,digits=1), " (\\textbf{Skupaj}) v tabeli 1.1.}}")) - int.predmetPO <- c(paste0("{\\footnotesize \\textit{* Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 1.2, \n vendar niso dodatno obarvani, saj gre za administrativne podatke.\\newline ** Kvantilni rang ", kvantili.predmeta.po[1,8], " (\\textbf{Skupaj}), pomeni \nda je ", paste0(kvantili.predmeta.po[1,8], "\\%"), " od ",kvantili.predmeti.st.po," predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", round(subset(povprecja.predmet.temp, predmet.sifra==predmet)$predmet.ocena.SKUPAJ.po,digits=1), " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", kvantili.predmeta.po[1,9]," (\\textbf{Ustreznost KT}) pomeni, da je ", paste0(kvantili.predmeta.po[1,9], "\\%")," vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}}")) - - - if (any(kvantili.predmeta.pred == ".")) {opombaPpred <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.2, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.\\newline **Kvantilni rang ", kvantili.predmeta.pred[1,1]," za predmet \\guillemotright ", gsub("_", "\\_", rownames(kvantili.predmeta.pred)[1], fixed = TRUE),"\\guillemotleft \\ pomeni, da je imelo ", paste0(kvantili.predmeta.pred[1,1], "\\%")," predmetov manje tevilo vpisanih tudentov od odgovarjajoe vrednosti ", paste0(kvantili.predmeta.pred[1,1]), " pri tem predmetu v Tabeli 1.1.\\newline ** Kvantilni rang ", kvantili.predmeta.pred[1,11], " (\\textbf{Skupaj}), pomeni \nda je ", paste0(kvantili.predmeta.pred[1,11], "\\%"), " od ",kvantili.predmeti.st.pred," predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", round(subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.pred[1],digits=1), " (\\textbf{Skupaj}) v tabeli 1.1.}"))} else {opombaPpred <- int.predmetPRED} - if (any(kvantili.predmeta.po == ".")) {opombaPpo <- c(paste0("{\\footnotesize \\textit{. Podatek ni prikazan zaradi premajhnega tevila enot.} \\newline * Tudi vrednosti za \\guillemotright t.vpisanih\\guillemotleft \\, \\guillemotright t.odgovorov\\guillemotleft \\ in \\guillemotright \\% odgovorov\\guillemotleft \\\nso kvantilni rangi za odgovarjajoe vrednosti v Tabeli 2.3, \n vendar navedeni kvantilni rangi niso ovrednoteni in obarvani, saj gre za administrativne podatke.\\newline ** Kvantilni rang ", kvantili.predmeta.po[1,8], " (\\textbf{Skupaj}), pomeni \nda je ", paste0(kvantili.predmeta.po[1,8], "\\%"), " od ",kvantili.predmeti.st.po," predmetov imelo nije povpreje ocen od odgovarjajoe vrednosti ", round(subset(povprecja.predmeti, predmet.sifra %in% izvajalci[[izvajalec]]$predmeti)$predmet.ocena.SKUPAJ.po[1], digits=1), " (\\textbf{Skupaj}) v tabeli 1.2. Kvantilni rang ", kvantili.predmeta.po[1,9]," (\\textbf{Ustreznost KT}) pomeni, da je ", paste0(kvantili.predmeta.po[1,9], "\\%")," vseh predmetov glede na tevilo kreditnih tok zahtevalo manje tevilo ur.}"))} else {opombaPpo <- int.predmetPO} - - rownames(kvantili.predmeta.pred) <- Hmisc::latexTranslate(paste0(gsub("izredna izvedba", "I", povprecja.predmet.temp$ime.predmeta))) - rownames(kvantili.predmeta.po ) <- rownames(kvantili.predmeta.pred) - colnames(kvantili.predmeta.pred) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - colnames(kvantili.predmeta.po) <- latex.rotate(c("t. vpisanih*", "t. odgovorov*", "\\% odgovorov*", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - - # explain what specific quantile means - primer.kvantil <- kvantili.izvajalcev.predmeta[,ncol(kvantili.izvajalcev.predmeta)][kvantili.izvajalcev.predmeta[,ncol(kvantili.izvajalcev.predmeta)] != "."][1] - if (is.na(primer.kvantil)) { - primer.kvantil <- "." - } - - opredelitev.kvantili.predmet<-paste("Kvantilni rangi oznaujejo poloaj predmeta oziroma izvajalca med vsemi predmeti oziroma izvajalci celotne fakultete.\nZgornja etrtina (75-100) je obarvana {\\color{Chateau Green}\\textbf{zeleno (pohvalno)}}, zgornja desetina (90-100) {\\color{Blue Stone}\\textbf{modrozeleno (odlino)}}.\nSpodnja etrtina (0-25) je obarvana {\\color{Orange}\\textbf{oranno (opozorilno)}}, spodnja desetina (0-10) {\\color{BrickRed}\\textbf{rdee (kritino)}}. Podrobnosti so na \\url{http://ul.1ka.si/metodologija}.") - #pojasnilo.kvantili <- paste("Primer interpretacije Tabele 2.4:\nKvantilni rang", primer.kvantil, "(\\textbf{Skupaj}) v Tabeli 2.4 pomeni, da je", paste0(primer.kvantil, "\\%"), "izvedb pri predmetih imelo nije Povpreje ocenjenih komponent. Podrobnosti so v metodolokem pojasnilu.") - #pojasnilo.kvantili <- paste("Kvantilni rang", primer.kvantil, "(\\textbf{Skupaj}) v spodnji tabeli pomeni, da je", paste0(primer.kvantil, "\\%"), "izvedb imelo nijo Povpreno oceno. (torej od Povpreja izvajalca", round(subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, digits=1), "v tabeli 2.1). Kvantilni rang",kvantili.izvajalca.skupaj[10], "v tabeli 2.5 pa pomeni, \nda ima", paste0(kvantili.izvajalca.skupaj[10], "\\%"), "izvajalcev nije Povpreje od Povpreja izvajalca",round(subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, digits=1),",ki je Povpreje v tabeli 2.1. \nPodrobnosti so v metodolokem pojasnilu.") - #pojasnilo.kvantili1 <- paste("Primer interpretacije:\nKvantilni rang", kvantili.izvajalca.skupaj[10], "v tabeli 2.5 pomeni, \nda ima", paste0(kvantili.izvajalca.skupaj[10], "\\%"), "izvajalcev nije Povpreje od Povpreja izvajalca", round(subset(povprecja.izvajalci.skupaj, izvajalec.sifra == izvajalec)$izvajalec.ocena.SKUPAJ, digits=1),",ki je Povpreje v tabeli 2.1. \nPodrobnosti so v metodolokem pojasnilu.") - - - kvantili.predmeta.po<-kvantili.predmeta.po[c(1,2,3,5,6,7,8,4,9)] - tex.kvantili.predmeta.pred <- c(capture.output(Hmisc::latex(kvantili.predmeta.pred, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", kvantili.predmeti.st.pred, "predmeti (anketa PRED izpitom)"), rowlabel="", file="", where="H", multicol=FALSE, - col.just=c("c","c","c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="p{9cm}", insert.bottom=opombaPpred))) - tex.kvantili.predmeta.po <- c(capture.output(Hmisc::latex(kvantili.predmeta.po, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{predmetov} med ", kvantili.predmeti.st.po, "predmeti (anketa PO izpitu)"), rowlabel="", file="", where="H", multicol=FALSE, - col.just=c('c','c','c|', rep_len('c', length(vars.predmet$cont$po[-1])),'|c','|c','c'), rowlabel.just="p{10cm}", insert.bottom=opombaPpo))) - - tex.kvantili.izvajalcev.predmeta <- capture.output(Hmisc::latex(kvantili.izvajalcev.predmeta, caption=paste("Kvantilni rangi za povprene ocene komponent \\textbf{izvajalcev pri predmetih} - anketa PRED izpitom (med skupno", kvantili.izvajalci.st, "izvedbami)"), rowlabel="", file="", where="H", multicol=FALSE, - col.just=c("c","c","c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="p{10cm}", insert.bottom=opombaI)) - - part$predmet[[predmet]]$kvantili <- c("\\newpage", "\\section{Kvantilni rangi}", opredelitev.kvantili.predmet, tex.kvantili.predmeta.pred, tex.kvantili.predmeta.po) - ## //kvantili// ## - } -## /predmet/ ## -############## - -############################# -# /GENERIRANJE tex delov/ -############################# - -####################################################################################### -# SESTAVLJANJE in KOMPILACIJA .tex datotek -####################################################################################### -# V Mapi latexkosi so definirane: Glava latex dokumenta, noga latex dokumenta -tex.glava <- scan('Evalvacija/latexkosi/a-glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') #encoding='UTF-8' (Ȏ ji) -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava) # V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava) # Izpis imena leta semestra -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("--","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x = tex.glava) # encoding -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') # Latex noga (end document) -Rdirektorij <- getwd() - - -## REPORTI IZVAJALCEV ## -if (omejeniIzvajalci) { # Ali naj poroila generira samo za tiste izvajlce, ki smo jih opredelili v navodila_dodatno-UTF-8.r - sifreIzvajalecZaPDF <- as.character(omejeniIzvajalciSifre) # Kateri so to -} else {sifreIzvajalecZaPDF <- as.character(names(izvajalci))} -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - tex.report.izvajalec <- NULL - for (predmet in izvajalci[[izvajalec]]$predmeti){ - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot (in izvajalci ne morejo imeti več odg. kot predmet) - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { # e ni pojasnila o premalo odg. nadaljuje s sestavljanjem - - tex.part.predmet <- c(part$predmet[[predmet]]$cont, "\\newpage", - part$predmet[[predmet]]$krediti, "\\newpage", - part$predmet[[predmet]]$kompetence1, "\\newpage", - "\\subsubsection{\\Large Analiza predmeta po programih in letnikih}", - part$predmet[[predmet]]$BySmerLetnik, - "\\section{Predmet: Odgovori na odprta vpraanja}", - part$predmet[[predmet]]$text) - # Ocene tudijske prakse - tex.part.praksa <- c(part$predmet[[predmet]]$praksa) - - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo, da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - } else { - tex.part.predmet.izvajalec <- c(part$izvajalec[[izvajalec]][[predmet]]$cont, "\\newpage", - "\\subsubsection{\\Large Analiza izvajalca po programih in letnikih}", - part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik, - "\\section{Izvajalec: Odgovori na odprta vpraanja}", - part$izvajalec[[izvajalec]][[predmet]]$text) - } - - ## e nosilci dobijo tudi ocene soizvajalcev ## - if (nosilci_soizvajalcev) { - tex.soizvajalci.predmet <- NULL - nosilec <- subset(sifrant, IDP==predmet & NOSILEC=="1")$IDPEDAGOGA - if (!is.null(nosilec) && izvajalec %in% nosilec) { - soizvajalci <- as.character(predmeti[[predmet]]$izvajalci)[as.character(predmeti[[predmet]]$izvajalci) != izvajalec] - soizvajalci <- soizvajalci[!(soizvajalci %in% nosilec)] # V primeru, da ima en predmet ve nosilcev, prepreimo, da bi - # nosilec predmeta dobil ocene drugega nosilca predmeta (Pravna fakulteta je eden izmed primerov) - for (soizvajalec in soizvajalci){ - if (!is.null(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot)) { - # e obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.soizvajalec <- c(part$izvajalec[[soizvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - tex.part.soizvajalecBySmerLetnik <- NULL - } else { - tex.part.predmet.soizvajalec <- c('\\textbf{KOMPONENTE PEDAGOKEGA DELA}', - part$izvajalec[[soizvajalec]][[predmet]]$cont) - tex.part.soizvajalecBySmerLetnik <- c('\\textbf{ANALIZA IZVAJALCA PRI PREDMETU PO PROGRAMIH IN LETNIKIH}', - part$izvajalec[[soizvajalec]][[predmet]]$BySmerLetnik, - "\\textbf{ODGOVORI NA ODPRTA VPRAANJA}","\\newline","\\newline", - part$izvajalec[[soizvajalec]][[predmet]]$text) - } - tex.naslov.soizvajalca <- paste('\\subsubsection{', izvajalci[[soizvajalec]]$ime, '}', sep = '') - tex.soizvajalci.predmet <- c(tex.soizvajalci.predmet, tex.naslov.soizvajalca, tex.part.predmet.soizvajalec, - tex.part.soizvajalecBySmerLetnik, "\\newpage") - - } - } - } - ## //e nosilci dobijo tudi ocene soizvajalcev// ## - - tex.parti <- c("\\newpage", - "\\section{Ocene predmeta}", - "\\subsubsection{Podrobne analize odgovorov (anketa PRED in anketa PO izpitu)}", - tex.part.predmet,"\\newpage", - "\\section{Ocena izvajalca}", - tex.part.predmet.izvajalec, - "\\newpage") - - } - - #ZNAK "&" v imenu predmeta (NARAVOSLOVNO TEHNIKA) - predmet.ime <- subset(povprecja.predmeti, predmet.sifra == predmet)$ime.predmeta - predmet.ime <- gsub('&', '\\&', predmet.ime, fixed = T) - predmet.ime <- gsub('-', '--', predmet.ime, fixed = T) - - tex.report.izvajalec <- c(tex.report.izvajalec, "\\newpage", - paste("\\chapter{", gsub('_', '\\_', subset(povprecja.predmeti, predmet.sifra==predmet)$ime.predmeta, fixed=T), "}", sep = ""), - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) {part$predmet[[predmet]]$response}, - tex.parti,"\\newpage", - if (is.null(part$predmet[[predmet]]$pojasniloPremaloEnot) & - nosilci_soizvajalcev && !is.null(tex.soizvajalci.predmet)) { - c("\\section{Ocene soizvajalcev}", tex.soizvajalci.predmet)}) - } - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec <- gsub(pattern = '!naslov!', replacement=Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), x = tex.glava) - - # Tabele komponent tudijskih programov v katerih sodeluje izvajalec - tex.program <- c("\\newpage", - "\\chapter{Sumarne ocene tudijskih programov}", - paste("Prikazana so Povpreja za ocene komponent - vseh programov, v katerih je izvajalec sodeloval. - Pri vsakem programu so upotevane le ocene tudentov, - ki so v program formalno vpisani. - Izpisi omogoajo primerjave izvajalca s povpreji - odgovarjajoih programov - (posredno so rezultati vkljueni v izraun kvantilnih - rangov predmeta po programih). "), - part$izvajalec[[izvajalec]]$povzetek2, - part$izvajalec[[izvajalec]]$povzetek3, - part$izvajalec[[izvajalec]]$povzetek1) - - # TEST # - # e bi eleli vstaviti ocene od katerega drugega pedagoga. - #if (file.exists(paste0('C:/Miha DELO/da.tex'))) { # ali ocene obstajajo (so v mapi) - # tex.poLetih <- scan(paste0('C:/Miha DELO/da.tex'), character(0), sep='\n', quiet=TRUE) - #} else { - # tex.poLetih <- '- Ni podatkov -' - #} - ## //TEST// ## - - # Struktura izpisa za izvajalca (zdruevanje vektorjev in sestava podatkovnega okvirja) - tex.report.izvajalec <- c(tex.glava.izvajalec, - "\\chapter{Povzetek}", - "\\setlength{\\tabcolsep}{4pt}", - part$izvajalec[[izvajalec]]$povzetek, - "\\newpage", part$izvajalec[[izvajalec]]$kvantili, - "\\newpage", "\\setlength{\\tabcolsep}{6pt}", - tex.report.izvajalec,tex.part.praksa, - "\\newpage","\\setlength{\\tabcolsep}{3pt}", - "\\renewcommand{\\arraystretch}{0}", # defines vertical spacing of tables - tex.program,"\\newpage", - tex.okvir, tex.noga) - - - # Outputs the objects, concatenating the representations. - cat(tex.report.izvajalec, file = paste('Evalvacija/results/izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '.tex', sep = ''), sep = '\n') - setwd(paste(Rdirektorij, 'Evalvacija/results', sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste('izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '.tex', sep = ''), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} - - - -## NAREDIMO E LOENA POROILA IZVAJALCEV, KI VSEBUJEJO LE POGLAVJE POVZETEK -# Definiramo Glavo dokumenta -tex.glava.povzetek <- scan('Evalvacija/latexkosi/povzetek.glava.tex', character(0), sep = '\n', quiet = TRUE, encoding = 'UTF-8') #encoding='UTF-8' (Ȏ ji) -# Ime fakultete -tex.glava.povzetek <- gsub(pattern='!ime.fak!', replacement = Hmisc::latexTranslate(ime.fakultete), x = tex.glava.povzetek) # V naslovnici izpis imena fakultete -# tudijsko leto -tex.glava.povzetek <- gsub(pattern='!leto!', replacement = Hmisc::latexTranslate(semester.leto), x = tex.glava.povzetek) # Izpis imena leta semestra - -# For zanka -for (izvajalec in as.character(sifreIzvajalecZaPDF)){ - tex.report.izvajalec.povzetek <- NULL - - # Izpis imena izvajalca na prvi strani dokumenta - tex.glava.izvajalec.povzetek <- gsub(pattern = '!naslov!', replacement=Hmisc::latexTranslate(izvajalci[[izvajalec]]$ime), x = tex.glava.povzetek) - - - tex.report.izvajalec.povzetek <- c(tex.glava.izvajalec.povzetek, - "\\setlength{\\tabcolsep}{4pt}", - part$izvajalec[[izvajalec]]$povzetek.povzetek, - tex.noga) - - - # Outputs the objects, concatenating the representations. - cat(tex.report.izvajalec.povzetek, file = paste('Evalvacija/results/izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta, '_povzetek','.tex', sep = ''), sep = '\n') - setwd(paste(Rdirektorij, 'Evalvacija/results', sep = '/')) - # ZAPIEMO tex format v PDF (Generiramo PDF izpis) - tools::texi2pdf(file = paste('izvajalec_', gsub('.*_([0-9]+).*','\\1',izvajalec),"_", fakulteta,'_povzetek', '.tex', sep = ''), quiet = TRUE, clean = TRUE) - setwd(Rdirektorij) -} - -## //REPORTI IZVAJALCEV// ## diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_predmet.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_predmet.R deleted file mode 100644 index f94adfb4f..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_predmet.R +++ /dev/null @@ -1,73 +0,0 @@ -# POROILA PREDMETOV - -source("Evalvacija/R/koda-predmet.r") - - - -############################# -# /GENERIRANJE tex delov/ -############################# -####################################################################################### -# SESTAVLJANJE in KOMPILACIJA .tex datotek -####################################################################################### -tex.glava <- scan('Evalvacija/latexkosi/a-glava-predmet.tex', character(0), sep='\n', quiet=TRUE,encoding='UTF-8') #encoding='UTF-8' (Ȏ ji) -tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) #V naslovnici izpis imena fakultete -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) #Izpis imena leta semestra -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan('Evalvacija/latexkosi/z-noga.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') -Rdirektorij <- getwd() - - -# REPORTI PREDMETOV # -for (predmet in names(predmeti)){ - tex.izvajalci.predmet <- NULL - predmet.temp <- subset(povprecja.predmeti, predmet.sifra==predmet) - if (!is.null(part$predmet[[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.parti <- part$predmet[[predmet]]$pojasniloPremaloEnot - } else { - tex.part.predmet <- c(part$predmet[[predmet]]$cont, "\\newpage", part$predmet[[predmet]]$krediti, "\\newpage",part$predmet[[predmet]]$kompetence1,"\\newpage", - "\\section{Analiza po programih in letnikih}", part$predmet[[predmet]]$BySmerLetnik, "\\newpage","\\section{Odgovori na odprta vpraanja}", part$predmet[[predmet]]$text) - - - for (izvajalec in as.character(predmeti[[predmet]]$izvajalci)){ - if (!is.null(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot)) { # če obstaja pojasnilo da analiza ni narejena zaradi premalo enot - tex.part.predmet.izvajalec <- c(part$izvajalec[[izvajalec]][[predmet]]$pojasniloPremaloEnot, "\\newpage") - tex.part.izvajalecBySmerLetnik <- NULL - } else { - tex.part.predmet.izvajalec <- c("\\subsection{Komponente pedagokega dela}", part$izvajalec[[izvajalec]][[predmet]]$cont, "\\newpage") - tex.part.izvajalecBySmerLetnik <- c('\\subsection{Analiza po smereh in letnikih}', part$izvajalec[[izvajalec]][[predmet]]$BySmerLetnik) - } - tex.naslov.izvajalca <- paste('\\section{', izvajalci[[izvajalec]]$ime, '}', sep='') - tex.izvajalci.predmet <- c(tex.izvajalci.predmet, tex.naslov.izvajalca, tex.part.predmet.izvajalec, tex.part.izvajalecBySmerLetnik, "\\newpage") - } - tex.parti <- c("\\newpage", - '\\section{Ocene iz ankete PRED in ankete PO izpitu}', tex.part.predmet - - ) - } - - tex.glava.predmet <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(gsub('_', '\\_', predmet.temp$ime.predmeta[1], fixed=TRUE)), x=tex.glava) - if (predmet.temp$STOPNJA[1]==1) { - stopnjaText <- 'Dodiplomski tudij' - } else if (predmet.temp$STOPNJA[1]==2) { - stopnjaText <- 'Podiplomski tudij' - } else {stopnjaText <- ''} - tex.glava.predmet <- gsub(pattern='\\hfillprostorZaStopnjoStudija', replacement=Hmisc::latexTranslate(stopnjaText), tex.glava.predmet, fixed=TRUE) - if (oblikovanje_izvedbe) { - tex.glava.predmet <- gsub(pattern='\\hfillprostorZaIzvedbo', replacement=oblikujIzvedbo(predmet.temp$IZVEDBA, predmet.temp$SEMESTER_IZV), tex.glava.predmet, fixed=TRUE) - } - - tex.report.predmet <- c(tex.glava.predmet, "\\newpage", - "\\setlength{\\tabcolsep}{4pt}", part$predmet[[predmet]]$povzetek, part$predmet[[predmet]]$kvantili, "\\newpage", "\\setlength{\\tabcolsep}{6pt}", - '\\chapter{Podrobne analize}', - part$predmet[[predmet]]$response, - tex.parti,"\\newpage", - tex.noga) - - cat(tex.report.predmet, file=paste("Evalvacija/results/predmet_", predmet,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, "Evalvacija/results", sep="/")) - tools::texi2pdf(file=paste("predmet_", predmet,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) -} -# /REPORTI PREDMETOV/ # diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_programi.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_programi.R deleted file mode 100644 index ec63d9ef0..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_programi.R +++ /dev/null @@ -1,1426 +0,0 @@ - -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo za posamezno fakulteto na streniku -# Tega ne poganjamo -# params <- commandArgs(trailingOnly=TRUE) -# ID <- params[1] -# # //1KA strenik// # -# -# # run first -# source("Evalvacija/R/koda.r") - -# Ali naj generira poroila oz. tabele kjer so povpreja izraunana na podlagi vsh tudentov fakultete -# ali pa povpreja, ki so izraunana na podalgi ocen tudentov, ki so vpisanih v doloenen tudijski program -# Trenutno allstudents ne uporabljamo, ker raunamo povpreja programov glede na tudente doloenega programa -allstudents <- FALSE - -sortByAverage <- TRUE # if true sort by average, else by name -sortbykrediti <- TRUE # if true sort by krediti (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - -# Start with making latex files -programi.tex <- NULL # Na koncu bomo v vektor zapisali vrednosti doloenega programa -for (program in programi$student.program.sifra) { - ime.programa <- Hmisc::latexTranslate(programi[programi$student.program.sifra==program,"student.program.ime"]) - programi.imena.stopnja <- programi.imena[programi.imena$ID==program,c("ID","Stopnja","Naziv" )] - - ## lecturer total programme averages ## - # Poroila delamo samo za tudijske programe, kjer je bilo tevilo anket veje ali enako 4. - program.izvajalci.skupaj.data <- subset(povprecja.izvajalci.programi, program.studentov == program & N_anket >= minEnot) - if (nrow(program.izvajalci.skupaj.data) > 0) { - program.izvajalci.skupaj <- aggregate(program.izvajalci.skupaj.data[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by=program.izvajalci.skupaj.data[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], - FUN=mean, na.rm=TRUE) - st.predmetov <- as.data.frame(table(program.izvajalci.skupaj.data$izvajalec.sifra)) - # tevilo predmetov izvajalca zdruimo z ocenami izvajalca - program.izvajalci.skupaj <- merge(st.predmetov, program.izvajalci.skupaj, - by.x="Var1", by.y="izvajalec.sifra", all=TRUE, sort=FALSE) - # Poimenovanje in rangiranje imen vrstic izvajalcev glede na ime izvajalca (NAZIV.PEDAGOGA) in glede na skupno oceno izvajalca - # formatProgImena funkcija definirana v skuirpti funkcije.r - rownames(program.izvajalci.skupaj) <- formatProgImena(program.izvajalci.skupaj$NAZIV.PEDAGOGA, - program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ) - # Sortiramo ocene in odstranimo nepotrebne stolpce - program.izvajalci.skupaj <- program.izvajalci.skupaj[order(program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, - decreasing=TRUE), - !(colnames(program.izvajalci.skupaj) %in% c("Var1", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - # Zdruimo ocene oz. povpreja izvajalcev z izraunanimi povpreji izvajalcev po stolpcih doloenega programa - program.izvajalci.skupaj <- rbind(program.izvajalci.skupaj, - c("--", colMeans(program.izvajalci.skupaj[2:ncol(program.izvajalci.skupaj)], na.rm=TRUE)), - c("--", vars.izvajalec$cont$meansFDV)) - # Barvanje ocen - program.izvajalci.skupaj <- formatNA(program.izvajalci.skupaj, - decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - # tevilo vshe izvajalcev programa (na koncu odtejemo dve vrednosti, ker v tabelo dodamo dve vrstici: Povpreje programa, in povpreje Fakultete) - vsota_izvajalcev_programa <- sum(program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") - 2 - # Imena vrstric tabele - rownames(program.izvajalci.skupaj)[(nrow(program.izvajalci.skupaj)-1):nrow(program.izvajalci.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje programa (",vsota_izvajalcev_programa, " izvajalcev)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - # Nova imena stolpcev v tabeli (preimenujemo stolpce) in rotacija 90 stopinj latex.rotate - colnames(program.izvajalci.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - # Generiranje latex tabele - program.izvajalci.skupaj.tex <- capture.output(Hmisc::latex(program.izvajalci.skupaj, - caption="Povpreja \\textbf{izvajalcev}, sortirana - po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - program.izvajalci.skupaj.tex <- "Ni ocen." - } - ## //lecturer total programme averages// ## - - - ## lecturer total averages ## - # Povpreja izvajalcev - program.izvajalci <- povprecja.izvajalci[povprecja.izvajalci[paste0("program_studenta_",program)] >= minEnot,] - if (nrow(program.izvajalci) > 0) { - program.izvajalci.skupaj.vsi <- aggregate(program.izvajalci[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by=program.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], FUN=mean, na.rm=TRUE) - st.predmetov <- as.data.frame(table(program.izvajalci$izvajalec.sifra)) - program.izvajalci.skupaj.vsi <- merge(st.predmetov, program.izvajalci.skupaj.vsi, - by.x="Var1", by.y="izvajalec.sifra", all=TRUE, sort=FALSE) - rownames(program.izvajalci.skupaj.vsi) <- formatProgImena(program.izvajalci.skupaj.vsi$NAZIV.PEDAGOGA, - program.izvajalci.skupaj.vsi$izvajalec.ocena.SKUPAJ) - program.izvajalci.skupaj.vsi <- program.izvajalci.skupaj.vsi[order(program.izvajalci.skupaj.vsi$izvajalec.ocena.SKUPAJ, - decreasing=TRUE), - !(colnames(program.izvajalci.skupaj.vsi) %in% c("Var1", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - # - program.izvajalci.skupaj.vsi <- rbind(program.izvajalci.skupaj.vsi, - c("--", colMeans(program.izvajalci.skupaj.vsi[2:ncol(program.izvajalci.skupaj.vsi)], na.rm=TRUE)), - c("--", vars.izvajalec$cont$meansFDV)) - # Obarvanje vrednosti - program.izvajalci.skupaj.vsi <- formatNA(program.izvajalci.skupaj.vsi, - decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), - na.repl=".") - # Imena vrstic - rownames(program.izvajalci.skupaj.vsi)[(nrow(program.izvajalci.skupaj.vsi) -1 ):nrow(program.izvajalci.skupaj.vsi)] <- - c("\\hline \\textbf{Povpreje programa (po pedagogih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - # Imena stolpcev - colnames(program.izvajalci.skupaj.vsi) <- latex.rotate(c("t. predmetov", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - # Generiranje latex tabele - program.izvajalci.skupaj.vsi.tex <- capture.output(Hmisc::latex(program.izvajalci.skupaj.vsi, - caption="Skupne ocene izvajalcev", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - - ## /lecturer total averages/ ## - - ## lecturer course averages ## - # Izvajalci pri predmetih (rownames(program.izvajalci) Ker elimo, da se v tabeli poleg imena izvajalca v okleapju izpie tudi ime njegovega predmeta - rownames(program.izvajalci) <- make.unique(paste0(sapply(povprecja.izvajalci[rownames(program.izvajalci),"NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci[rownames(program.izvajalci),"ime.predmeta"], ")")) - # Dve loeni tabeli: IPP redni in IPP izredni tudij - program.izvajalci.redni <- program.izvajalci[program.izvajalci$NACIN_STUDIJA == "1", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - program.izvajalci.izredni <- program.izvajalci[program.izvajalci$NACIN_STUDIJA == "2", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct", - paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - # redni - all students - if (nrow(program.izvajalci.redni) > 0) { - if (allstudents) { - if (any(is.na(program.izvajalci.redni))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.izvajalci.redni <- program.izvajalci.redni[order(program.izvajalci.redni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(program.izvajalci.redni) <- formatProgImena(rownames(program.izvajalci.redni), program.izvajalci.redni$izvajalec.ocena.SKUPAJ) - program.izvajalci.redni <- rbind(program.izvajalci.redni, colMeans(program.izvajalci.redni, na.rm=TRUE), - c("--", "--", "--", "--", "--", vars.izvajalec$cont$meansFDV)) - program.izvajalci.redni <- formatNA(program.izvajalci.redni, - decimalke=c(0,0,0,0,0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE","NE",FDVstopnjaPobarvanka$skupaj,"NE","NE", - as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program.izvajalci.redni)[(nrow(program.izvajalci.redni)-1):nrow(program.izvajalci.redni)] <- - c("\\hline \\textbf{Povpreje programa}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " IPP)}")) - colnames(program.izvajalci.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", - "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - program.izvajalci.redni.tex <- c(capture.output(Hmisc::latex(program.izvajalci.redni, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{8.9cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # redni - students of this programme - program.izvajalci.redni.program <- subset(povprecja.izvajalci.programi, - program.studentov == program & NACIN_STUDIJA == "1" - & N_anket > 0)[c("N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - st.ocen <- sum(!is.na(program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ)) - program.izvajalci.redni.program <- program.izvajalci.redni.program[order(program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ, - program.izvajalci.redni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.izvajalci.redni.program))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.izvajalci.redni.program) <- make.unique(formatProgImena(paste0(sapply(povprecja.izvajalci.programi[rownames(program.izvajalci.redni.program), "NAZIV.PEDAGOGA"], titula.rm), " (", - povprecja.izvajalci.programi[rownames(program.izvajalci.redni.program), "ime.predmeta"], ")"), - program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ)) - # Zdruimo povpreja komponent IPP z povprejem vsek IPP fakultete, ki ga dodamo na koncu tabele - program.izvajalci.redni.program <- rbind(program.izvajalci.redni.program, colMeans(program.izvajalci.redni.program, na.rm=TRUE), - c("--", vars.izvajalec$cont$meansFDV)) - # Barvanje povpreij komponent - program.izvajalci.redni.program1 <- formatNA1(program.izvajalci.redni.program[1:1], decimalke=0, pobarvanka=FDVstopnjaPobarvanka$n.anket, na.repl=".") - program.izvajalci.redni.program2 <- formatNA(program.izvajalci.redni.program[2:8], decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - program.izvajalci.redni.program <- cbind(program.izvajalci.redni.program1,program.izvajalci.redni.program2) - # Ime vrstic v tabeli - rownames(program.izvajalci.redni.program)[(nrow(program.izvajalci.redni.program)-1):nrow(program.izvajalci.redni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.ocen, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " IPP)}")) - # Ime stolpcev v tabeli (preimenujemo stolpce) in rotacija 90 stopinj latex.rotate - colnames(program.izvajalci.redni.program) <- latex.rotate(c("t. odgovorov", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - program.izvajalci.redni.program.tex <- c(capture.output(Hmisc::latex(program.izvajalci.redni.program, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{12cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.izvajalci.redni.tex <- "Ni ocen." - program.izvajalci.redni.program.tex <- "Ni ocen." - } - - # izredni - all students - if (nrow(program.izvajalci.izredni) > 0) { - if (allstudents) { - if (any(is.na(program.izvajalci.izredni))) {opombaIzvIzredni <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv. - "))} else {opombaIzvIzredni <- "- Podatek je manj - pomemben ali teko izraunljiv."} - program.izvajalci.izredni <- program.izvajalci.izredni[order(program.izvajalci.izredni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(program.izvajalci.izredni) <- formatProgImena(rownames(program.izvajalci.izredni), - program.izvajalci.izredni$izvajalec.ocena.SKUPAJ) - program.izvajalci.izredni <- rbind(program.izvajalci.izredni, colMeans(program.izvajalci.izredni, na.rm=TRUE), - c("--", "--", "--", "--", "--", vars.izvajalec$cont$meansFDV)) - program.izvajalci.izredni <- formatNA(program.izvajalci.izredni, - decimalke=c(0,0,0,0,0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE","NE",FDVstopnjaPobarvanka$skupaj,"NE","NE", - as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program.izvajalci.izredni)[(nrow(program.izvajalci.izredni)-1):nrow(program.izvajalci.izredni)] <- c("\\hline \\textbf{Povpreje programa}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - colnames(program.izvajalci.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", - "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoi", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - program.izvajalci.izredni.tex <- c(capture.output(Hmisc::latex(program.izvajalci.izredni, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{8.9cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opombaIzvIzredni, "}}")))) - } - - # izredni - students of this programme - program.izvajalci.izredni.program <- subset(povprecja.izvajalci.programi, program.studentov == program & NACIN_STUDIJA == "2" - & N_anket > 0)[c("N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - st.ocen <- sum(!is.na(program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ)) - program.izvajalci.izredni.program <- program.izvajalci.izredni.program[order(program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ, - program.izvajalci.izredni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.izvajalci.izredni.program))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.izvajalci.izredni.program) <- - formatProgImena(paste0(sapply(povprecja.izvajalci.programi[rownames(program.izvajalci.izredni.program), "NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci.programi[rownames(program.izvajalci.izredni.program), "ime.predmeta"], ")"), - program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ) - program.izvajalci.izredni.program <- rbind(program.izvajalci.izredni.program, - colMeans(program.izvajalci.izredni.program, na.rm=TRUE), - c("--", vars.izvajalec$cont$meansFDV)) - program.izvajalci.izredni.program1 <- formatNA1(program.izvajalci.izredni.program[1:1], - decimalke=0, pobarvanka=FDVstopnjaPobarvanka$n.anket, na.repl=".") - program.izvajalci.izredni.program2 <- formatNA(program.izvajalci.izredni.program[2:8], - decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - program.izvajalci.izredni.program <- cbind(program.izvajalci.izredni.program1,program.izvajalci.izredni.program2) - rownames(program.izvajalci.izredni.program)[(nrow(program.izvajalci.izredni.program)-1):nrow(program.izvajalci.izredni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.ocen, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.izvajalci.st, " IPP)}")) - colnames(program.izvajalci.izredni.program) <- latex.rotate(c("t. odgovorov",Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program.izvajalci.izredni.program.tex <- c(capture.output(Hmisc::latex(program.izvajalci.izredni.program, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{12cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - } else { - program.izvajalci.izredni.tex <- "Ni ocen." - program.izvajalci.izredni.program.tex <- "Ni ocen." - } - } else { - program.izvajalci.skupaj.vsi.tex <- "Ni ocen." - program.izvajalci.redni.tex <- "Ni ocen." - program.izvajalci.redni.program.tex <- "Ni ocen." - program.izvajalci.izredni.tex <- "Ni ocen." - program.izvajalci.izredni.program.tex <- "Ni ocen." - } - - ## /lecturer course averages/ ## - - - - stopnja <- NULL - ## course averages ## - program.predmeti <- povprecja.predmeti[povprecja.predmeti[paste0("program_studenta_",program)] >= minEnot,] - if (nrow(program.predmeti) > 0) { - stopnja <- names(sort(table(program.predmeti$STOPNJA),decreasing=TRUE))[1] - # faculty averages for courese tables # - if (stopnja==1) { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["1", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["1", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], - vars.predmet$krediti$meansFDV) - } else if (stopnja==2) { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["2", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["2", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct_po_izpitu")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV) - } else { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["skupaj", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["skupaj", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV) - } - #/faculty averages for courese tables /# - - # Imena vrstic v latex tabeli: imena predmetov - rownames(program.predmeti) <- make.unique(povprecja.predmeti[rownames(program.predmeti),"ime.predmeta"]) - # Ocene komponent predmetov rednega tudija ANKETA PRED IZPITOM - program.predmeti.pred.redni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="1", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - # Ocene komponent predmetov izrednega tudija ANKETA PRED IZPITOM - program.predmeti.pred.izredni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="2", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - # Ocene komponent predmetov rednega tudija ANKETA PO IZPITU - program.predmeti.po.redni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="1", - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - # Ocene komponent predmetov rednega tudija ANKETA PO IZPITU - program.predmeti.po.izredni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="2", - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - if (nrow(program.predmeti.pred.redni) > 0) { - # PRED - redni - all students - if (allstudents) { - if (any(is.na(program.predmeti.pred.redni))) - {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.pred.redni <- program.predmeti.pred.redni[order(program.predmeti.pred.redni$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.redni$N_anket, decreasing=TRUE),] - rownames(program.predmeti.pred.redni) <- formatProgImena(rownames(program.predmeti.pred.redni), program.predmeti.pred.redni$predmet.ocena.SKUPAJ.pred) - program.predmeti.pred.redni <- rbind(program.predmeti.pred.redni, colMeans(program.predmeti.pred.redni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpred)) - program.predmeti.pred.redni <- formatNA(program.predmeti.pred.redni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]), - decimalkePredmSkupaj), pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - rownames(program.predmeti.pred.redni)[(nrow(program.predmeti.pred.redni)-1):nrow(program.predmeti.pred.redni)] <- - c("\\hline \\textbf{Povpreje programa (po predmetih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.redni.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.redni, - caption="Ocene predmetov - anketa PRED izpitom - (redne izvedbe)", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{8.1cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PRED - redni - students of this programme - program.predmeti.pred.redni.program <- subset(povprecja.predmeti.programi, program.studentov == program & NACIN_STUDIJA == "1" & N_anket > 0)[c("N_anket",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - st.predmetov <- sum(!is.na(program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.redni.program <- program.predmeti.pred.redni.program[order(program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.redni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.predmeti.pred.redni.program))) - {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.pred.redni.program) <- make.unique(formatProgImena(povprecja.predmeti.programi[rownames(program.predmeti.pred.redni.program), "ime.predmeta"], - program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.redni.program <- rbind(program.predmeti.pred.redni.program, colMeans(program.predmeti.pred.redni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]))) - program.predmeti.pred.redni.program1 <- formatNA1(program.predmeti.pred.redni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.pred.redni.program2 <- formatNA(program.predmeti.pred.redni.program[2:9], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]), - decimalkePredmSkupaj), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - program.predmeti.pred.redni.program <- cbind(program.predmeti.pred.redni.program1,program.predmeti.pred.redni.program2) - rownames(program.predmeti.pred.redni.program)[(nrow(program.predmeti.pred.redni.program)-1):nrow(program.predmeti.pred.redni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.redni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.redni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po - \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{11cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.predmeti.pred.redni.tex <- "Ni ocen." - program.predmeti.pred.redni.program.tex <- NULL - } - - if (nrow(program.predmeti.pred.izredni) > 0) { - # PRED - izredni - all students - program.predmeti.pred.izredni.tex <- "Ni ocen." - if (allstudents) { - if (any(is.na(program.predmeti.pred.izredni))) - {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.pred.izredni <- program.predmeti.pred.izredni[order(program.predmeti.pred.izredni$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.izredni$N_anket, - decreasing=TRUE),] - rownames(program.predmeti.pred.izredni) <- formatProgImena(rownames(program.predmeti.pred.izredni), program.predmeti.pred.izredni$predmet.ocena.SKUPAJ.pred) - program.predmeti.pred.izredni <- rbind(program.predmeti.pred.izredni, colMeans(program.predmeti.pred.izredni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpred)) - program.predmeti.pred.izredni <- formatNA(program.predmeti.pred.izredni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - rownames(program.predmeti.pred.izredni)[(nrow(program.predmeti.pred.izredni)-1):nrow(program.predmeti.pred.izredni)] <- - c("\\hline \\textbf{Povpreje programa (po predmetih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", - Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.izredni.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.izredni, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{8.1cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PRED - izredni - students of this programme - program.predmeti.pred.izredni.program <- subset(povprecja.predmeti.programi, program.studentov == program & NACIN_STUDIJA == "2" & N_anket > 0)[c( - "N_anket",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - st.predmetov <- sum(!is.na(program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.izredni.program <- program.predmeti.pred.izredni.program[order(program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred, - program.predmeti.pred.izredni.program$N_anket, decreasing=TRUE),] - - if(nrow(program.predmeti.pred.izredni.program) > 0) { - - if (any(is.na(program.predmeti.pred.izredni.program))) - {opomba <- c(paste0(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- paste("- Podatek je manj pomemben ali teko izraunljiv.")} - rownames(program.predmeti.pred.izredni.program) <- formatProgImena(povprecja.predmeti.programi[rownames(program.predmeti.pred.izredni.program), "ime.predmeta"], - program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred) - program.predmeti.pred.izredni.program <- rbind(program.predmeti.pred.izredni.program, colMeans(program.predmeti.pred.izredni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]))) - program.predmeti.pred.izredni.program1 <- formatNA1(program.predmeti.pred.izredni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.pred.izredni.program2 <- formatNA(program.predmeti.pred.izredni.program[2:9], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]), - decimalkePredmSkupaj), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - program.predmeti.pred.izredni.program <- cbind(program.predmeti.pred.izredni.program1,program.predmeti.pred.izredni.program2) - rownames(program.predmeti.pred.izredni.program)[(nrow(program.predmeti.pred.izredni.program)-1):nrow(program.predmeti.pred.izredni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.izredni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.izredni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{11cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else {program.predmeti.pred.izredni.program.tex <- NULL} - } else { - program.predmeti.pred.izredni.tex <- "Ni ocen." - program.predmeti.pred.izredni.program.tex <- NULL - } - - if (nrow(program.predmeti.po.redni) > 0) { - # PO - redni - all students - if (allstudents) { - if (any(is.na(program.predmeti.po.redni))) - {opomba <- c(paste0(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.po.redni <- program.predmeti.po.redni[order(program.predmeti.po.redni$predmet.ocena.SKUPAJ.po, - program.predmeti.po.redni$N_anket_po_izpitu, decreasing=TRUE),] - rownames(program.predmeti.po.redni) <- formatProgImena(rownames(program.predmeti.po.redni), program.predmeti.po.redni$predmet.ocena.SKUPAJ.po) - program.predmeti.po.redni <- rbind(program.predmeti.po.redni, colMeans(program.predmeti.po.redni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpo)) - program.predmeti.po.redni <- formatNA(program.predmeti.po.redni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program.predmeti.po.redni)[(nrow(program.predmeti.po.redni)-1):nrow(program.predmeti.po.redni)] <- c("\\hline \\textbf{Povpreje programa (po predmetih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$po)),"|c","|c"), - rowlabel.just="A{9.4cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PO - redni - students of this programme - program.predmeti.po.redni.program <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "1" & - (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c( - "N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po)) - program.predmeti.po.redni.program <- program.predmeti.po.redni.program[order(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po, - program.predmeti.po.redni.program$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.redni.program))) - {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- c(paste("- Podatek je manj pomemben ali teko izraunljiv."))} - rownames(program.predmeti.po.redni.program) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.redni.program), "ime.predmeta"], program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po) - - program.predmeti.po.redni.program <- rbind(program.predmeti.po.redni.program, colMeans(program.predmeti.po.redni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - - program.predmeti.po.redni.program1 <- formatNA1(program.predmeti.po.redni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - - program.predmeti.po.redni.program2 <- formatNA(program.predmeti.po.redni.program[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - - program.predmeti.po.redni.program<-cbind(program.predmeti.po.redni.program1,program.predmeti.po.redni.program2) - - rownames(program.predmeti.po.redni.program)[(nrow(program.predmeti.po.redni.program)-1):nrow(program.predmeti.po.redni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - - colnames(program.predmeti.po.redni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.program <- program.predmeti.po.redni.program[c(1,3,4,5,6,2,7)] - program.predmeti.po.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - - - ###SORTIRANJE PO USTREZNOSTI KREDITNIH TOK - program.predmeti.po.redni.program.krediti <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "1" & - (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c( - "N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.redni.program.krediti <- program.predmeti.po.redni.program.krediti[order(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean, program.predmeti.po.redni.program.krediti$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.redni.program.krediti))) - {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).")) - } else {opomba <- c(paste("- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} - pa {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."))} - rownames(program.predmeti.po.redni.program.krediti) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.redni.program.krediti), "ime.predmeta"], - program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean) - program.predmeti.po.redni.program.krediti <- rbind(program.predmeti.po.redni.program.krediti, colMeans(program.predmeti.po.redni.program.krediti, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.redni.program.krediti1 <- formatNA1(program.predmeti.po.redni.program.krediti[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.redni.program.krediti2 <- formatNA(program.predmeti.po.redni.program.krediti[2:7], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.redni.program.krediti <- cbind(program.predmeti.po.redni.program.krediti1,program.predmeti.po.redni.program.krediti2) - rownames(program.predmeti.po.redni.program.krediti)[(nrow(program.predmeti.po.redni.program.krediti)-1):nrow(program.predmeti.po.redni.program.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.redni.program.krediti) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])),"\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.program.krediti <- program.predmeti.po.redni.program.krediti[c(1,3,4,5,6,2,7)] - program.predmeti.po.redni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program.krediti, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - ####### - - - } else { - program.predmeti.po.redni.program.krediti.tex <- NULL - program.predmeti.po.redni.tex <- NULL - program.predmeti.po.redni.program.tex <- NULL - } - - if (nrow(program.predmeti.po.izredni) > 0) { - # PO - izredni - all students - if (allstudents) { - if (any(is.na(program.predmeti.po.izredni))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.po.izredni <- program.predmeti.po.izredni[order(program.predmeti.po.izredni$predmet.ocena.SKUPAJ.po, program.predmeti.po.izredni$N_anket_po_izpitu, decreasing=TRUE),] - rownames(program.predmeti.po.izredni) <- formatProgImena(rownames(program.predmeti.po.izredni), program.predmeti.po.izredni$predmet.ocena.SKUPAJ.po) - program.predmeti.po.izredni <- rbind(program.predmeti.po.izredni, colMeans(program.predmeti.po.izredni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpo)) - program.predmeti.po.izredni <- formatNA(program.predmeti.po.izredni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program.predmeti.po.izredni)[(nrow(program.predmeti.po.izredni)-1):nrow(program.predmeti.po.izredni)] <- - c("\\hline \\textbf{Povpreje programa (po predmetih)}", - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", - "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$po)),"|c","|c"), - rowlabel.just="A{9.4cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PO - izredni - students of this programme - program.predmeti.po.izredni.program <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "2" & (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c("N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po)) - program.predmeti.po.izredni.program <- program.predmeti.po.izredni.program[order(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po, program.predmeti.po.izredni.program$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.izredni.program))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.po.izredni.program) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.izredni.program), "ime.predmeta"], - program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po) - program.predmeti.po.izredni.program <- rbind(program.predmeti.po.izredni.program, colMeans(program.predmeti.po.izredni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.izredni.program1 <- formatNA1(program.predmeti.po.izredni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.izredni.program2 <- formatNA(program.predmeti.po.izredni.program[2:7], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.izredni.program <- cbind(program.predmeti.po.izredni.program1,program.predmeti.po.izredni.program2) - rownames(program.predmeti.po.izredni.program)[(nrow(program.predmeti.po.izredni.program)-1):nrow(program.predmeti.po.izredni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.program<-program.predmeti.po.izredni.program[c(1,3,4,5,6,2,7)] - program.predmeti.po.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - program.predmeti.po.izredni.program.krediti <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "2" & - (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c( - "N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.izredni.program.krediti <- program.predmeti.po.izredni.program.krediti[order(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean, - program.predmeti.po.izredni.program.krediti$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.izredni.program.krediti))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.po.izredni.program.krediti) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.izredni.program.krediti), "ime.predmeta"], - program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean) - program.predmeti.po.izredni.program.krediti <- rbind(program.predmeti.po.izredni.program.krediti, colMeans(program.predmeti.po.izredni.program.krediti, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.izredni.program.krediti1 <- formatNA1(program.predmeti.po.izredni.program.krediti[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.izredni.program.krediti2 <- formatNA(program.predmeti.po.izredni.program.krediti[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.izredni.program.krediti <- cbind(program.predmeti.po.izredni.program.krediti1,program.predmeti.po.izredni.program.krediti2) - rownames(program.predmeti.po.izredni.program.krediti)[(nrow(program.predmeti.po.izredni.program.krediti)-1):nrow(program.predmeti.po.izredni.program.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program.krediti) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.program.krediti <- program.predmeti.po.izredni.program.krediti[c(1,3,4,5,6,2,7)] - program.predmeti.po.izredni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program.krediti, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - } else { - program.predmeti.po.izredni.tex <- NULL - program.predmeti.po.izredni.program.krediti.tex<- NULL - } - - } else { - program.predmeti.pred.redni.tex <- "Ni ocen." - program.predmeti.pred.izredni.tex <- "Ni ocen." - program.predmeti.po.redni.tex <- NULL - program.predmeti.po.redni.program.krediti.tex <- NULL - program.predmeti.po.izredni.tex <- NULL - program.predmeti.po.izredni.program.krediti.tex <- NULL - program.predmeti.pred.redni.program.tex <- "Ni ocen." - program.predmeti.po.redni.program.tex <- NULL - program.predmeti.pred.izredni.program.tex <- "Ni ocen." - program.predmeti.po.izredni.program.tex <- NULL - } - ## /course averages/ ## - - - ############################################################################ - ##POGLAVJE v izpisu za tudijske programe: Povpreja po tudijskih programih - ###DODAJANJE POVPREIJ PO TUDIJSKIH PROGRAMIH - ############################################################################ - program.1stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja <- cbind(program.1stopnja, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program1 <- stopnja_program - colnames(stopnja_program1)[4] <- "N_anket" - rownames(stopnja_program1) <- stopnja_program1[rownames(stopnja_program1),"student.program.ime"] - - if (nrow(stopnja_program1) > 0) { - program_BD_pred.skupaj <- merge(stopnja_program1, program.1stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } else {program_BD_pred.skupaj <- stopnja_program1} - - if (nrow(program_BD_pred.skupaj) > 0 & any(program_BD_pred.skupaj$STOPNJA==1, na.rm=TRUE)) { - program_BD_pred.skupaj <- subset(program_BD_pred.skupaj, STOPNJA==1) - program_BD_pred.skupaj <- program_BD_pred.skupaj[, !(colnames(program_BD_pred.skupaj) %in% c("STOPNJA"))] - # if (gregexpr(pattern = "Magistrski",program_BD_pred.skupaj$program.studentov.ime)[[1]][1] == 1){ - # program_BD_pred.skupaj<-program_BD_pred.skupaj[- grep("Magistrski", program_BD_pred.skupaj$program.studentov.ime),] - - #} - st.programov <- length(program_BD_pred.skupaj$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_pred.skupaj) <- formatProgImena(program_BD_pred.skupaj$program.studentov.ime, program_BD_pred.skupaj$predmet.ocena.SKUPAJ) - program_BD_pred.skupaj <- program_BD_pred.skupaj[order(program_BD_pred.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.skupaj) <- program_BD_pred.skupaj$program.studentov.ime - program_BD_pred.skupaj <- program_BD_pred.skupaj[order(as.character(sapply(rownames(program_BD_pred.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.skupaj <- rbind(program_BD_pred.skupaj, c(colMeans(program_BD_pred.skupaj[1:1]), - colMeans(program_BD_pred.skupaj[2:ncol(program_BD_pred.skupaj)], na.rm=TRUE))) - program_BD_pred.skupaj <- formatNA(program_BD_pred.skupaj, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.skupaj )[nrow(program_BD_pred.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov," programov)}")) - colnames(program_BD_pred.skupaj ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.skupaj.tex <- capture.output(Hmisc::latex(program_BD_pred.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - program_BD_pred.skupaj.tex <- "Ni ocen." - } - - - - - #PROGRAMI: ANKETA PO IZPITU - stopnja_program.PO <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO <- stopnja_program.PO[stopnja_program.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (any(!is.na(stopnja_program.PO))){ - stopnja_program.PO <- aggregate(stopnja_program.PO$predmet.sifra, - by=stopnja_program.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.pred <- merge(test.po, stopnja_program.PO, by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program.PO <- stopnja_program.PO} - - program.1stopnja.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO <- cbind(program.1stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO1 <- stopnja_program.PO - if (!is.null(stopnja_program.PO1)) { - colnames(stopnja_program.PO1)[4] <- "N_anket" - rownames(program.1stopnja.PO) <- program.1stopnja.PO[rownames(program.1stopnja.PO),"student.program.ime"] - } - - if (nrow(program.1stopnja.PO) > 0 & !is.null(stopnja_program.PO1)) { - program_BD_po.skupaj <- merge(stopnja_program.PO1, program.1stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - - if (nrow(program_BD_po.skupaj) > 0 & any(program_BD_po.skupaj$STOPNJA==1, na.rm=TRUE)) { - program_BD_po.skupaj <-subset(program_BD_po.skupaj, STOPNJA==1) - program_BD_po.skupaj <- program_BD_po.skupaj[, !(colnames(program_BD_po.skupaj) %in% c("STOPNJA"))] - program_BD_po.skupaj <- program_BD_po.skupaj[c(1,2,3,4,5,6,7,9,8)] - #if (gregexpr(pattern = "Magistrski",program_BD_po.skupaj$program.studentov.ime)[[1]][1] == 1){ - # program_BD_po.skupaj<-program_BD_po.skupaj[- grep("Magistrski", program_BD_po.skupaj$program.studentov.ime),] - - #} - st.programov1 <- length(program_BD_po.skupaj$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_po.skupaj) <- formatProgImena(program_BD_po.skupaj$program.studentov.ime, program_BD_po.skupaj$predmet.ocena.SKUPAJ) - program_BD_po.skupaj <- program_BD_po.skupaj[order(program_BD_po.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj) <- program_BD_po.skupaj$program.studentov.ime - program_BD_po.skupaj <- program_BD_po.skupaj[order(as.character(sapply(rownames(program_BD_po.skupaj))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj<- rbind(program_BD_po.skupaj, c(colMeans(program_BD_po.skupaj[1:1]), - colMeans(program_BD_po.skupaj[2:ncol(program_BD_po.skupaj)], na.rm=TRUE))) - program_BD_po.skupaj <- formatNA(program_BD_po.skupaj, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.skupaj )[nrow(program_BD_po.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj <- program_BD_po.skupaj[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.skupaj.tex <- "Ni ocen." - } - - - - # ANKETA PO IZPITU SORITRANA PO USTREZNOSTI KREDITNIH TOK - stopnja_program.PO.krediti <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO.krediti <- stopnja_program.PO.krediti[stopnja_program.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (nrow(stopnja_program.PO.krediti) > 0) { - stopnja_program.PO.krediti <- aggregate(stopnja_program.PO.krediti$predmet.sifra, - by=stopnja_program.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.krediti.pred <- merge(test.po, stopnja_program.PO.krediti, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program.PO.krediti.pred <- stopnja_program.PO.krediti} - - program.1stopnja.PO.krediti <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO.krediti <- cbind(program.1stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO.krediti1 <- stopnja_program.PO.krediti - colnames(stopnja_program.PO.krediti1)[4] <- "N_anket" - rownames(program.1stopnja.PO.krediti) <- program.1stopnja.PO.krediti[rownames(program.1stopnja.PO.krediti),"student.program.ime"] - - if (nrow(program.1stopnja.PO.krediti) > 0 & nrow(stopnja_program.PO.krediti1) > 0) { - program_BD_po.skupaj.krediti <- merge(stopnja_program.PO.krediti1, program.1stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - - } - if (nrow(program_BD_po.skupaj.krediti) > 0 & any(program_BD_po.skupaj.krediti$STOPNJA==1, na.rm=TRUE)) { - program_BD_po.skupaj.krediti <- subset(program_BD_po.skupaj.krediti, STOPNJA==1) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[, !(colnames(program_BD_po.skupaj.krediti) %in% c("STOPNJA"))] - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[c(1,2,3,4,5,6,7,9,8)] - #if (gregexpr(pattern = "Magistrski",program_BD_po.skupaj.krediti$program.studentov.ime)[[1]][1] == 1){ - # program_BD_po.skupaj.krediti<-program_BD_po.skupaj.krediti[- grep("Magistrski", program_BD_po.skupaj.krediti$program.studentov.ime),] - - #} - st.programov1<-length(program_BD_po.skupaj.krediti$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_po.skupaj.krediti) <- formatProgImena(program_BD_po.skupaj.krediti$program.studentov.ime, program_BD_po.skupaj.krediti$predmet.ocena.krediti) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[order(program_BD_po.skupaj.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj.krediti) <- program_BD_po.skupaj.krediti$program.studentov.ime - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[order(as.character(sapply(rownames(program_BD_po.skupaj.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj.krediti <- rbind(program_BD_po.skupaj.krediti, c(colMeans(program_BD_po.skupaj.krediti[1:1]), - colMeans(program_BD_po.skupaj.krediti[2:ncol(program_BD_po.skupaj.krediti)], na.rm=TRUE))) - program_BD_po.skupaj.krediti <- formatNA(program_BD_po.skupaj.krediti, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.skupaj.krediti )[nrow(program_BD_po.skupaj.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj.krediti ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj.krediti, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.skupaj.krediti.tex <- "Ni ocen." - } - ## //program_BD_po.skupaj.krediti.tex// ## - - - - ##################### - # PODIPLOMSKI TUDIJ - ##################### - #FAKULTETA: IZPIS PROGRAMOV ZA DRUGO STOPNJO - #PODIPLOMSKI PROGRAM - stopnja_program_podipl <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl <- stopnja_program_podipl[stopnja_program_podipl$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (nrow(stopnja_program_podipl) >0) { - stopnja_program_podipl <- aggregate(stopnja_program_podipl$predmet.sifra, - by=stopnja_program_podipl[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.pred <- merge(test.pred, stopnja_program_podipl, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program_podipl <- stopnja_program_podipl} - - - #ANKETA PRED IZPITOM - program.2stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.2stopnja <- cbind(program.2stopnja, predmet.ocena.SKUPAJ=rowMeans(program.2stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program_podipl1 <- stopnja_program_podipl - colnames(stopnja_program_podipl1)[4] <- "N_anket" - rownames(stopnja_program_podipl1) <- stopnja_program_podipl1[rownames(stopnja_program_podipl1),"student.program.ime"] - - ##Izloimo Neznan program - #stopnja_program_podipl1<- stopnja_program_podipl1[!stopnja_program_podipl1$program.studentov.ime == "Neznan program", ] - - if (nrow(stopnja_program_podipl1) > 0) { - program_BD_pred.podipl <- merge(stopnja_program_podipl1, program.2stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } else {program_BD_pred.podipl <- stopnja_program_podipl1} - - if (nrow(program_BD_pred.podipl) > 0 & any(program_BD_pred.podipl$STOPNJA==2, na.rm=TRUE)) { - program_BD_pred.podipl <- subset(program_BD_pred.podipl, STOPNJA==2) - program_BD_pred.podipl <- program_BD_pred.podipl[, !(colnames(program_BD_pred.podipl) %in% c("STOPNJA"))] - st.programov2 <- length(program_BD_pred.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_pred.podipl) <- formatProgImena(program_BD_pred.podipl$program.studentov.ime, program_BD_pred.podipl$predmet.ocena.SKUPAJ) - program_BD_pred.podipl <- program_BD_pred.podipl[order(program_BD_pred.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.podipl) <- program_BD_pred.podipl$program.studentov.ime - program_BD_pred.podipl <- program_BD_pred.podipl[order(as.character(sapply(rownames(program_BD_pred.podipl),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.podipl <- rbind(program_BD_pred.podipl, c(colMeans(program_BD_pred.podipl[1:1]), - colMeans(program_BD_pred.podipl[2:ncol(program_BD_pred.podipl)], na.rm=TRUE))) - program_BD_pred.podipl <- formatNA(program_BD_pred.podipl, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.podipl )[nrow(program_BD_pred.podipl)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov2," programov)}")) - colnames(program_BD_pred.podipl ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.podipl.tex <- capture.output(Hmisc::latex(program_BD_pred.podipl, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - program_BD_pred.podipl.tex <- "Ni ocen." - } - ############### - - - #ANKETA PO IZPITU - stopnja_program_podipl.PO <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra", - paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO <- stopnja_program_podipl.PO[stopnja_program_podipl.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (any(!is.na(stopnja_program_podipl.PO))){ - stopnja_program_podipl.PO <- aggregate(stopnja_program_podipl.PO$predmet.sifra, - by=stopnja_program_podipl.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.pred <- merge(test.po, stopnja_program_podipl.PO, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program_podipl.PO <- NULL} - - program.22stopnja.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO <- cbind(program.22stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO1 <- stopnja_program_podipl.PO - if (!is.null(stopnja_program_podipl.PO1)) { - colnames(stopnja_program_podipl.PO1)[4] <- "N_anket" - rownames(program.22stopnja.PO) <- program.22stopnja.PO[rownames(program.22stopnja.PO),"student.program.ime"] - } - - if (nrow(program.22stopnja.PO) > 0 & !is.null(stopnja_program_podipl.PO1)) { - program_BD_po.podipl <- merge(stopnja_program_podipl.PO1, program.22stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - - if (nrow(program_BD_po.podipl) > 0 & any(program_BD_po.podipl$STOPNJA==2, na.rm=TRUE)) { - program_BD_po.podipl <- subset(program_BD_po.podipl, STOPNJA==2) - program_BD_po.podipl <- program_BD_po.podipl[, !(colnames(program_BD_po.podipl) %in% c("STOPNJA"))] - program_BD_po.podipl <- program_BD_po.podipl[c(1,2,3,4,5,6,7,9,8)] - st.programov3 <- length(program_BD_po.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl) <- formatProgImena(program_BD_po.podipl$program.studentov.ime, program_BD_po.podipl$predmet.ocena.SKUPAJ) - program_BD_po.podipl <- program_BD_po.podipl[order(program_BD_po.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl) <- program_BD_po.podipl$program.studentov.ime - program_BD_po.podipl <- program_BD_po.podipl[order(as.character(sapply(rownames(program_BD_po.podipl))), decreasing=FALSE), - !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl <- rbind(program_BD_po.podipl, c(colMeans(program_BD_po.podipl[1:1]), - colMeans(program_BD_po.podipl[2:ncol(program_BD_po.podipl)], na.rm=TRUE))) - program_BD_po.podipl <- formatNA(program_BD_po.podipl, decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl)[nrow(program_BD_po.podipl)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl<-program_BD_po.podipl[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.tex <- capture.output(Hmisc::latex(program_BD_po.podipl, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.podipl.tex <- "Ni ocen." - } - - - - ############################ - #ANKETA PO IZPITU SORTIRANA PO USTRETNOSTI KREDITNIH TOK - stopnja_program_podipl.PO.krediti <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO.krediti <- stopnja_program_podipl.PO.krediti[stopnja_program_podipl.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_program_podipl.PO.krediti) > 0) { - stopnja_program_podipl.PO.krediti <- aggregate(stopnja_program_podipl.PO.krediti$predmet.sifra, - by=stopnja_program_podipl.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.krediti.pred <- merge(test.po, stopnja_program_podipl.PO.krediti, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } - - program.22stopnja.PO.krediti <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO.krediti <- cbind(program.22stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO.krediti1<-stopnja_program_podipl.PO.krediti - - - colnames(stopnja_program_podipl.PO.krediti1)[4] <- "N_anket" - rownames(program.22stopnja.PO.krediti) <- program.22stopnja.PO.krediti[rownames(program.22stopnja.PO.krediti),"student.program.ime"] - - if (nrow(program.22stopnja.PO.krediti) > 0 & nrow(stopnja_program_podipl.PO.krediti1) > 0) { - program_BD_po.podipl.krediti <- merge(stopnja_program_podipl.PO.krediti1, program.22stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - if (nrow(program_BD_po.podipl.krediti) > 0 & any(program_BD_po.podipl.krediti$STOPNJA==2, na.rm=TRUE)) { - program_BD_po.podipl.krediti <- subset(program_BD_po.podipl.krediti, STOPNJA==2) - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[, !(colnames(program_BD_po.podipl.krediti) %in% c("STOPNJA"))] - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[c(1,2,3,4,5,6,7,9,8)] - st.programov3<-length(program_BD_po.podipl.krediti$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl.krediti) <- formatProgImena(program_BD_po.podipl.krediti$program.studentov.ime, program_BD_po.podipl.krediti$predmet.ocena.krediti) - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[order(program_BD_po.podipl.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl.krediti) <- program_BD_po.podipl.krediti$program.studentov.ime - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[order(as.character(sapply(rownames(program_BD_po.podipl.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl.krediti <- rbind(program_BD_po.podipl.krediti, c(colMeans(program_BD_po.podipl.krediti[1:1]), - colMeans(program_BD_po.podipl.krediti[2:ncol(program_BD_po.podipl.krediti)], na.rm=TRUE))) - program_BD_po.podipl.krediti <- formatNA(program_BD_po.podipl.krediti, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl.krediti )[nrow(program_BD_po.podipl.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl.krediti ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl.krediti<-program_BD_po.podipl.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.podipl.krediti, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.podipl.krediti.tex <- "Ni ocen." - } - - ##################################### - - ####### - # IPP - ####### - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA - - if (nrow(izv.predmet) > 0) { - stopnja_izvajalec.skupaj <- merge(proggIZ.tmp, progMeanIzv.fak1, - by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.skupaj <- merge(stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], - by="program.studentov.ime", sort=FALSE) - - program_dodiplomski_studij <- stopnja_izvajalec.skupaj - stopnja_izvajalec.skupaj <- subset(stopnja_izvajalec.skupaj, STOPNJA==1) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[, !(colnames(stopnja_izvajalec.skupaj) %in% c("STOPNJA"))] - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - #if (gregexpr(pattern = "Magistrski",stopnja_izvajalec.skupaj$program.studentov.ime)[[1]][1] == 1){ - # stopnja_izvajalec.skupaj<-stopnja_izvajalec.skupaj[- grep("Magistrski", stopnja_izvajalec.skupaj$program.studentov.ime),] - - # } - st.programov4 <- length(stopnja_izvajalec.skupaj$program.studentov.ime) - } else {program_dodiplomski_studij <- NULL - program_dodiplomski_studij$STOPNJA <- NULL} - - if (nrow(izv.predmet) > 0 & any(program_dodiplomski_studij$STOPNJA==1, na.rm=TRUE)) { - - if (sortByAverage) { - rownames(stopnja_izvajalec.skupaj) <- formatProgImena(stopnja_izvajalec.skupaj$program.studentov.ime, stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[order(stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.skupaj) <- stopnja_izvajalec.skupaj$program.studentov.ime - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[order(as.character(sapply(rownames(stopnja_izvajalec.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.skupaj <- rbind(stopnja_izvajalec.skupaj, c(colMeans(stopnja_izvajalec.skupaj[1:1]), - colMeans(stopnja_izvajalec.skupaj[2:ncol(stopnja_izvajalec.skupaj)], na.rm=TRUE))) - stopnja_izvajalec.skupaj <- formatNA(stopnja_izvajalec.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.skupaj )[nrow(stopnja_izvajalec.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov4," programov)}")) - colnames(stopnja_izvajalec.skupaj ) <- latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.skupaj.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.skupaj, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh - izvajalcev pri predmetih na - doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - stopnja_izvajalec.skupaj.tex <- "Ni ocen." - } - - ## //IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA// ## - - - - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA### - - if (nrow(izv.predmet) > 0) { - stopnja_izvajalec.podipl <- merge(proggIZ.tmp, progMeanIzv.fak1,by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.podipl <- merge(stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], by="program.studentov.ime", sort=FALSE) - - program_podiplomski_studij <- stopnja_izvajalec.podipl - stopnja_izvajalec.podipl <- subset(stopnja_izvajalec.podipl, STOPNJA==2) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[, !(colnames(stopnja_izvajalec.podipl) %in% c("STOPNJA"))] - stopnja_izvajalec.podipl <- - stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - ## Izloimo Neznan program - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[!stopnja_izvajalec.podipl$program.studentov.ime == "Neznan program", ] - st.programov5<-length(stopnja_izvajalec.podipl$program.studentov.ime) - } - - if (nrow(izv.predmet) > 0 & any(program_podiplomski_studij$STOPNJA==2, na.rm=TRUE)) { - - if (sortByAverage) { - rownames(stopnja_izvajalec.podipl) <- formatProgImena(stopnja_izvajalec.podipl$program.studentov.ime, stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[order(stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.podipl) <- stopnja_izvajalec.podipl$program.studentov.ime - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[order(as.character(sapply(rownames(stopnja_izvajalec.podipl), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.podipl <- rbind(stopnja_izvajalec.podipl, c(colMeans(stopnja_izvajalec.podipl[1:1]), - colMeans(stopnja_izvajalec.podipl[2:ncol(stopnja_izvajalec.podipl)], na.rm=TRUE))) - stopnja_izvajalec.podipl <- formatNA(stopnja_izvajalec.podipl, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.podipl )[nrow(stopnja_izvajalec.podipl)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov5," programov)}")) - colnames(stopnja_izvajalec.podipl ) <- latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.podipl.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.podipl, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh - izvajalcev pri predmetih - na doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - stopnja_izvajalec.podipl.tex <- "Ni ocen." - } - - ## //IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA// ## - - - ########################## - # STRUKTURA LATEX POROILA - # Latex tabele izraunanih povpreij - # zapiemo v spremenljivko in opredelimo - # strukturo latex izpisa (poglavje, podpoglavje, nove strani) - ########################## - programi.tex[[as.character(program)]] <- c( - "\\chapter{Redni tudij}","\\renewcommand{\\leftmark}{Predmeti - redni tudij}", - paste("Prikazana so povpreja za ocene komponent na skalah 1-5 za predmete z vsaj 4 odgovori. - Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno (opozorilno)}}, - povpreja pod 3.0 pa {\\color{BrickRed}\\textbf{rdee (kritino)}}. - Nizko tevilo enot in neugodne stopnje sodelovanja so oznaene z enojnim () - oklepajem oziroma z dvojnim oklepajem (()). Podrobnosti so v metodolokih - navodilih na koncu poroila in na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki."), - "\\section{Predmeti}","\\subsection{Anketa PRED izpitom}", - program.predmeti.pred.redni.program.tex, - "\\newpage","\\subsection{Anketa PO izpitu}", - program.predmeti.po.redni.program.tex, - "\\newpage",program.predmeti.po.redni.program.krediti.tex,"\\newpage", - paste0("\\chapter{Izredni tudij}"), - "\\renewcommand{\\leftmark}{Predmeti - izredni tudij}", - if (program.predmeti.pred.izredni.tex != "Ni ocen." - && !is.null(program.predmeti.po.izredni.tex) - && program.izvajalci.izredni.tex != "Ni ocen.") { - c("\\section{Predmeti}","\\subsection{Anketa PRED izpitom}", - program.predmeti.pred.izredni.program.tex, "\\newpage", - "\\subsection{Anketa PO izpitu}",program.predmeti.po.izredni.program.tex, - "\\newpage", program.izvajalci.izredni.program.tex, "\\newpage", - program.predmeti.po.izredni.program.krediti) - } else {"Ni ocen za izredni tudij."}, - if (programi.imena.stopnja$Stopnja == 1){c( - "\\chapter{Povpreja po tudijskih programih}", - "\\renewcommand{\\leftmark}{tudijski programi}", - paste("Izraunana so povpreja po vseh predmetih - rednih in izrednih, ki so jih ocenjevali - tudenti doloenega tudijskega programa. - Predmeti z veliko in malo tudenti imajo enako teo. - V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je - skupno tevilo predmetov, - kjer so odgovarjali vsaj", minEnot, - "tudenti. Med predmete doloenega programa so vkljueni - tudi izbirni predmeti drugih programov, e so jih tudenti - odgovarjajoega programa izbrali."), - "\\section{Dodiplomski tudij}", - program_BD_pred.skupaj.tex,"\\newpage",program_BD_po.skupaj.tex, - "\\newpage",program_BD_po.skupaj.krediti.tex,"\\newpage") - } else { c("\\chapter{Povpreja po tudijskih programih}", - "\\renewcommand{\\leftmark}{tudijski programi}", - paste("Izraunana so povpreja po vseh predmetih, - rednih in izrednih, ki so jih ocenjevali tudenti doloenega tudijskega programa. - Predmeti z veliko in malo tudenti imajo enako teo. V stolpcu - \\guillemotright t. predmetov\\guillemotleft \\ je skupno tevilo predmetov, - kjer so odgovarjali vsaj", minEnot,"tudenti. Vkljueni so lahko tudi prosto izbirni predmeti - (oziroma izvajalci pri predmetih), ki so sicer domicilni na drugih programih."), - "\\section{Podiplomski tudij}", - program_BD_pred.podipl.tex,"\\newpage",program_BD_po.podipl.tex, - "\\newpage",program_BD_po.podipl.krediti.tex,"\\newpage")}) -} - - -# Sestavljanje LATEX DOKUMENTA (glava, noga) -tex.glava <- scan("Evalvacija/latexkosi/a-glava-katedra.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -Rdirektorij <- getwd() - -for (program in names(programi.tex)) { - tex.glava.program <- gsub(pattern='!naslov!', - replacement=Hmisc::latexTranslate(programi[programi$student.program.sifra==program, - "student.program.ime"]), x=tex.glava) - tex.program <- c(tex.glava.program,"\\setlength{\\tabcolsep}{4pt}", - programi.tex[[as.character(program)]], "\\newpage", - "\\renewcommand{\\leftmark}{Metodoloko pojasnilo}", - tex.okvir,"\\newpage", - tex.noga) - - cat(tex.program, file=paste("Evalvacija/results/program_", program,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, "Evalvacija/results", sep="/")) - tools::texi2pdf(file=paste("program_", program,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) -} - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_programi_Filozofska.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_programi_Filozofska.R deleted file mode 100644 index ccc505001..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_programi_Filozofska.R +++ /dev/null @@ -1,1266 +0,0 @@ - -# Del, ki ga potrebuje Peter, da generira ustrezno poroilo za posamezno fakulteto na streniku -# Tega ne poganjamo -# params <- commandArgs(trailingOnly=TRUE) -# ID <- params[1] -# # //1KA strenik// # -# -# # run first -# source("Evalvacija/R/koda.r") - -# Ali naj generira poroila oz. tabele kjer so povpreja izraunana na podlagi vsh tudentov fakultete -# ali pa povpreja, ki so izraunana na podalgi ocen tudentov, ki so vpisanih v doloenen tudijski program -# Trenutno allstudents ne uporabljamo, ker raunamo povpreja programov glede na tudente doloenega programa -allstudents <- FALSE - -sortByAverage <- TRUE # if true sort by average, else by name -sortbykrediti <- TRUE # if true sort by krediti (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - -# Start with making latex files -programi.tex <- NULL # Na koncu bomo v vektor zapisali vrednosti doloenega programa -for (program in programi$student.program.sifra) { - ime.programa <- Hmisc::latexTranslate(programi[programi$student.program.sifra==program,"student.program.ime"]) - programi.imena.stopnja <- programi.imena[programi.imena$ID==program,c("ID","Stopnja","Naziv" )] - - ## lecturer total programme averages ## - # Poroila delamo samo za tudijske programe, kjer je bilo tevilo anket veje ali enako 4. - program.izvajalci.skupaj.data <- subset(povprecja.izvajalci.programi, program.studentov == program & N_anket >= minEnot) - if (nrow(program.izvajalci.skupaj.data) > 0) { - program.izvajalci.skupaj <- aggregate(program.izvajalci.skupaj.data[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by=program.izvajalci.skupaj.data[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], - FUN=mean, na.rm=TRUE) - st.predmetov <- as.data.frame(table(program.izvajalci.skupaj.data$izvajalec.sifra)) - # tevilo predmetov izvajalca zdruimo z ocenami izvajalca - program.izvajalci.skupaj <- merge(st.predmetov, program.izvajalci.skupaj, - by.x="Var1", by.y="izvajalec.sifra", all=TRUE, sort=FALSE) - # Poimenovanje in rangiranje imen vrstic izvajalcev glede na ime izvajalca (NAZIV.PEDAGOGA) in glede na skupno oceno izvajalca - # formatProgImena funkcija definirana v skuirpti funkcije.r - rownames(program.izvajalci.skupaj) <- formatProgImena(program.izvajalci.skupaj$NAZIV.PEDAGOGA, - program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ) - # Sortiramo ocene in odstranimo nepotrebne stolpce - program.izvajalci.skupaj <- program.izvajalci.skupaj[order(program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, - decreasing=TRUE), - !(colnames(program.izvajalci.skupaj) %in% c("Var1", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - # Zdruimo ocene oz. povpreja izvajalcev z izraunanimi povpreji izvajalcev po stolpcih doloenega programa - program.izvajalci.skupaj <- rbind(program.izvajalci.skupaj, - c("--", colMeans(program.izvajalci.skupaj[2:ncol(program.izvajalci.skupaj)], na.rm=TRUE)), - c("--", vars.izvajalec$cont$meansFDV)) - # Barvanje ocen - program.izvajalci.skupaj <- formatNA(program.izvajalci.skupaj, - decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - # tevilo vshe izvajalcev programa (na koncu odtejemo dve vrednosti, ker v tabelo dodamo dve vrstici: Povpreje programa, in povpreje Fakultete) - vsota_izvajalcev_programa <- sum(program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".") - 2 - # Imena vrstric tabele - rownames(program.izvajalci.skupaj)[(nrow(program.izvajalci.skupaj)-1):nrow(program.izvajalci.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje programa (",vsota_izvajalcev_programa, " izvajalcev)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - # Nova imena stolpcev v tabeli (preimenujemo stolpce) in rotacija 90 stopinj latex.rotate - colnames(program.izvajalci.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - # Generiranje latex tabele - program.izvajalci.skupaj.tex <- capture.output(Hmisc::latex(program.izvajalci.skupaj, - caption="Povpreja \\textbf{izvajalcev}, sortirana - po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - program.izvajalci.skupaj.tex <- "Ni ocen." - } - ## //lecturer total programme averages// ## - - - ## lecturer total averages ## - # Povpreja izvajalcev - program.izvajalci <- povprecja.izvajalci[povprecja.izvajalci[paste0("program_studenta_",program)] >= minEnot,] - if (nrow(program.izvajalci) > 0) { - program.izvajalci.skupaj.vsi <- aggregate(program.izvajalci[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by=program.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], FUN=mean, na.rm=TRUE) - st.predmetov <- as.data.frame(table(program.izvajalci$izvajalec.sifra)) - program.izvajalci.skupaj.vsi <- merge(st.predmetov, program.izvajalci.skupaj.vsi, - by.x="Var1", by.y="izvajalec.sifra", all=TRUE, sort=FALSE) - rownames(program.izvajalci.skupaj.vsi) <- formatProgImena(program.izvajalci.skupaj.vsi$NAZIV.PEDAGOGA, - program.izvajalci.skupaj.vsi$izvajalec.ocena.SKUPAJ) - program.izvajalci.skupaj.vsi <- program.izvajalci.skupaj.vsi[order(program.izvajalci.skupaj.vsi$izvajalec.ocena.SKUPAJ, - decreasing=TRUE), - !(colnames(program.izvajalci.skupaj.vsi) %in% c("Var1", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - # - program.izvajalci.skupaj.vsi <- rbind(program.izvajalci.skupaj.vsi, - c("--", colMeans(program.izvajalci.skupaj.vsi[2:ncol(program.izvajalci.skupaj.vsi)], na.rm=TRUE)), - c("--", vars.izvajalec$cont$meansFDV)) - # Obarvanje vrednosti - program.izvajalci.skupaj.vsi <- formatNA(program.izvajalci.skupaj.vsi, - decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), - na.repl=".") - # Imena vrstic - rownames(program.izvajalci.skupaj.vsi)[(nrow(program.izvajalci.skupaj.vsi) -1 ):nrow(program.izvajalci.skupaj.vsi)] <- - c("\\hline \\textbf{Povpreje programa (po pedagogih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - # Imena stolpcev - colnames(program.izvajalci.skupaj.vsi) <- latex.rotate(c("t. predmetov", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - # Generiranje latex tabele - program.izvajalci.skupaj.vsi.tex <- capture.output(Hmisc::latex(program.izvajalci.skupaj.vsi, - caption="Skupne ocene izvajalcev", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek - je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - - ## /lecturer total averages/ ## - - ## lecturer course averages ## - # Izvajalci pri predmetih (rownames(program.izvajalci) Ker elimo, da se v tabeli poleg imena izvajalca v okleapju izpie tudi ime njegovega predmeta - rownames(program.izvajalci) <- make.unique(paste0(sapply(povprecja.izvajalci[rownames(program.izvajalci),"NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci[rownames(program.izvajalci),"ime.predmeta"], ")")) - # Dve loeni tabeli: IPP redni in IPP izredni tudij - program.izvajalci.redni <- program.izvajalci[program.izvajalci$NACIN_STUDIJA == "1", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - program.izvajalci.izredni <- program.izvajalci[program.izvajalci$NACIN_STUDIJA == "2", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct", - paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - # redni - all students - - - - # redni - students of this programme - program.izvajalci.redni.program <- subset(povprecja.izvajalci.programi, - program.studentov == program & NACIN_STUDIJA == "1" - & N_anket > 0)[c("N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - if (nrow(program.izvajalci.redni.program) > 0) { - st.ocen <- sum(!is.na(program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ)) - program.izvajalci.redni.program <- program.izvajalci.redni.program[order(program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ, - program.izvajalci.redni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.izvajalci.redni.program))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.izvajalci.redni.program) <- make.unique(formatProgImena(paste0(sapply(povprecja.izvajalci.programi[rownames(program.izvajalci.redni.program), "NAZIV.PEDAGOGA"], titula.rm), " (", - povprecja.izvajalci.programi[rownames(program.izvajalci.redni.program), "ime.predmeta"], ")"), - program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ)) - # Zdruimo povpreja komponent IPP z povprejem vsek IPP fakultete, ki ga dodamo na koncu tabele - program.izvajalci.redni.program <- rbind(program.izvajalci.redni.program, colMeans(program.izvajalci.redni.program, na.rm=TRUE), - c("--", vars.izvajalec$cont$meansFDV)) - # Barvanje povpreij komponent - program.izvajalci.redni.program1 <- formatNA1(program.izvajalci.redni.program[1:1], decimalke=0, pobarvanka=FDVstopnjaPobarvanka$n.anket, na.repl=".") - program.izvajalci.redni.program2 <- formatNA(program.izvajalci.redni.program[2:8], decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - program.izvajalci.redni.program <- cbind(program.izvajalci.redni.program1,program.izvajalci.redni.program2) - # Ime vrstic v tabeli - rownames(program.izvajalci.redni.program)[(nrow(program.izvajalci.redni.program)-1):nrow(program.izvajalci.redni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.ocen, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " IPP)}")) - # Ime stolpcev v tabeli (preimenujemo stolpce) in rotacija 90 stopinj latex.rotate - colnames(program.izvajalci.redni.program) <- latex.rotate(c("t. odgovorov", - Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), - "\\textbf{Skupaj}")) - program.izvajalci.redni.program.tex <- c(capture.output(Hmisc::latex(program.izvajalci.redni.program, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{12cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.izvajalci.redni.tex <- "Ni ocen." - program.izvajalci.redni.program.tex <- "Ni ocen." - } - - # izredni - all students - - - - # izredni - students of this programme - program.izvajalci.izredni.program <- subset(povprecja.izvajalci.programi, program.studentov == program & NACIN_STUDIJA == "2" - & N_anket > 0)[c("N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - if (nrow(program.izvajalci.izredni.program) > 0) { - st.ocen <- sum(!is.na(program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ)) - program.izvajalci.izredni.program <- program.izvajalci.izredni.program[order(program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ, - program.izvajalci.izredni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.izvajalci.izredni.program))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.izvajalci.izredni.program) <- - formatProgImena(paste0(sapply(povprecja.izvajalci.programi[rownames(program.izvajalci.izredni.program), "NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci.programi[rownames(program.izvajalci.izredni.program), "ime.predmeta"], ")"), - program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ) - program.izvajalci.izredni.program <- rbind(program.izvajalci.izredni.program, - colMeans(program.izvajalci.izredni.program, na.rm=TRUE), - c("--", vars.izvajalec$cont$meansFDV)) - program.izvajalci.izredni.program1 <- formatNA1(program.izvajalci.izredni.program[1:1], - decimalke=0, pobarvanka=FDVstopnjaPobarvanka$n.anket, na.repl=".") - program.izvajalci.izredni.program2 <- formatNA(program.izvajalci.izredni.program[2:8], - decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - program.izvajalci.izredni.program <- cbind(program.izvajalci.izredni.program1,program.izvajalci.izredni.program2) - rownames(program.izvajalci.izredni.program)[(nrow(program.izvajalci.izredni.program)-1):nrow(program.izvajalci.izredni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.ocen, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.izvajalci.st, " IPP)}")) - colnames(program.izvajalci.izredni.program) <- latex.rotate(c("t. odgovorov",Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program.izvajalci.izredni.program.tex <- c(capture.output(Hmisc::latex(program.izvajalci.izredni.program, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), - rowlabel.just="A{12cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - } else { - program.izvajalci.izredni.tex <- "Ni ocen." - program.izvajalci.izredni.program.tex <- "Ni ocen." - } - } else { - program.izvajalci.skupaj.vsi.tex <- "Ni ocen." - program.izvajalci.redni.tex <- "Ni ocen." - program.izvajalci.redni.program.tex <- "Ni ocen." - program.izvajalci.izredni.tex <- "Ni ocen." - program.izvajalci.izredni.program.tex <- "Ni ocen." - } - - ## /lecturer course averages/ ## - - - - stopnja <- NULL - ## course averages ## - program.predmeti <- povprecja.predmeti[povprecja.predmeti[paste0("program_studenta_",program)] >= minEnot,] - program.predmeti <- subset(program.predmeti, ime.predmeta != "NA") - if (nrow(program.predmeti) > 0) { - stopnja <- names(sort(table(program.predmeti$STOPNJA),decreasing=TRUE))[1] - # faculty averages for courese tables # - if (stopnja==1) { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["1", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["1", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], - vars.predmet$krediti$meansFDV) - } else if (stopnja==2) { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["2", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["2", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu", - "neodzivnih.pct_po_izpitu")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV) - } else { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["skupaj", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["skupaj", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], - vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV) - } - #/faculty averages for courese tables /# - - # Imena vrstic v latex tabeli: imena predmetov - - rownames(program.predmeti) <- make.unique(povprecja.predmeti[rownames(program.predmeti),"ime.predmeta"]) - # Ocene komponent predmetov rednega tudija ANKETA PRED IZPITOM - program.predmeti.pred.redni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="1", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - # Ocene komponent predmetov izrednega tudija ANKETA PRED IZPITOM - program.predmeti.pred.izredni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="2", - c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct", - "neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - # Ocene komponent predmetov rednega tudija ANKETA PO IZPITU - program.predmeti.po.redni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="1", - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - # Ocene komponent predmetov rednega tudija ANKETA PO IZPITU - program.predmeti.po.izredni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="2", - c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - - - # PRED - redni - students of this programme - program.predmeti.pred.redni.program <- subset(povprecja.predmeti.programi, program.studentov == program & NACIN_STUDIJA == "1" & N_anket > 0)[c("N_anket",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - if (nrow(program.predmeti.pred.redni.program) > 0) { - - st.predmetov <- sum(!is.na(program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.redni.program <- program.predmeti.pred.redni.program[order(program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.redni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.predmeti.pred.redni.program))){ - opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.pred.redni.program) <- make.unique(formatProgImena(povprecja.predmeti.programi[rownames(program.predmeti.pred.redni.program), "ime.predmeta"], - program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.redni.program <- rbind(program.predmeti.pred.redni.program, colMeans(program.predmeti.pred.redni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]))) - program.predmeti.pred.redni.program1 <- formatNA1(program.predmeti.pred.redni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.pred.redni.program2 <- formatNA(program.predmeti.pred.redni.program[2:9], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]), - decimalkePredmSkupaj), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - program.predmeti.pred.redni.program <- cbind(program.predmeti.pred.redni.program1,program.predmeti.pred.redni.program2) - rownames(program.predmeti.pred.redni.program)[(nrow(program.predmeti.pred.redni.program)-1):nrow(program.predmeti.pred.redni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", - kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.redni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.redni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po - \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{11cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.predmeti.pred.redni.tex <- "Ni ocen." - program.predmeti.pred.redni.program.tex <- NULL - } - - - # PRED - izredni - all students - - - # PRED - izredni - students of this programme - program.predmeti.pred.izredni.program <- subset(povprecja.predmeti.programi, program.studentov == program & NACIN_STUDIJA == "2" & N_anket > 0)[c( - "N_anket",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - - if (nrow(program.predmeti.pred.izredni.program) > 0) { - st.predmetov <- sum(!is.na(program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.izredni.program <- program.predmeti.pred.izredni.program[order(program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred, - program.predmeti.pred.izredni.program$N_anket, decreasing=TRUE),] - - if(nrow(program.predmeti.pred.izredni.program) > 0) { - - if (any(is.na(program.predmeti.pred.izredni.program))) - {opomba <- c(paste0(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- paste("- Podatek je manj pomemben ali teko izraunljiv.")} - rownames(program.predmeti.pred.izredni.program) <- formatProgImena(povprecja.predmeti.programi[rownames(program.predmeti.pred.izredni.program), "ime.predmeta"], - program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred) - program.predmeti.pred.izredni.program <- rbind(program.predmeti.pred.izredni.program, colMeans(program.predmeti.pred.izredni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]))) - program.predmeti.pred.izredni.program1 <- formatNA1(program.predmeti.pred.izredni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.pred.izredni.program2 <- formatNA(program.predmeti.pred.izredni.program[2:9], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]), - decimalkePredmSkupaj), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - program.predmeti.pred.izredni.program <- cbind(program.predmeti.pred.izredni.program1,program.predmeti.pred.izredni.program2) - rownames(program.predmeti.pred.izredni.program)[(nrow(program.predmeti.pred.izredni.program)-1):nrow(program.predmeti.pred.izredni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.izredni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.izredni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), - rowlabel.just="A{11cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else {program.predmeti.pred.izredni.program.tex <- NULL} - } else { - program.predmeti.pred.izredni.tex <- "Ni ocen." - program.predmeti.pred.izredni.program.tex <- NULL - } - - # PO - redni - all students - - # PO - redni - students of this programme - program.predmeti.po.redni.program <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "1" & - (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c( - "N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - - if (nrow(program.predmeti.po.redni.program) > 0) { - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po)) - program.predmeti.po.redni.program <- program.predmeti.po.redni.program[order(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po, - program.predmeti.po.redni.program$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.redni.program))) { - opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.")) - } else {opomba <- c(paste("- Podatek je manj pomemben ali teko izraunljiv."))} - rownames(program.predmeti.po.redni.program) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.redni.program), "ime.predmeta"], program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po) - - program.predmeti.po.redni.program <- rbind(program.predmeti.po.redni.program, colMeans(program.predmeti.po.redni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - - program.predmeti.po.redni.program1 <- formatNA1(program.predmeti.po.redni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - - program.predmeti.po.redni.program2 <- formatNA(program.predmeti.po.redni.program[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - - program.predmeti.po.redni.program<-cbind(program.predmeti.po.redni.program1,program.predmeti.po.redni.program2) - - rownames(program.predmeti.po.redni.program)[(nrow(program.predmeti.po.redni.program)-1):nrow(program.predmeti.po.redni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - - colnames(program.predmeti.po.redni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.program <- program.predmeti.po.redni.program[c(1,3,4,5,6,2,7)] - program.predmeti.po.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - - - ###SORTIRANJE PO USTREZNOSTI KREDITNIH TOK - program.predmeti.po.redni.program.krediti <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "1" & - (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c( - "N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.redni.program.krediti <- program.predmeti.po.redni.program.krediti[order(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean, program.predmeti.po.redni.program.krediti$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.redni.program.krediti))) - {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).")) - } else {opomba <- c(paste("- Podatek je manj pomemben ali teko izraunljiv. - \\newline * {\\color{Orange}\\textbf{Oranno}} so oznaena - {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) - in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} - pa {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}})."))} - rownames(program.predmeti.po.redni.program.krediti) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.redni.program.krediti), "ime.predmeta"], - program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean) - program.predmeti.po.redni.program.krediti <- rbind(program.predmeti.po.redni.program.krediti, colMeans(program.predmeti.po.redni.program.krediti, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.redni.program.krediti1 <- formatNA1(program.predmeti.po.redni.program.krediti[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.redni.program.krediti2 <- formatNA(program.predmeti.po.redni.program.krediti[2:7], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.redni.program.krediti <- cbind(program.predmeti.po.redni.program.krediti1,program.predmeti.po.redni.program.krediti2) - rownames(program.predmeti.po.redni.program.krediti)[(nrow(program.predmeti.po.redni.program.krediti)-1):nrow(program.predmeti.po.redni.program.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.redni.program.krediti) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])),"\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.program.krediti <- program.predmeti.po.redni.program.krediti[c(1,3,4,5,6,2,7)] - program.predmeti.po.redni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program.krediti, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - ####### - - - } else { - program.predmeti.po.redni.program.krediti.tex <- NULL - program.predmeti.po.redni.tex <- NULL - program.predmeti.po.redni.program.tex <- NULL - } - - - # PO - izredni - all students - - # PO - izredni - students of this programme - program.predmeti.po.izredni.program <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "2" & (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c("N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - if (nrow(program.predmeti.po.izredni.program) > 0 ) { - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po)) - program.predmeti.po.izredni.program <- program.predmeti.po.izredni.program[order(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po, program.predmeti.po.izredni.program$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.izredni.program))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.po.izredni.program) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.izredni.program), "ime.predmeta"], - program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po) - program.predmeti.po.izredni.program <- rbind(program.predmeti.po.izredni.program, colMeans(program.predmeti.po.izredni.program, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.izredni.program1 <- formatNA1(program.predmeti.po.izredni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.izredni.program2 <- formatNA(program.predmeti.po.izredni.program[2:7], - decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]), - decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], - povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.izredni.program <- cbind(program.predmeti.po.izredni.program1,program.predmeti.po.izredni.program2) - rownames(program.predmeti.po.izredni.program)[(nrow(program.predmeti.po.izredni.program)-1):nrow(program.predmeti.po.izredni.program)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.program<-program.predmeti.po.izredni.program[c(1,3,4,5,6,2,7)] - program.predmeti.po.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - program.predmeti.po.izredni.program.krediti <- subset(povprecja.predmeti.programi.PO, program.studentov == program & NACIN_STUDIJA == "2" & - (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c( - "N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.izredni.program.krediti <- program.predmeti.po.izredni.program.krediti[order(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean, - program.predmeti.po.izredni.program.krediti$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.izredni.program.krediti))) - {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "\\newline - Podatek je manj pomemben ali teko izraunljiv.") - } else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.po.izredni.program.krediti) <- formatProgImena(povprecja.predmeti.programi.PO[rownames(program.predmeti.po.izredni.program.krediti), "ime.predmeta"], - program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean) - program.predmeti.po.izredni.program.krediti <- rbind(program.predmeti.po.izredni.program.krediti, colMeans(program.predmeti.po.izredni.program.krediti, na.rm=TRUE), - unlist(c("--", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.izredni.program.krediti1 <- formatNA1(program.predmeti.po.izredni.program.krediti[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.izredni.program.krediti2 <- formatNA(program.predmeti.po.izredni.program.krediti[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.izredni.program.krediti <- cbind(program.predmeti.po.izredni.program.krediti1,program.predmeti.po.izredni.program.krediti2) - rownames(program.predmeti.po.izredni.program.krediti)[(nrow(program.predmeti.po.izredni.program.krediti)-1):nrow(program.predmeti.po.izredni.program.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), - paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program.krediti) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), - "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.program.krediti <- program.predmeti.po.izredni.program.krediti[c(1,3,4,5,6,2,7)] - program.predmeti.po.izredni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program.krediti, - caption="Povpreja \\textbf{predmetov}, - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), - rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - } else { - program.predmeti.po.izredni.tex <- NULL - program.predmeti.po.izredni.program.krediti.tex<- NULL - } - - } else { - program.predmeti.pred.redni.tex <- "Ni ocen." - program.predmeti.pred.izredni.tex <- "Ni ocen." - program.predmeti.po.redni.tex <- NULL - program.predmeti.po.redni.program.krediti.tex <- NULL - program.predmeti.po.izredni.tex <- NULL - program.predmeti.po.izredni.program.krediti.tex <- NULL - program.predmeti.pred.redni.program.tex <- "Ni ocen." - program.predmeti.po.redni.program.tex <- NULL - program.predmeti.pred.izredni.program.tex <- "Ni ocen." - program.predmeti.po.izredni.program.tex <- NULL - } - ## /course averages/ ## - - - ############################################################################ - ##POGLAVJE v izpisu za tudijske programe: Povpreja po tudijskih programih - ###DODAJANJE POVPREIJ PO TUDIJSKIH PROGRAMIH - ############################################################################ - program.1stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja <- cbind(program.1stopnja, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program1 <- stopnja_program - colnames(stopnja_program1)[4] <- "N_anket" - rownames(stopnja_program1) <- stopnja_program1[rownames(stopnja_program1),"student.program.ime"] - - if (nrow(stopnja_program1) > 0) { - program_BD_pred.skupaj <- merge(stopnja_program1, program.1stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } else {program_BD_pred.skupaj <- stopnja_program1} - - if (nrow(program_BD_pred.skupaj) > 0 & any(program_BD_pred.skupaj$STOPNJA==1, na.rm=TRUE)) { - program_BD_pred.skupaj <- subset(program_BD_pred.skupaj, STOPNJA==1) - program_BD_pred.skupaj <- program_BD_pred.skupaj[, !(colnames(program_BD_pred.skupaj) %in% c("STOPNJA"))] - # if (gregexpr(pattern = "Magistrski",program_BD_pred.skupaj$program.studentov.ime)[[1]][1] == 1){ - # program_BD_pred.skupaj<-program_BD_pred.skupaj[- grep("Magistrski", program_BD_pred.skupaj$program.studentov.ime),] - - #} - st.programov <- length(program_BD_pred.skupaj$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_pred.skupaj) <- formatProgImena(program_BD_pred.skupaj$program.studentov.ime, program_BD_pred.skupaj$predmet.ocena.SKUPAJ) - program_BD_pred.skupaj <- program_BD_pred.skupaj[order(program_BD_pred.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.skupaj) <- program_BD_pred.skupaj$program.studentov.ime - program_BD_pred.skupaj <- program_BD_pred.skupaj[order(as.character(sapply(rownames(program_BD_pred.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.skupaj <- rbind(program_BD_pred.skupaj, c(colMeans(program_BD_pred.skupaj[1:1]), - colMeans(program_BD_pred.skupaj[2:ncol(program_BD_pred.skupaj)], na.rm=TRUE))) - program_BD_pred.skupaj <- formatNA(program_BD_pred.skupaj, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.skupaj )[nrow(program_BD_pred.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov," programov)}")) - colnames(program_BD_pred.skupaj ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.skupaj.tex <- capture.output(Hmisc::latex(program_BD_pred.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=TRUE, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - program_BD_pred.skupaj.tex <- "Ni ocen." - } - - - - - #PROGRAMI: ANKETA PO IZPITU - stopnja_program.PO <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO <- stopnja_program.PO[stopnja_program.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (any(!is.na(stopnja_program.PO))){ - stopnja_program.PO <- aggregate(stopnja_program.PO$predmet.sifra, - by=stopnja_program.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.pred <- merge(test.po, stopnja_program.PO, by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program.PO <- stopnja_program.PO} - - program.1stopnja.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO <- cbind(program.1stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO1 <- stopnja_program.PO - if (!is.null(stopnja_program.PO1)) { - colnames(stopnja_program.PO1)[4] <- "N_anket" - rownames(program.1stopnja.PO) <- program.1stopnja.PO[rownames(program.1stopnja.PO),"student.program.ime"] - } - - if (nrow(program.1stopnja.PO) > 0 & !is.null(stopnja_program.PO1)) { - program_BD_po.skupaj <- merge(stopnja_program.PO1, program.1stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - - if (nrow(program_BD_po.skupaj) > 0 & any(program_BD_po.skupaj$STOPNJA==1, na.rm=TRUE)) { - program_BD_po.skupaj <-subset(program_BD_po.skupaj, STOPNJA==1) - program_BD_po.skupaj <- program_BD_po.skupaj[, !(colnames(program_BD_po.skupaj) %in% c("STOPNJA"))] - program_BD_po.skupaj <- program_BD_po.skupaj[c(1,2,3,4,5,6,7,9,8)] - #if (gregexpr(pattern = "Magistrski",program_BD_po.skupaj$program.studentov.ime)[[1]][1] == 1){ - # program_BD_po.skupaj<-program_BD_po.skupaj[- grep("Magistrski", program_BD_po.skupaj$program.studentov.ime),] - - #} - st.programov1 <- length(program_BD_po.skupaj$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_po.skupaj) <- formatProgImena(program_BD_po.skupaj$program.studentov.ime, program_BD_po.skupaj$predmet.ocena.SKUPAJ) - program_BD_po.skupaj <- program_BD_po.skupaj[order(program_BD_po.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj) <- program_BD_po.skupaj$program.studentov.ime - program_BD_po.skupaj <- program_BD_po.skupaj[order(as.character(sapply(rownames(program_BD_po.skupaj))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj<- rbind(program_BD_po.skupaj, c(colMeans(program_BD_po.skupaj[1:1]), - colMeans(program_BD_po.skupaj[2:ncol(program_BD_po.skupaj)], na.rm=TRUE))) - program_BD_po.skupaj <- formatNA(program_BD_po.skupaj, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.skupaj )[nrow(program_BD_po.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj <- program_BD_po.skupaj[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=TRUE, - insert.bottom=paste("{\\footnotesize \\textit{* {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.skupaj.tex <- "Ni ocen." - } - - - - # ANKETA PO IZPITU SORITRANA PO USTREZNOSTI KREDITNIH TOK - stopnja_program.PO.krediti <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO.krediti <- stopnja_program.PO.krediti[stopnja_program.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (nrow(stopnja_program.PO.krediti) > 0) { - stopnja_program.PO.krediti <- aggregate(stopnja_program.PO.krediti$predmet.sifra, - by=stopnja_program.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.krediti.pred <- merge(test.po, stopnja_program.PO.krediti, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program.PO.krediti.pred <- stopnja_program.PO.krediti} - - program.1stopnja.PO.krediti <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO.krediti <- cbind(program.1stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO.krediti1 <- stopnja_program.PO.krediti - colnames(stopnja_program.PO.krediti1)[4] <- "N_anket" - rownames(program.1stopnja.PO.krediti) <- program.1stopnja.PO.krediti[rownames(program.1stopnja.PO.krediti),"student.program.ime"] - - if (nrow(program.1stopnja.PO.krediti) > 0 & nrow(stopnja_program.PO.krediti1) > 0) { - program_BD_po.skupaj.krediti <- merge(stopnja_program.PO.krediti1, program.1stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - - } - if (nrow(program_BD_po.skupaj.krediti) > 0 & any(program_BD_po.skupaj.krediti$STOPNJA==1, na.rm=TRUE)) { - program_BD_po.skupaj.krediti <- subset(program_BD_po.skupaj.krediti, STOPNJA==1) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[, !(colnames(program_BD_po.skupaj.krediti) %in% c("STOPNJA"))] - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[c(1,2,3,4,5,6,7,9,8)] - #if (gregexpr(pattern = "Magistrski",program_BD_po.skupaj.krediti$program.studentov.ime)[[1]][1] == 1){ - # program_BD_po.skupaj.krediti<-program_BD_po.skupaj.krediti[- grep("Magistrski", program_BD_po.skupaj.krediti$program.studentov.ime),] - - #} - st.programov1<-length(program_BD_po.skupaj.krediti$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_po.skupaj.krediti) <- formatProgImena(program_BD_po.skupaj.krediti$program.studentov.ime, program_BD_po.skupaj.krediti$predmet.ocena.krediti) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[order(program_BD_po.skupaj.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj.krediti) <- program_BD_po.skupaj.krediti$program.studentov.ime - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[order(as.character(sapply(rownames(program_BD_po.skupaj.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj.krediti <- rbind(program_BD_po.skupaj.krediti, c(colMeans(program_BD_po.skupaj.krediti[1:1]), - colMeans(program_BD_po.skupaj.krediti[2:ncol(program_BD_po.skupaj.krediti)], na.rm=TRUE))) - program_BD_po.skupaj.krediti <- formatNA(program_BD_po.skupaj.krediti, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.skupaj.krediti )[nrow(program_BD_po.skupaj.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj.krediti ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj.krediti, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=TRUE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.skupaj.krediti.tex <- "Ni ocen." - } - ## //program_BD_po.skupaj.krediti.tex// ## - - - - ##################### - # PODIPLOMSKI TUDIJ - ##################### - #FAKULTETA: IZPIS PROGRAMOV ZA DRUGO STOPNJO - #PODIPLOMSKI PROGRAM - stopnja_program_podipl <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl <- stopnja_program_podipl[stopnja_program_podipl$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (nrow(stopnja_program_podipl) >0) { - stopnja_program_podipl <- aggregate(stopnja_program_podipl$predmet.sifra, - by=stopnja_program_podipl[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.pred <- merge(test.pred, stopnja_program_podipl, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program_podipl <- stopnja_program_podipl} - - - #ANKETA PRED IZPITOM - program.2stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.2stopnja <- cbind(program.2stopnja, predmet.ocena.SKUPAJ=rowMeans(program.2stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program_podipl1 <- stopnja_program_podipl - colnames(stopnja_program_podipl1)[4] <- "N_anket" - rownames(stopnja_program_podipl1) <- stopnja_program_podipl1[rownames(stopnja_program_podipl1),"student.program.ime"] - - ##Izloimo Neznan program - #stopnja_program_podipl1<- stopnja_program_podipl1[!stopnja_program_podipl1$program.studentov.ime == "Neznan program", ] - - if (nrow(stopnja_program_podipl1) > 0) { - program_BD_pred.podipl <- merge(stopnja_program_podipl1, program.2stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } else {program_BD_pred.podipl <- stopnja_program_podipl1} - - if (nrow(program_BD_pred.podipl) > 0 & any(program_BD_pred.podipl$STOPNJA==2, na.rm=TRUE)) { - program_BD_pred.podipl <- subset(program_BD_pred.podipl, STOPNJA==2) - program_BD_pred.podipl <- program_BD_pred.podipl[, !(colnames(program_BD_pred.podipl) %in% c("STOPNJA"))] - st.programov2 <- length(program_BD_pred.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_pred.podipl) <- formatProgImena(program_BD_pred.podipl$program.studentov.ime, program_BD_pred.podipl$predmet.ocena.SKUPAJ) - program_BD_pred.podipl <- program_BD_pred.podipl[order(program_BD_pred.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.podipl) <- program_BD_pred.podipl$program.studentov.ime - program_BD_pred.podipl <- program_BD_pred.podipl[order(as.character(sapply(rownames(program_BD_pred.podipl),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.podipl <- rbind(program_BD_pred.podipl, c(colMeans(program_BD_pred.podipl[1:1]), - colMeans(program_BD_pred.podipl[2:ncol(program_BD_pred.podipl)], na.rm=TRUE))) - program_BD_pred.podipl <- formatNA(program_BD_pred.podipl, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.podipl )[nrow(program_BD_pred.podipl)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov2," programov)}")) - colnames(program_BD_pred.podipl ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.podipl.tex <- capture.output(Hmisc::latex(program_BD_pred.podipl, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=TRUE, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - program_BD_pred.podipl.tex <- "Ni ocen." - } - ############### - - - #ANKETA PO IZPITU - stopnja_program_podipl.PO <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra", - paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO <- stopnja_program_podipl.PO[stopnja_program_podipl.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (any(!is.na(stopnja_program_podipl.PO))){ - stopnja_program_podipl.PO <- aggregate(stopnja_program_podipl.PO$predmet.sifra, - by=stopnja_program_podipl.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.pred <- merge(test.po, stopnja_program_podipl.PO, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program_podipl.PO <- NULL} - - program.22stopnja.PO <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO <- cbind(program.22stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO1 <- stopnja_program_podipl.PO - if (!is.null(stopnja_program_podipl.PO1)) { - colnames(stopnja_program_podipl.PO1)[4] <- "N_anket" - rownames(program.22stopnja.PO) <- program.22stopnja.PO[rownames(program.22stopnja.PO),"student.program.ime"] - } - - if (nrow(program.22stopnja.PO) > 0 & !is.null(stopnja_program_podipl.PO1)) { - program_BD_po.podipl <- merge(stopnja_program_podipl.PO1, program.22stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - - if (nrow(program_BD_po.podipl) > 0 & any(program_BD_po.podipl$STOPNJA==2, na.rm=TRUE)) { - program_BD_po.podipl <- subset(program_BD_po.podipl, STOPNJA==2) - program_BD_po.podipl <- program_BD_po.podipl[, !(colnames(program_BD_po.podipl) %in% c("STOPNJA"))] - program_BD_po.podipl <- program_BD_po.podipl[c(1,2,3,4,5,6,7,9,8)] - st.programov3 <- length(program_BD_po.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl) <- formatProgImena(program_BD_po.podipl$program.studentov.ime, program_BD_po.podipl$predmet.ocena.SKUPAJ) - program_BD_po.podipl <- program_BD_po.podipl[order(program_BD_po.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl) <- program_BD_po.podipl$program.studentov.ime - program_BD_po.podipl <- program_BD_po.podipl[order(as.character(sapply(rownames(program_BD_po.podipl))), decreasing=FALSE), - !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl <- rbind(program_BD_po.podipl, c(colMeans(program_BD_po.podipl[1:1]), - colMeans(program_BD_po.podipl[2:ncol(program_BD_po.podipl)], na.rm=TRUE))) - program_BD_po.podipl <- formatNA(program_BD_po.podipl, decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl)[nrow(program_BD_po.podipl)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl<-program_BD_po.podipl[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.tex <- capture.output(Hmisc::latex(program_BD_po.podipl, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=TRUE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.podipl.tex <- "Ni ocen." - } - - - - ############################ - #ANKETA PO IZPITU SORTIRANA PO USTRETNOSTI KREDITNIH TOK - stopnja_program_podipl.PO.krediti <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi.PO[c("predmet.sifra",paste0(vars.predmet$cont$vars[8:20],"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO.krediti <- stopnja_program_podipl.PO.krediti[stopnja_program_podipl.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_program_podipl.PO.krediti) > 0) { - stopnja_program_podipl.PO.krediti <- aggregate(stopnja_program_podipl.PO.krediti$predmet.sifra, - by=stopnja_program_podipl.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.krediti.pred <- merge(test.po, stopnja_program_podipl.PO.krediti, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } - - program.22stopnja.PO.krediti <- aggregate(data.predmeti.PO[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti.PO[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO.krediti <- cbind(program.22stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO.krediti1<-stopnja_program_podipl.PO.krediti - - - colnames(stopnja_program_podipl.PO.krediti1)[4] <- "N_anket" - rownames(program.22stopnja.PO.krediti) <- program.22stopnja.PO.krediti[rownames(program.22stopnja.PO.krediti),"student.program.ime"] - - if (nrow(program.22stopnja.PO.krediti) > 0 & nrow(stopnja_program_podipl.PO.krediti1) > 0) { - program_BD_po.podipl.krediti <- merge(stopnja_program_podipl.PO.krediti1, program.22stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - if (nrow(program_BD_po.podipl.krediti) > 0 & any(program_BD_po.podipl.krediti$STOPNJA==2, na.rm=TRUE)) { - program_BD_po.podipl.krediti <- subset(program_BD_po.podipl.krediti, STOPNJA==2) - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[, !(colnames(program_BD_po.podipl.krediti) %in% c("STOPNJA"))] - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[c(1,2,3,4,5,6,7,9,8)] - st.programov3<-length(program_BD_po.podipl.krediti$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl.krediti) <- formatProgImena(program_BD_po.podipl.krediti$program.studentov.ime, program_BD_po.podipl.krediti$predmet.ocena.krediti) - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[order(program_BD_po.podipl.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl.krediti) <- program_BD_po.podipl.krediti$program.studentov.ime - program_BD_po.podipl.krediti <- program_BD_po.podipl.krediti[order(as.character(sapply(rownames(program_BD_po.podipl.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl.krediti <- rbind(program_BD_po.podipl.krediti, c(colMeans(program_BD_po.podipl.krediti[1:1]), - colMeans(program_BD_po.podipl.krediti[2:ncol(program_BD_po.podipl.krediti)], na.rm=TRUE))) - program_BD_po.podipl.krediti <- formatNA(program_BD_po.podipl.krediti, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl.krediti )[nrow(program_BD_po.podipl.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl.krediti ) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl.krediti<-program_BD_po.podipl.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.podipl.krediti, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=TRUE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.podipl.krediti.tex <- "Ni ocen." - } - - ##################################### - - ####### - # IPP - ####### - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA - - if (nrow(izv.predmet) > 0) { - stopnja_izvajalec.skupaj <- merge(proggIZ.tmp, progMeanIzv.fak1, - by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.skupaj <- merge(stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], - by="program.studentov.ime", sort=FALSE) - - program_dodiplomski_studij <- stopnja_izvajalec.skupaj - stopnja_izvajalec.skupaj <- subset(stopnja_izvajalec.skupaj, STOPNJA==1) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[, !(colnames(stopnja_izvajalec.skupaj) %in% c("STOPNJA"))] - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - #if (gregexpr(pattern = "Magistrski",stopnja_izvajalec.skupaj$program.studentov.ime)[[1]][1] == 1){ - # stopnja_izvajalec.skupaj<-stopnja_izvajalec.skupaj[- grep("Magistrski", stopnja_izvajalec.skupaj$program.studentov.ime),] - - # } - st.programov4 <- length(stopnja_izvajalec.skupaj$program.studentov.ime) - } else {program_dodiplomski_studij <- NULL - program_dodiplomski_studij$STOPNJA <- NULL} - - if (nrow(izv.predmet) > 0 & any(program_dodiplomski_studij$STOPNJA==1, na.rm=TRUE)) { - - if (sortByAverage) { - rownames(stopnja_izvajalec.skupaj) <- formatProgImena(stopnja_izvajalec.skupaj$program.studentov.ime, stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[order(stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.skupaj) <- stopnja_izvajalec.skupaj$program.studentov.ime - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[order(as.character(sapply(rownames(stopnja_izvajalec.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.skupaj <- rbind(stopnja_izvajalec.skupaj, c(colMeans(stopnja_izvajalec.skupaj[1:1]), - colMeans(stopnja_izvajalec.skupaj[2:ncol(stopnja_izvajalec.skupaj)], na.rm=TRUE))) - stopnja_izvajalec.skupaj <- formatNA(stopnja_izvajalec.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.skupaj )[nrow(stopnja_izvajalec.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov4," programov)}")) - colnames(stopnja_izvajalec.skupaj ) <- latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.skupaj.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.skupaj, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh - izvajalcev pri predmetih na - doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - stopnja_izvajalec.skupaj.tex <- "Ni ocen." - } - - ## //IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA// ## - - - - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA### - - if (nrow(izv.predmet) > 0) { - stopnja_izvajalec.podipl <- merge(proggIZ.tmp, progMeanIzv.fak1,by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.podipl <- merge(stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], by="program.studentov.ime", sort=FALSE) - - program_podiplomski_studij <- stopnja_izvajalec.podipl - stopnja_izvajalec.podipl <- subset(stopnja_izvajalec.podipl, STOPNJA==2) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[, !(colnames(stopnja_izvajalec.podipl) %in% c("STOPNJA"))] - stopnja_izvajalec.podipl <- - stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - ## Izloimo Neznan program - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[!stopnja_izvajalec.podipl$program.studentov.ime == "Neznan program", ] - st.programov5<-length(stopnja_izvajalec.podipl$program.studentov.ime) - } - - if (nrow(izv.predmet) > 0 & any(program_podiplomski_studij$STOPNJA==2, na.rm=TRUE)) { - - if (sortByAverage) { - rownames(stopnja_izvajalec.podipl) <- formatProgImena(stopnja_izvajalec.podipl$program.studentov.ime, stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[order(stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.podipl) <- stopnja_izvajalec.podipl$program.studentov.ime - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[order(as.character(sapply(rownames(stopnja_izvajalec.podipl), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.podipl <- rbind(stopnja_izvajalec.podipl, c(colMeans(stopnja_izvajalec.podipl[1:1]), - colMeans(stopnja_izvajalec.podipl[2:ncol(stopnja_izvajalec.podipl)], na.rm=TRUE))) - stopnja_izvajalec.podipl <- formatNA(stopnja_izvajalec.podipl, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.podipl )[nrow(stopnja_izvajalec.podipl)] <- c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov5," programov)}")) - colnames(stopnja_izvajalec.podipl ) <- latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.podipl.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.podipl, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh - izvajalcev pri predmetih - na doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - stopnja_izvajalec.podipl.tex <- "Ni ocen." - } - - ## //IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA// ## - - - ########################## - # STRUKTURA LATEX POROILA - # Latex tabele izraunanih povpreij - # zapiemo v spremenljivko in opredelimo - # strukturo latex izpisa (poglavje, podpoglavje, nove strani) - ########################## - programi.tex[[as.character(program)]] <- c( - "\\chapter{Redni tudij}","\\renewcommand{\\leftmark}{Predmeti - redni tudij}", - paste("Prikazana so povpreja za ocene komponent na skalah 1-5 za predmete z vsaj 4 odgovori. - Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno (opozorilno)}}, - povpreja pod 3.0 pa {\\color{BrickRed}\\textbf{rdee (kritino)}}. - Nizko tevilo enot in neugodne stopnje sodelovanja so oznaene z enojnim () - oklepajem oziroma z dvojnim oklepajem (()). Podrobnosti so v metodolokih - navodilih na koncu poroila in na \\url{http://ul.1ka.si/metodologija}, kjer se nahajajo tudi vpraalniki."), - "\\section{Predmeti}","\\subsection{Anketa PRED izpitom}", - program.predmeti.pred.redni.program.tex, - "\\newpage","\\subsection{Anketa PO izpitu}", - program.predmeti.po.redni.program.tex, - "\\newpage",program.predmeti.po.redni.program.krediti.tex,"\\newpage", - paste0("\\chapter{Izredni tudij}"), - "\\renewcommand{\\leftmark}{Predmeti - izredni tudij}", - if (program.predmeti.pred.izredni.tex != "Ni ocen." - && !is.null(program.predmeti.po.izredni.tex) - && program.izvajalci.izredni.tex != "Ni ocen.") { - c("\\section{Predmeti}","\\subsection{Anketa PRED izpitom}", - program.predmeti.pred.izredni.program.tex, "\\newpage", - "\\subsection{Anketa PO izpitu}",program.predmeti.po.izredni.program.tex, - "\\newpage", program.izvajalci.izredni.program.tex, "\\newpage", - program.predmeti.po.izredni.program.krediti) - } else {"Ni ocen za izredni tudij."}, - if (programi.imena.stopnja$Stopnja == 1){c( - "\\chapter{Povpreja po tudijskih programih}", - "\\renewcommand{\\leftmark}{tudijski programi}", - paste("Izraunana so povpreja po vseh predmetih - rednih in izrednih, ki so jih ocenjevali - tudenti doloenega tudijskega programa. - Predmeti z veliko in malo tudenti imajo enako teo. - V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je - skupno tevilo predmetov, - kjer so odgovarjali vsaj", minEnot, - "tudenti. Med predmete doloenega programa so vkljueni - tudi izbirni predmeti drugih programov, e so jih tudenti - odgovarjajoega programa izbrali."), - "\\section{Dodiplomski tudij}", - program_BD_pred.skupaj.tex,"\\newpage",program_BD_po.skupaj.tex, - "\\newpage",program_BD_po.skupaj.krediti.tex,"\\newpage") - } else { c("\\chapter{Povpreja po tudijskih programih}", - "\\renewcommand{\\leftmark}{tudijski programi}", - paste("Izraunana so povpreja po vseh predmetih, - rednih in izrednih, ki so jih ocenjevali tudenti doloenega tudijskega programa. - Predmeti z veliko in malo tudenti imajo enako teo. V stolpcu - \\guillemotright t. predmetov\\guillemotleft \\ je skupno tevilo predmetov, - kjer so odgovarjali vsaj", minEnot,"tudenti. Vkljueni so lahko tudi prosto izbirni predmeti - (oziroma izvajalci pri predmetih), ki so sicer domicilni na drugih programih."), - "\\section{Podiplomski tudij}", - program_BD_pred.podipl.tex,"\\newpage",program_BD_po.podipl.tex, - "\\newpage",program_BD_po.podipl.krediti.tex,"\\newpage")}) -} - - -# Sestavljanje LATEX DOKUMENTA (glava, noga) -tex.glava <- scan("Evalvacija/latexkosi/a-glava-katedra.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -Rdirektorij <- getwd() - -for (program in names(programi.tex)) { - tex.glava.program <- gsub(pattern='!naslov!', - replacement=Hmisc::latexTranslate(programi[programi$student.program.sifra==program, - "student.program.ime"]), x=tex.glava) - tex.program <- c(tex.glava.program,"\\setlength{\\tabcolsep}{4pt}", - programi.tex[[as.character(program)]], "\\newpage", - "\\renewcommand{\\leftmark}{Metodoloko pojasnilo}", - tex.okvir,"\\newpage", - tex.noga) - - cat(tex.program, file=paste("Evalvacija/results/program_", program,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, "Evalvacija/results", sep="/")) - tools::texi2pdf(file=paste("program_", program,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) -} - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_studijska_praksa.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_studijska_praksa.R deleted file mode 100644 index 29d9b784d..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_studijska_praksa.R +++ /dev/null @@ -1,281 +0,0 @@ -# run first -#params <- commandArgs(trailingOnly=TRUE) -#ID <- params[1] -#sesionID <- params[2] #Dodajanje tevil na koncu pdf/tex datotek za Petra -#source("Evalvacija/R/koda.r") - -sortByAverage <- TRUE # if true sort by average, else by name -sortbykrediti<-TRUE #if true sort by krediti (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - - -# which lecturers and courses should be included (all from predmeti.izbor) -predmeti.izbor <- povprecja.predmeti$predmet.sifra - - -# making latex file -izbor.tex <- NULL - -## course averages ## -izbor.predmeti <- subset(povprecja.predmeti, predmet.sifra %in% predmeti.izbor) - -completeFun <- function(data, desiredCols) { - completeVec <- complete.cases(data[, desiredCols]) - return(data[completeVec, ]) -} - -izbor.predmeti <- completeFun(izbor.predmeti, "ime.predmeta") -if (nrow(izbor.predmeti) > 0) { - rownames(izbor.predmeti) <- make.unique(povprecja.predmeti[rownames(izbor.predmeti), "ime.predmeta"]) - - - #POROILO ZA PREDMETE KI VSEBUJEJO PRAKSO - izbor.predmeti.praksa1 <- izbor.predmeti[c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$praksa,"_mean"), - "predmet.ocena.SKUPAJ.praksa", "PRAKSA")] - izbor.predmeti.praksa1 <- izbor.predmeti[izbor.predmeti$PRAKSA==1 ,"predmet.sifra"] - - - - part <- NULL - predmeti <- NULL - - if (all(!is.na(izbor.predmeti.praksa1))) { - for (predmet in as.character(izbor.predmeti.praksa1)) { - povprecja.predmet.temp <- subset(povprecja.predmeti, predmet.sifra==predmet) - data.predmet.temp <- subset(data.predmeti, predmet.sifra==predmet & (veljavna | veljavna_po_izpitu)) - - ## stopnja sodelovanja ## - sodelujocih <- povprecja.predmet.temp$N_anket - stopnjaPredmeta <- povprecja.predmet.temp$STOPNJA - if (stopnjaPredmeta==1) { - FDVstring <- c('dodiplomskih', paste(fakulteta, "povpreje\n(dodiplomski)")) - } else if (stopnjaPredmeta==2) { - FDVstring <- c('podiplomskih', paste(fakulteta, "povpreje\n(podiplomski)")) - } else { - warning(paste('predmet', povprecja.predmet.temp$ime.predmeta, 'ni ne 1. ne 2. stopnja')) - FDVstring <- '' - } - imepredmeta <- sub("^BD |^BP ", "", povprecja.predmet.temp$ime.predmeta) # ime brez BD/BP predpone - - pdf(paste('Evalvacija/results/part-predmet-slike/', predmet, '_dejmoprobat5.pdf', sep=''), family='sans', pointsize=9, width=6, height=3.25) - par(mar=(c(4, 4, 1, 13) + 0.1), mgp=c(3, 2, 0), xpd=TRUE) - ## Make the matrix for barplot - mat.po <- cbind(c(povprecja.predmet.temp$sodelujocih.pct_po_izpitu, povprecja.predmet.temp$zavrnjenih.pct_po_izpitu, povprecja.predmet.temp$neodzivnih.pct_po_izpitu), - c(FDVpredmeti[as.character(stopnjaPredmeta),"sodelujocih.pct_po_izpitu"], FDVpredmeti[as.character(stopnjaPredmeta),"zavrnjenih.pct_po_izpitu"], - FDVpredmeti[as.character(stopnjaPredmeta),"neodzivnih.pct_po_izpitu"])) - - ## Get the y-values for text - ys.po <- apply(mat.po, 2, function(x) c(x[1]/2, head(cumsum(x),-1) + tail(x,-1)/2)) - - ## Make barplot, store x data - xs.po <- barplot(mat.po, names.arg=c('Predmet\n', FDVstring[2]), col=c("firebrick3", "dodgerblue3", "mistyrose1"), ylim=c(0,100), space=c(0,1)) - - ## Add text - text(rep(xs.po, each=nrow(ys.po)), c(ys.po), labels=paste0(round(c(mat.po), 0),"%")) - legend("topright", inset=c(-0.55, 0), legend=c("Ni pristopil", "Zavrnili sodelovanje", "Odgovarjal"), col=c("mistyrose1", "dodgerblue3", "firebrick3"), lty=1, lwd=2, bty='n') - dev.off() - - # Tekst - tex.sodelovanje1 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za predmet \\guillemotright ", - imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", - paste0(povprecja.predmet.temp$N_anket_po_izpitu), " od skupno ", - povprecja.predmet.temp$ST_STUD, - " tudentov, kar je \\textbf{", round(povprecja.predmet.temp$sodelujocih.pct_po_izpitu), - "\\%} vseh vpisanih tudentov. ", - "Povpreje ", FDVstring[1], " predmetov ", fakulteta, " je sicer - znaalo \\textbf{", round(FDVpredmeti[as.character(stopnjaPredmeta), - "sodelujocih.pct_po_izpitu"]), "\\%}."), - "\\begin{figure}[H]", "\\caption{Struktura tudentov glede na odgovarjanje (\\%) - tudijska praksa}", - paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", - predmet, "_dejmoprobat5.pdf}}"), "\\end{figure}") - - - # Generiranje tabel - tabela.praksa <- cbind.data.frame( - N=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_N")]), - mean=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_mean")]), - sd=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_sd")]), - min=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_min")]), - max=as.numeric(povprecja.predmet.temp[paste0(vars.predmet$cont$praksa,"_max")])) - - povprecja.praksa <- tabela.praksa$mean - - tabela.praksa[is.na(tabela.praksa)] <- "." - - if (min(as.numeric(tabela.praksa$N)) < minEnot) { - opomba <- '{\\footnotesize { Podatek ni prikazan zaradi majhnega tevila enot.}}' - } else {opomba <- "{\\footnotesize {}}"} - FDVcont.praksa <- data.frame(vars.predmet$cont$meansFDV[vars.predmet$cont$praksa]) - colnames(FDVcont.praksa) <- 'FDVcont.praksa' - tabela.praksa <- cbind(tabela.praksa, FDVcont.praksa) - - tabela.praksa <- rbind(tabela.praksa, c('', povprecja.predmet.temp$predmet.ocena.SKUPAJ.praksa, '', '', '', mean(tabela.praksa$FDVcont.praksa, na.rm=TRUE))) - tabela.contR.praksa <- formatNA(tabela.praksa, decimalke=c(0,1,1,0,0,1), pobarvanka=c("NE",pobarvankaPredmSkupaj,"NE","NE","NE",pobarvankaPredmSkupaj), na.repl=".") - - rownames(tabela.contR.praksa) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.dolgo[vars.predmet$cont$praksa])), '\\hline\n\\textbf{Skupaj}') - # rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1] <- paste0("\\hline\n", rownames(tabela.contR)[length(vars.predmet$cont$ime.dolgo[vars.predmet$cont$pred]) + 1]) # a line seperating questions before/after exam - colnames(tabela.contR.praksa) <- c('n', 'povpreje', 'sd', 'min', 'max', 'povpreje') - tabela.contR.praksa.tex1 <- capture.output(Hmisc::latex(toLatex(tabela.contR.praksa), - caption="Povpreje komponent tudijske prakse (lestvica 1-5)", - rowlabel='', - file='', - where='H', - cgroup=c("Predmet", fakulteta), - n.cgroup=c(5,1), - col.just=rep_len('c', ncol(tabela.contR.praksa)), - rowlabel.just='p{9.5cm}', - insert.bottom=opomba)) - - - - - if (sum(!is.na(povprecja.praksa)) < 4) {povprecja.praksa <- povprecja.praksa[!is.na(povprecja.praksa)] <-NA} # e so bile 3 zaporedne vrednosti je nastala udna rta zato reeno da naj bodo najmanj 4 - radar.cont <- data.frame(rbind(5, 1, t(cbind(FDVcont.praksa, as.numeric(povprecja.praksa)))), row.names=1:4, check.names=F) - colnames(radar.cont) <- sub(" ", "\n", as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])) - radar.f <- radar.cont - star.radar2 <- as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]) - - colnames(radar.f) <- sub(" ", "\n", star.radar2) - CairoPDF(paste('Evalvacija/results/part-predmet-slike/', predmet, '_radar.pdf', sep=''), family='sans', pointsize=9, width=6, height=4) - par(mar=(c(0, 4, 1, 6) + 0.1), xpd=TRUE) - fmsb::radarchart(radar.f, pcol=c('dodgerblue3','firebrick3'), cglcol='gray75', plwd=2, plty=1, cglwd=1, cglty=1, seg=4, axistype=1, caxislabels=c(1:5), axislabcol='gray25', centerzero=TRUE) - legend('topright', inset=c(-0.15, 0), legend=c("Predmet", paste(fakulteta, "povpreje")), col=c('firebrick3', 'dodgerblue3'), lty=1, lwd=2, bty='n') - dev.off() - - # Porazdelitev odgovorov - porazdelitev1 <- t(sapply(data.predmet.temp[,vars.predmet$cont$praksa], function(x) table(factor(x, levels=predmet.someMiss)))) - # samo kjer je dovolj enot - porazdelitev1[rowSums(porazdelitev1) < minEnot,] <- NA - porazdelitev1 <- cbind(porazdelitev1, rowSums(porazdelitev1, na.rm=TRUE)) - porazdelitev1 <- formatNA(data.frame(porazdelitev1, stringsAsFactors=FALSE), decimalke=0, na.repl=".") - - ## - rownames(porazdelitev1) <- c(Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa]))) - colnames(porazdelitev1) <- c("\\textbf{1}","\\textbf{2}","\\textbf{3}","\\textbf{4}","\\textbf{5}","\\textbf{Ne elim odgovoriti}","\\textbf{Nimam dovolj informacij}","\\textbf{Skupaj}") - - porazdelitev1.tex <- capture.output(Hmisc::latex(porazdelitev1, caption='Podrobna porazdelitev odgovorov za ocene komponent \\textbf{tudijske prakse}', rowlabel='\\textbf{Komponente}', file='', where='H', col.just=rep_len('c', ncol(porazdelitev1)), insert.bottom=opomba)) - ## /podrobna porazdelitev1 ocen/ ## - - data.text1 <- lapply(data.predmet.temp[vars.predmet$text$vars[-c(1,2,3)]], trim) - for (textvar in names(data.text1)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text1[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', x=data.text1[[textvar]][!data.text1[[textvar]] %in% junk.komentar]) - } - - tex.text1 <- NULL - for (textvar in names(data.text1)) { - komentarji <- data.text1[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text1 <- append(tex.text1, append(paste('\\subsection{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text1 <- append(tex.text1, append(paste('\\subsection{', vars.predmet$text$ime.dolgo[[textvar]], '}', sep=''), '- Ni podanih komentarjev. -')) - } - } - # tex.sodelovanje2 <- c(paste0("Na evalvacijski vpraalnik o tudijski praksi za predmet \\guillemotright ", imepredmeta, "\\guillemotleft \\ PO izpitu je (vsaj deloma) odgovarjalo ", paste0(povprecja.predmet.temp$N_anket_po_izpitu), " od skupno ", povprecja.predmet.temp$ST_STUD, " tudentov, kar je \\textbf{", round(povprecja.predmet.temp$sodelujocih.pct_po_izpitu), "\\%} vseh vpisanih tudentov. ", - # "Povpreje ", FDVstring[1], " predmetov ", fakulteta, " je sicer znaalo \\textbf{", round(FDVpredmeti[as.character(stopnjaPredmeta),"sodelujocih.pct_po_izpitu"]), "\\%}."), - # "\\begin{figure}[H]", "\\caption{Struktura tudentov glede na odgovarjanje (\\%) - tudijska praksa}", paste0("\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/", predmet, "_dejmoprobat5.pdf}}"), "\\end{figure}") - - - part$predmet[[predmet]]<-c(paste0("\\chapter{", imepredmeta, paste0(" (",gsub('_', '\\_', predmet, fixed=T), ")"),"}", sep=""),"\\section{Podrobne analize odgovorov}",tabela.contR.praksa.tex1, "\\begin{figure}[H]", "\\caption{Povpreja kategorij odgovorov za komponente \\textbf{prakse}}", paste0('\\centerline{\\includegraphics[width=0.85\\textwidth]{part-predmet-slike/', predmet, '_radar.pdf}}'), "\\end{figure}", - porazdelitev1.tex, tex.text1) - - } - - - izbor.predmeti.praksa <- izbor.predmeti[c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$praksa,"_mean"),"predmet.ocena.SKUPAJ.praksa", - "PRAKSA","predmet.sifra")] - izbor.predmeti.praksa <- izbor.predmeti[izbor.predmeti$PRAKSA==1 ,c("ST_STUD","N_anket_po_izpitu", - "sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu", - "neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$praksa,"_mean"), - "predmet.ocena.SKUPAJ.praksa","predmet.sifra")] - - if(nrow(izbor.predmeti.praksa) > 0) { - rownames(izbor.predmeti.praksa) <- c(paste0(rownames(izbor.predmeti.praksa),paste0(" (",gsub('_', '\\_', izbor.predmeti.praksa$predmet.sifra),")"))) - } - izbor.predmeti.praksa <- izbor.predmeti.praksa[,-which(names(izbor.predmeti.praksa) == "predmet.sifra")] - - if (nrow(izbor.predmeti.praksa) > 0) { - # PRED - redni - if (any(is.na(izbor.predmeti.praksa))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.", - "- Podatek je manj pomemben ali teko izraunljiv.")} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - if (sortByAverage) { - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa, izbor.predmeti.praksa$N_anket_po_izpitu, decreasing=TRUE),] - rownames(izbor.predmeti.praksa) <- formatProgImena(rownames(izbor.predmeti.praksa), izbor.predmeti.praksa$predmet.ocena.SKUPAJ.praksa) - } else { # sort by name - izbor.predmeti.praksa <- izbor.predmeti.praksa[order(rownames(izbor.predmeti.praksa), decreasing=FALSE),] - } - izbor.predmeti.praksa <- rbind(izbor.predmeti.praksa, colMeans(izbor.predmeti.praksa, na.rm=TRUE)) - izbor.predmeti.praksa <- formatNA(izbor.predmeti.praksa, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$praksa]),decimalkePredmSkupaj), pobarvanka=c("NE","NE","NE","NE","NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$praksa], povprecje.ocen.praksa=pobarvankaPredmSkupaj), na.repl=".") - rownames(izbor.predmeti.praksa)[nrow(izbor.predmeti.praksa)] <- "\\hline \\textbf{Povpreje fakultete (tudijska praksa)}" - colnames(izbor.predmeti.praksa) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$praksa])), "\\textbf{Skupaj}")) - izbor.predmeti.praksa.tex <- c(capture.output(Hmisc::latex(izbor.predmeti.praksa, - caption="Povpreje komponent tudijske prakse (sortirano po povpreju \\textbf{Skupaj})", - rowlabel="", - file="", - where="H", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - col.just=c("c","c|","c","c","c|",rep_len("c", length(vars.predmet$cont$praksa)),"|c"), - rowlabel.just="A{5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - izbor.predmeti.praksa.tex <- "Ni ocen." - } - ############################## - - -} else { - izbor.predmeti.praksa.tex <- "Ni ocen." -} - -} else { - izbor.predmeti.praksa.tex <- "Ni ocen." -} -## /course averages/ ## - -################# -# GENERIRANJE PDF -################ -tex.glava <- scan("Evalvacija/latexkosi/a-glava-praksa.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) -tex.glava <- gsub(pattern='!logo!', replacement=Hmisc::latexTranslate(logo), x=tex.glava) # Logo fakultete -tex.glava <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE) -Rdirektorij <- getwd() - - -izbor.tex <- c("\\chapter{tudijska praksa}", if(any(izbor.predmeti.praksa.tex !="Ni ocen.")) {c("Navedena so povpreja ocen tudentov, - ki so pri predmetih opravjali tudijsko prakso. - Na lestvici od 1 do 5 (1 = sploh se ne strinjam - oziroma sploh nisem zadovoljen/zadovoljna; 5 = - popolnoma se strinjam oziroma sem zelo zadovoljen/zadovoljna) - so ocenjevali kakovost tudijske prakse.", - izbor.predmeti.praksa.tex)} else {"Za tudijsko prakso ni ocen."}) - -izbor.tex <- gsub('(continued)', '(nadaljevanje)', izbor.tex, fixed=TRUE) - -tex.izbor <- c(tex.glava, izbor.tex, part$predmet, "\\newpage", tex.okvir, tex.noga) - - # Ker uporabljamo ukaz LONGTABLE, se pri lomljenju tabel pojavlja - - -if (sortByAverage) {sortiranjetext <- "po_povprecju"} else {sortiranjetext <- "po_imenih"} -setwd(paste(Rdirektorij, "Evalvacija/results", sep="/")) -#write.table(tex.izbor, file=paste0("Praksa_", sortiranjetext,"_", fakulteta, ".tex"), sep="\t",append=F) -cat(unlist(tex.izbor), file=paste0("Praksa_", sortiranjetext,"_", fakulteta, ".tex"), sep="\n") -#lapply(unlist(tex.izbor), write, file=paste0("Praksa_", sortiranjetext,"_", fakulteta, ".tex"), append=TRUE, ncolumns=1000) -tools::texi2pdf(file=paste0("Praksa_", sortiranjetext,"_", fakulteta, ".tex"), quiet=TRUE, clean=TRUE) -setwd(Rdirektorij) - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_trendi_habilitacijska.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_trendi_habilitacijska.R deleted file mode 100644 index d4f56f5d2..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/kodaPDF_trendi_habilitacijska.R +++ /dev/null @@ -1,2149 +0,0 @@ -# Najprej odpremo skiurpto koda-ID_predmetov.r, kjer zgneeriramo ustrezne csv datoteke po posameznih tudijskih letih in nato -# ocene za izvajalce in predmete po letih zdruimo v eno datoteko: d_izv in d_pre - - -#HABILITACIJSKA KOMISIJA VENDAR SAMO ENO LETO V STOLPCIH -##GLEJ VRSTICO 317 (itd.), kjer zberem samo eno vrstico, da so izpisi le za leto 2015 in ne tudi simulirani za 2016. - - -library("reshape2") # za pivotiranje podatkov -library("sqldf") # za manipulacijo s podatki -library("Hmisc") # za izpis tabel v latex -library("stringr") # za substring funkcijo -dodatkePoLetih <- FALSE # Ali naj vkljui trende ocen izvajalcev po letih (2008-2013) -Trendi <- F -KomisijaStudentskiSvet <- T # Ali naj naredi poroila le za Habilitacijsko komisijo in tudentski svet -pdfReporti <- TRUE # ali naj dela zamudne pdfje -options(nwarnings = 10000) -latexDatoteke <- FALSE # ali naj dela tudi latex datoteke za vkljuitev v semestrska poroila -vec.letne.serije <- c("3000021", "3000026") # Izpis skupnih povpreij FAKULTET, loimo veletne serije FGG in FDV od dveletnih serij ostlih fakultet -########################################################################################################## -# PREDPRIPRAVA PODATKOV -########################################################################################################## - -ID <- 3000050 # Ko se koda updejta na strenik ID zakomentiramo, saj ga Peter ne Potrebuje -fakulteta <- "" -if (ID == 3000001) { # here - fakulteta <- "PEF" # Purpose: Read CSV file which has "PEF" in the end of the file. - logo <- "logo_PEF" # na prvi strani PDF poroila doda usterzno sliko fakultete (logo uporabimo pri generiranju poroil glej koda-izvajalec_predmet.r) -} else if (ID == 3000004){ - fakulteta <- "FU" # Purpose: Read CSV file which has "FU" in the end of the file. - logo <- "logo_FU" # Logoi se nahajajo : latexkosi/logo/ -} else if (ID == 3000006){ - fakulteta <- "FSD" - logo <- "logo_FSD" -} else if (ID == 3000009){ - fakulteta <- "FPP" - logo <- "logo_FPP" -} else if (ID == 3000011){ - fakulteta <- "ZF" - logo <- "logo_ZF" -} else if (ID == 3000018){ - fakulteta <- "FF" - logo <- "logo_FF" -} else if (ID == 3000019){ - fakulteta <- "EF" - logo <- "logo_EF" -} else if (ID == 3000020){ - fakulteta <- "PF" - logo <- "logo_PF" -} else if (ID == 3000021){ - fakulteta <- "FDV" - logo <- "logo_FDV" -} else if (ID == 3000022){ - fakulteta <- "FSSS" - logo <- "logo_FSSS" -} else if (ID == 3000023){ - fakulteta <- "FS" - logo <- "logo_FSTR" -} else if (ID == 3000025){ - fakulteta <- "FA" - logo <- "logo_FA" -} else if (ID == 3000026){ - fakulteta <- "FGG" - logo <- "logo_FGG" -} else if (ID == 3000027){ - fakulteta <- "FMF" - logo <- "logo_FMF" -} else if (ID == 3000029){ - fakulteta <- "NTF" - logo <- "logo_NTF" -} else if (ID == 3000030){ - fakulteta <- "FKKT" - logo <- "logo_FKKT" -} else if (ID == 3000031){ - fakulteta <- "FFA" - logo <- "logo_FFARM" -} else if (ID == 3000037){ - fakulteta <- "VF" - logo <- "logo_VF" -} else if (ID == 3000041){ - fakulteta <- "MF" - logo <- "logo_MF" -} else if (ID == 3000042){ - fakulteta <- "ALUO" - logo <- "logo_ALU" -} else if (ID == 3000043){ - fakulteta <- "AG" - logo <- "logo_AG" -} else if (ID == 3000044){ - fakulteta <- "AGRFT" - logo <- "logo_AGRFT" -} else if (ID == 3000050){ - fakulteta <- "TEOF" - logo <- "logo_TEOF" -} else if (ID == 3000063){ - fakulteta <- "FRI" - logo <- "logo_FRI" -} else if (ID == 3000064){ - fakulteta <- "FE" - logo <- "logo_FE" -} else if (ID == 3000071){ - fakulteta <- "BF" - logo <- "logo_BF" -} else { - fakulteta <- "" -} -## //Opredelimo ID// ## - - - -## Preberi podatke ## - -# Izvajalci -d_izv <- read.csv2("output\\zdruzeno.izvajalci.csv", header = TRUE, sep = ";", stringsAsFactors = FALSE, dec = ",",fileEncoding = "CP1250" ) -d_izv$predmet.sifra <- gsub("_.*", "",d_izv$predmet.sifra) -if (ID==3000021) { - d_izv$izvajalec.sifra <- gsub("3000021_FDV_","",d_izv$izvajalec.sifra) - d_izv$izvajalec.sifra<- paste0("3000021_FDV_",d_izv$izvajalec.sifra) -} -if (ID==3000026) { - d_izv$izvajalec.sifra <- gsub("3000026_FGG_","",d_izv$izvajalec.sifra) - d_izv$izvajalec.sifra<- paste0("3000026_FGG_",d_izv$izvajalec.sifra) -} -d_izv$SEMESTER_IZV <- gsub("1", "I",d_izv$SEMESTER_IZV) -d_izv$SEMESTER_IZV <- gsub("2", "II",d_izv$SEMESTER_IZV) -d_izv$SEMESTER_IZV <- gsub("3", "III",d_izv$SEMESTER_IZV) -d_izv$SEMESTER_IZV <- gsub("prvi semester", "I",d_izv$SEMESTER_IZV) -d_izv$SEMESTER_IZV <- gsub("drugi semester", "II",d_izv$SEMESTER_IZV) -d_izv$SEMESTER_IZV <- gsub("celoletni", "III",d_izv$SEMESTER_IZV) -d_izv$SEMESTER_IZV <- gsub("zimski", "I",d_izv$SEMESTER_IZV) -d_izv$SEMESTER_IZV <- gsub("letni", "II",d_izv$SEMESTER_IZV) - -# Predmeti (anketa PRED in PO) -d_pre <- read.csv2("output\\zdruzeno.predmeti.csv", header = TRUE, sep = ";", stringsAsFactors = FALSE, dec = ",",fileEncoding = "CP1250") -d_pre$predmet.sifra <- gsub("_.*", "",d_pre$predmet.sifra) -if (ID==3000021) { - d_pre$IDPEDAGOGA <- gsub("3000021_FDV_","",d_pre$IDPEDAGOGA) - d_pre$IDPEDAGOGA<- paste0("3000021_FDV_",d_pre$IDPEDAGOGA) -} - -d_pre$SEMESTER_IZV <- gsub("1", "I",d_pre$SEMESTER_IZV) -d_pre$SEMESTER_IZV <- gsub("2", "II",d_pre$SEMESTER_IZV ) -d_pre$SEMESTER_IZV <- gsub("3", "III",d_pre$SEMESTER_IZV ) -d_pre$SEMESTER_IZV <- gsub("prvi semester", "I",d_pre$SEMESTER_IZV ) -d_pre$SEMESTER_IZV <- gsub("drugi semester", "II",d_pre$SEMESTER_IZV ) -d_pre$SEMESTER_IZV <- gsub("celoletni", "III",d_pre$SEMESTER_IZV ) -d_pre$SEMESTER_IZV <- gsub("zimski", "I",d_pre$SEMESTER_IZV) -d_pre$SEMESTER_IZV <- gsub("letni", "II",d_pre$SEMESTER_IZV) -## //Preberi podatke// ## - -names(d_pre) <- gsub("","c",names(d_pre)) -#d_pre$predmet.sifra <- d_izv$predmet.sifra[match(d_pre$ime.predmeta,d_izv$ime.predmeta)] - -#d_izv$predmet.sifra <- d_pre$predmet.sifra[match(d_izv$ime.predmeta,d_pre$ime.predmeta)] - - -# FACULTY AVERAGES # -## OCENE KOMPONENT PREDMETOV (poglavje 1.2) -# PREDMETI -# IZVAJALCI PRI PREDMETIH -# Ker smo k povprejem izvajalcev vkljuili tudi komentarje izvajalcev pride do podvajanja ocen in -# napanega raunanja. Zato vse podvojene vrednosti pri spodnjih stolpcih odstranimo. - - -FDVpredmetiPREDPO <- d_pre[!duplicated( d_pre[ c("predmet.sifra" , "predmet.ocena.zadovoljstvo_mean","predmet.ocena.usklajenost_mean", - "predmet.ocena.samostojnost_mean","predmet.ocena.literatura_mean", - "predmet.ocena.obvescenost_mean","predmet.ocena.informiranost_mean", - "predmet.ocena.znanje_mean","predmet.ocena.vsebine_mean","predmet.ocena.naloge_mean", - "predmet.ocena.kriteriji_mean", "predmet.ocena.krediti_mean", "predmet.ocena.kompetence_mean")]), ] - - -FDVpredmetiPRED2014.2015 <- rbind(colMeans(unique(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto=="2014-15",c("predmet.ocena.zadovoljstvo_mean", - "predmet.ocena.usklajenost_mean", - "predmet.ocena.samostojnost_mean", - "predmet.ocena.literatura_mean", - "predmet.ocena.obvescenost_mean", - "predmet.ocena.informiranost_mean", - "predmet.ocena.znanje_mean")]), na.rm=T)) - -FDVpredmetiPRED2014.2015 <- t(FDVpredmetiPRED2014.2015) -FDVpredmetiPRED2014.2015 <- round(mean(FDVpredmetiPRED2014.2015), 1) - - - -FDVpredmetiPRED2015.2016 <- rbind(colMeans(unique(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto=="2015-16",c("predmet.ocena.zadovoljstvo_mean", - "predmet.ocena.usklajenost_mean", - "predmet.ocena.samostojnost_mean", - "predmet.ocena.literatura_mean", - "predmet.ocena.obvescenost_mean", - "predmet.ocena.informiranost_mean", - "predmet.ocena.znanje_mean")]), na.rm=T)) - -FDVpredmetiPRED2015.2016 <- t(FDVpredmetiPRED2015.2016) -FDVpredmetiPRED2015.2016 <- round(mean(FDVpredmetiPRED2015.2016), 1) - - -FDVpredmetiPRED2016.2017 <- rbind(colMeans(unique(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto=="2016-17",c("predmet.ocena.zadovoljstvo_mean", - "predmet.ocena.usklajenost_mean", - "predmet.ocena.samostojnost_mean", - "predmet.ocena.literatura_mean", - "predmet.ocena.obvescenost_mean", - "predmet.ocena.informiranost_mean", - "predmet.ocena.znanje_mean")]), na.rm=T)) - -FDVpredmetiPRED2016.2017 <- t(FDVpredmetiPRED2016.2017) -FDVpredmetiPRED2016.2017 <- round(mean(FDVpredmetiPRED2016.2017), 1) - - -FDVpredmetiPRED <- c(FDVpredmetiPRED2014.2015, FDVpredmetiPRED2015.2016, FDVpredmetiPRED2016.2017) -FDVpredmetiPRED <- FDVpredmetiPRED[!is.nan(FDVpredmetiPRED)] - - - - - -FDVpredmetiPO2014.2015 <- rbind(colMeans(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2014-15", - c("predmet.ocena.vsebine_mean", - "predmet.ocena.naloge_mean", - "predmet.ocena.kriteriji_mean")], na.rm=T)) -FDVpredmetiPO2014.2015 <- t(FDVpredmetiPO2014.2015) -FDVpredmetiPO2014.2015 <- round(mean(FDVpredmetiPO2014.2015), 1) - - - -FDVpredmetiPO2015.2016 <- rbind(colMeans(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2015-16", - c("predmet.ocena.vsebine_mean", - "predmet.ocena.naloge_mean", - "predmet.ocena.kriteriji_mean")], na.rm=T)) -FDVpredmetiPO2015.2016 <- t(FDVpredmetiPO2015.2016) -FDVpredmetiPO2015.2016 <- round(mean(FDVpredmetiPO2015.2016), 1) - - -FDVpredmetiPO2016.2017 <- rbind(colMeans(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2016-17", - c("predmet.ocena.vsebine_mean", - "predmet.ocena.naloge_mean", - "predmet.ocena.kriteriji_mean")], na.rm=T)) -FDVpredmetiPO2016.2017 <- t(FDVpredmetiPO2016.2017) -FDVpredmetiPO2016.2017 <- round(mean(FDVpredmetiPO2016.2017), 1) - -FDVpredmetiPO <- c(FDVpredmetiPO2014.2015, FDVpredmetiPO2015.2016, FDVpredmetiPO2016.2017) -FDVpredmetiPO <- FDVpredmetiPO[!is.nan(FDVpredmetiPO)] - - -FDVpredmetiKrediti2014.2015 <- rbind(mean(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2014-15", c("predmet.ocena.krediti_mean")] ,na.rm=T)) -FDVpredmetiKrediti2014.2015 <- round(mean(FDVpredmetiKrediti2014.2015), 1) -FDVpredmetiKrediti2015.2016 <- rbind(mean(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2015-16", c("predmet.ocena.krediti_mean")] ,na.rm=T)) -FDVpredmetiKrediti2015.2016 <- round(mean(FDVpredmetiKrediti2015.2016), 1) -FDVpredmetiKrediti2016.2017 <- rbind(mean(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2016-17", c("predmet.ocena.krediti_mean")] ,na.rm=T)) -FDVpredmetiKrediti2016.2017 <- round(mean(FDVpredmetiKrediti2016.2017), 1) - -FDVpredmetiKrediti <- c(FDVpredmetiKrediti2014.2015,FDVpredmetiKrediti2015.2016, FDVpredmetiKrediti2016.2017 ) -FDVpredmetiKrediti <- FDVpredmetiKrediti[!is.nan(FDVpredmetiKrediti)] - - -FDVpredmetikompetence2014.2015 <- rbind(mean(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2014-15", c("predmet.ocena.kompetence_mean")] ,na.rm=T)) -FDVpredmetikompetence2014.2015 <- round(mean(FDVpredmetikompetence2014.2015), 1) -FDVpredmetikompetence2015.2016 <- rbind(mean(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2015-16", c("predmet.ocena.kompetence_mean")] ,na.rm=T)) -FDVpredmetikompetence2015.2016 <- round(mean(FDVpredmetikompetence2015.2016), 1) -FDVpredmetikompetence2016.2017 <- rbind(mean(FDVpredmetiPREDPO[FDVpredmetiPREDPO$leto == "2016-17", c("predmet.ocena.kompetence_mean")] ,na.rm=T)) -FDVpredmetikompetence2016.2017 <- round(mean(FDVpredmetikompetence2016.2017), 1) - -FDVpredmetikompetence <- c(FDVpredmetikompetence2014.2015, FDVpredmetikompetence2015.2016, FDVpredmetikompetence2016.2017) -FDVpredmetikompetence <- FDVpredmetikompetence[!is.nan(FDVpredmetikompetence)] - - -#IZVAJALCI PRI PREDMETIH -# Ker smo k povprejem izvajalcev vkljuili tudi komentarje izvajalcev pride do podvajanja ocen in napanega raunanja. Zato vse podvojene vrednosti pri spodnjih stolpcih odstranimo. -FDV_brez_podvojenih <- d_izv[ ! duplicated( d_izv[ c("predmet.sifra" , "izvajalec.ocena.kakovost_mean","izvajalec.ocena.pripravljenost_mean", - "izvajalec.ocena.razumljivost_mean","izvajalec.ocena.zanimivost_mean", - "izvajalec.ocena.kriticnost_mean","izvajalec.ocena.korektnost_mean") ] ), ] - -FDVizvajalci <- rbind(skupaj=colMeans(FDV_brez_podvojenih[c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], na.rm=T), - "1"=colMeans(FDV_brez_podvojenih[FDV_brez_podvojenih$STOPNJA==1, c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], na.rm=T), - "2"=colMeans(FDV_brez_podvojenih[FDV_brez_podvojenih$STOPNJA==2, c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], na.rm=T)) - -FDVizvajalci_14.15 <- rbind(colMeans(FDV_brez_podvojenih[FDV_brez_podvojenih$leto=="2014-15",c("izvajalec.ocena.kakovost_mean", - "izvajalec.ocena.pripravljenost_mean", - "izvajalec.ocena.razumljivost_mean", - "izvajalec.ocena.zanimivost_mean", - "izvajalec.ocena.kriticnost_mean", - "izvajalec.ocena.korektnost_mean")], na.rm=T)) - -FDVizvajalci_14.15 <- t(FDVizvajalci_14.15) -FDVizvajalci_14.15 <- round(mean(FDVizvajalci_14.15),1) - - -FDVizvajalci_15.16 <- rbind(colMeans(FDV_brez_podvojenih[FDV_brez_podvojenih$leto=="2015-16",c("izvajalec.ocena.kakovost_mean", - "izvajalec.ocena.pripravljenost_mean", - "izvajalec.ocena.razumljivost_mean", - "izvajalec.ocena.zanimivost_mean", - "izvajalec.ocena.kriticnost_mean", - "izvajalec.ocena.korektnost_mean")], na.rm=T)) -FDVizvajalci_15.16 <- t(FDVizvajalci_15.16) -FDVizvajalci_15.16 <- round(mean(FDVizvajalci_15.16),1) - - -FDVizvajalci_16.17 <- rbind(colMeans(FDV_brez_podvojenih[FDV_brez_podvojenih$leto=="2016-17",c("izvajalec.ocena.kakovost_mean", - "izvajalec.ocena.pripravljenost_mean", - "izvajalec.ocena.razumljivost_mean", - "izvajalec.ocena.zanimivost_mean", - "izvajalec.ocena.kriticnost_mean", - "izvajalec.ocena.korektnost_mean")], na.rm=T)) -FDVizvajalci_16.17 <- t(FDVizvajalci_16.17) -FDVizvajalci_16.17 <- round(mean(FDVizvajalci_16.17),1) - - -FDVizvajalci <- c(FDVizvajalci_14.15,FDVizvajalci_15.16,FDVizvajalci_16.17) -FDVizvajalci <- FDVizvajalci[complete.cases(FDVizvajalci) ] -# /FACULTY AVERAGES/ # - - - -# Dodamo oklepaje pred vrednosti ki so manje kot smo opredelili v Metodolokih pojasnilih -# Oklepaji k komponentam izvajalca -# tevilo odgovorov -d_izv$N_anket <- ifelse(!is.na( d_izv$N_anket) & d_izv$N_anket < 5, paste0( " ((", d_izv$N_anket,"))"), - ifelse(!is.na( d_izv$N_anket) & d_izv$N_anket < 10, paste0( " (", d_izv$N_anket,")"), d_izv$N_anket)) -# tevilo vpisanih -d_izv$ST_STUD<- ifelse(!is.na(d_izv$ST_STUD) & d_izv$ST_STUD < 5, paste0( " ((", d_izv$ST_STUD,"))"), - ifelse(!is.na(d_izv$ST_STUD) & d_izv$ST_STUD < 10, paste0( " (", d_izv$ST_STUD,")"), d_izv$ST_STUD)) - - -# Oklepaji k komponentam predmeta (ANKETA PRED IN ANKETA PO IZPITU) -# tevilo odgovorov PRED IZPITOM -d_pre$N_anket <- ifelse(!is.na( d_pre$N_anket) & d_pre$N_anket < 5, paste0( " ((", d_pre$N_anket,"))"), - ifelse(!is.na( d_pre$N_anket) & d_pre$N_anket < 10, paste0( " (", d_pre$N_anket,")"), d_pre$N_anket)) -# tevilo odgovorov PO izpitu -d_pre$N_anket_po_izpitu <- ifelse(!is.na( d_pre$N_anket_po_izpitu) & d_pre$N_anket_po_izpitu < 5, paste0( " ((", d_pre$N_anket_po_izpitu,"))"), - ifelse(!is.na( d_pre$N_anket_po_izpitu) & d_pre$N_anket_po_izpitu < 10, paste0( " (", d_pre$N_anket_po_izpitu,")"), d_pre$N_anket_po_izpitu)) -# tevilo vpisanih -d_pre$ST_STUD <- ifelse(!is.na( d_pre$ST_STUD) & d_pre$ST_STUD < 5, paste0( " ((", d_pre$ST_STUD,"))"), - ifelse(!is.na( d_pre$ST_STUD) & d_pre$ST_STUD < 10, paste0( " (", d_pre$ST_STUD,")"), d_pre$ST_STUD)) - -##POVPREJE FDV (dodatne vrstice v poglavju 1.1 Ocene predmetov) -#Anketa PRED izpitom -predmet.ocena.SKUPAJ.FDV <- mean(d_pre$"predmet.ocena.SKUPAJ.pred", na.rm=TRUE) -d_pre$predmet.ocena.SKUPAJ.FDV <- as.character(predmet.ocena.SKUPAJ.FDV) - - -#Anketa PO izpitu -predmet.ocena.SKUPAJ.FDV.po <- mean(d_pre$"predmet.ocena.SKUPAJ.po", na.rm=TRUE) -d_pre$predmet.ocena.SKUPAJ.FDV.po <- as.character(predmet.ocena.SKUPAJ.FDV.po) - -##Ustreznost kreditnih tok -predmet.ocena.SKUPAJ.FDV.krediti <- mean(d_pre$"predmet.ocena.krediti_mean", na.rm=TRUE) -d_pre$predmet.ocena.SKUPAJ.FDV.krediti <- as.character(predmet.ocena.SKUPAJ.FDV.krediti) - - -##Kompetence -predmet.ocena.SKUPAJ.FDV.kompetence <- mean(d_pre$"predmet.ocena.kompetence_mean", na.rm=TRUE) -d_pre$predmet.ocena.SKUPAJ.FDV.kompetence <- as.character(predmet.ocena.SKUPAJ.FDV.kompetence) - - -#izvajalec pri predmetih -izvajalec.ocena.SKUPAJ.FDV <- mean(d_izv$"izvajalec.ocena.SKUPAJ", na.rm=TRUE) -d_izv$izvajalec.ocena.SKUPAJ.FDV <- as.character(izvajalec.ocena.SKUPAJ.FDV) -##// POVPREJE FDV //## - - -## Konvertiraj tevilske in besedilne tipe ## -##IZVAJALCI PRI PREDMETIH -d_izv$sifra.izvajalca <- as.character(d_izv$izvajalec.sifra) -d_izv$sifra.predmeta <- as.character(d_izv$predmet.sifra) -d_izv$nova.sifra.predmeta <- as.character(d_izv$nova.sifra.predmeta) -d_izv$izvajalec.ocena.kakovost <- type.convert(as.character(d_izv$izvajalec.ocena.kakovost_mean), na.strings=c(".","-"), dec=",") -d_izv$izvajalec.ocena.pripravljenost <- type.convert(as.character(d_izv$izvajalec.ocena.pripravljenost_mean), na.strings=c(".","-"), dec = ",") -d_izv$izvajalec.ocena.razumljivost <- type.convert(as.character(d_izv$izvajalec.ocena.razumljivost_mean), na.strings=c(".","-"), dec = ",") -d_izv$izvajalec.ocena.zanimivost <- type.convert(as.character(d_izv$izvajalec.ocena.zanimivost_mean), na.strings=c(".","-"), dec = ",") -d_izv$izvajalec.ocena.kriticnost <- type.convert(as.character(d_izv$izvajalec.ocena.kriticnost_mean), na.strings=c(".","-"), dec = ",") -d_izv$izvajalec.ocena.korektnost <- type.convert(as.character(d_izv$izvajalec.ocena.korektnost_mean), na.strings=c(".","-"), dec = ",") -d_izv$povpreje.ocen <- type.convert(as.character(d_izv$izvajalec.ocena.SKUPAJ), na.strings=c(".","-"), dec = ",") -d_izv$izvajalec.ocena.SKUPAJ.FDV <- type.convert(as.character(d_izv$izvajalec.ocena.SKUPAJ.FDV), na.strings=c(".","-"), dec = ",") -##PREDMETI -#ANKETA PRED IZPITOM -d_pre$sifra <- as.character(d_pre$predmet.sifra) -d_pre$nova.sifra <- as.character(d_pre$nova.sifra) -d_pre$predmet.ocena.zadovoljstvo <- type.convert(as.character(d_pre$predmet.ocena.zadovoljstvo_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.usklajenost <- type.convert(as.character(d_pre$predmet.ocena.usklajenost_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.samostojnost <- type.convert(as.character(d_pre$predmet.ocena.samostojnost_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.literatura <- type.convert(as.character(d_pre$predmet.ocena.literatura_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.obvescenost <- type.convert(as.character(d_pre$predmet.ocena.obvescenost_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.informiranost <- type.convert(as.character(d_pre$predmet.ocena.informiranost_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.preverjanje <- type.convert(as.character(d_pre$predmet.ocena.znanje_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.preverjanje <- type.convert(as.character(d_pre$predmet.ocena.znanje_mean), na.strings=c(".","-"), dec = ",") -d_pre$povpreje.ocen.PRED <- type.convert(as.character(d_pre$predmet.ocena.SKUPAJ.pred), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.SKUPAJ.FDV <- type.convert(as.character(d_pre$predmet.ocena.SKUPAJ.FDV), na.strings=c(".","-"), dec = ",") - -#ANKETA PO -d_pre$predmet.ocena.kompetence <- type.convert(as.character(d_pre$predmet.ocena.kompetence_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.vsebine <- type.convert(as.character(d_pre$predmet.ocena.vsebine_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.naloge <- type.convert(as.character(d_pre$predmet.ocena.naloge_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.ocenjevanje <- type.convert(as.character(d_pre$predmet.ocena.kriteriji_mean), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.krediti <- type.convert(as.character(d_pre$predmet.ocena.krediti_mean), na.strings=c(".","-"), dec = ",") -d_pre$povpreje.ocen.PO <- type.convert(as.character(d_pre$predmet.ocena.SKUPAJ.po), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.SKUPAJ.FDV.po <- type.convert(as.character(d_pre$predmet.ocena.SKUPAJ.FDV.po), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.SKUPAJ.FDV.krediti <- type.convert(as.character(d_pre$predmet.ocena.SKUPAJ.FDV.krediti), na.strings=c(".","-"), dec = ",") -d_pre$predmet.ocena.SKUPAJ.FDV.kompetence <- type.convert(as.character(d_pre$predmet.ocena.SKUPAJ.FDV.kompetence), na.strings=c(".","-"), dec = ",") - -## //Konvertiraj tevilske in besedilne tipe// ## - - - - -# Dodaj stolpce nacini, izvedbe in pojavitve_imena_v_letu iz d_pre v d_izv -#d_izv <- sqldf("select d_izv.*, d_pre.izvedbe, d_pre.nacini, d_pre.pojavitve_imena_v_letu from d_izv, d_pre where d_pre.sifra = d_izv.sifra_predmeta") -#d_izv$izvedbe <- sapply(1:nrow(d_izv), function(i) d_pre$izvedbe[d_pre$sifra==d_izv$sifra.predmeta[i]]) -#d_izv$nacini <- sapply(1:nrow(d_izv), function(i) d_pre$nacini[d_pre$sifra==d_izv$sifra.predmeta[i]]) -#d_izv$pojavitve.imena.v.letu <- sapply(1:nrow(d_izv), function(i) d_pre$pojavitve.imena.v.letu[d_pre$sifra==d_izv$sifra.predmeta[i]]) - -# Dobi unikatne izvajalce po sifra.izvajalec. -# Vzame ime iz zadnjega tudijskega leta, da dobi najnoveji naziv izvajalca -#un_izv <- sqldf("select distinct sifra_izvajalca, ime from d_izv where leto = (select sifra_izvajalca, max(leto) from d_izv group by sifra_izvajalca)") - -#Ker ima funkcija SQLDF teave z branjem stolpcev kjer nastopa ".", jih preimenujemo tako, da dodamo podrtaj "_". -colnames(d_izv) <- gsub("\\.","_",colnames(d_izv)) -colnames(d_pre) <- gsub("\\.","_",colnames(d_pre)) - -##K PREDMETOM dodamo ifro izvajalca -# if (ID==3000021){ -# d_pre2 <- merge(d_izv[c("izvajalec_sifra","predmet_sifra","NAZIV_PEDAGOGA","ime_predmeta","leto")],d_pre, -# by.x=c("ime_predmeta","leto","NAZIV_PEDAGOGA"), by.y=c("ime_predmeta","leto","NAZIV_PEDAGOGA"), all=T,sort=FALSE) -# } else {d_pre <- merge(d_izv[c("izvajalec_sifra","predmet_sifra","NAZIV_PEDAGOGA")],d_pre, -# by.x=c("predmet_sifra","leto"), by.y=c("predmet_sifra","leto"), all=TRUE,sort=FALSE)} -if (ID != 3000021){ -d_pre <- merge(d_izv[c("izvajalec_sifra","predmet_sifra","NAZIV_PEDAGOGA","leto")],d_pre, - by.x=c("predmet_sifra","leto"), by.y=c("predmet_sifra","leto"), all=TRUE,sort=FALSE) -} -d_pre$ime_predmeta <- paste0(d_pre$ime_predmeta, " (",d_pre$predmet_sifra,")") -d_izv$ime_predmeta <- paste0(d_izv$ime_predmeta, " (",d_izv$predmet_sifra,")") - - -d_pre$ime_predmeta <- paste0(d_pre$ime_predmeta, " (",d_pre$SEMESTER_IZV,")") -d_izv$ime_predmeta <- paste0(d_izv$ime_predmeta, " (",d_izv$SEMESTER_IZV,")") -d_pre$ime_predmeta1 <- ifelse(grepl("strokovni jezik",d_pre$ime_predmeta), paste0(d_pre$ime_predmeta, " (",d_pre$predmet_sifra,")"),d_pre$ime_predmeta) -d_pre$ime_predmeta <- d_pre$ime_predmeta1 -#d_izv$ime_predmeta <- paste0(d_izv$ime_predmeta, " (",d_izv$predmet_sifra,")") -d_izv$ime_predmeta1 <- ifelse(grepl("strokovni jezik",d_izv$ime_predmeta), paste0(d_izv$ime_predmeta, " (",d_izv$predmet_sifra,")"),d_izv$ime_predmeta) -d_izv$ime_predmeta <- d_izv$ime_predmeta1 -if (ID==3000021){ -colnames(d_pre)[colnames(d_pre)=="predmet_sifra.x"] <- "predmet_sifra" -} -#Izberemo ime izvajalca, sifro izvajalca, in najnoveje leto ter grupiramo po ifri izvajalca -un_izv <- sqldf("select NAZIV_PEDAGOGA, sifra_izvajalca, max(leto) from d_izv group by sifra_izvajalca") - - -# Skrajamo zapis tudijskih let. Verjetno bi se dalo bolj optimalno, ampak za zdaj bo ok -d_pre$leto <- str_replace(str_sub(d_pre$leto,-5),"-","/") -d_izv$leto <- str_replace(str_sub(d_izv$leto,-5),"-","/") - -# Dobi zadnjih 5 unikatnih t. let, razvrene od najstarejega do najnovejega -#leta <- sqldf("select leto from (select distinct leto from d_izv order by leto desc limit 5) order by leto") -leta <- sqldf("select leto from (select distinct leto from d_izv order by leto desc) order by leto") - -# Za arhiv -#d_izv <- sqldf("select d_izv.*, ime_1||' - '||izvedbe||' - '||nacini as predmet_izvedba from d_izv") -#d_pre <- sqldf("select d_pre.*, ime||' - '||izvedbe||' - '||nacini as predmet_izvedba from d_pre") -pojasnilo.komisija <- paste0("V tabeli 1.1 so prikazana povpreja za agregirane ocene estih komponent na lestvici 1-5 - (podrobne ocene komponent so v pregledu po predmetih v poglavju 2). \\newline \\newline Identitete predmetov - temeljijo na njihovi administrativni ifri (in ne na imenu); pri spremembah - imen se upoteva zadnje poimenovanje. Oznaka I oziroma II pomeni semester. \\newline \\newline - Izrauni, ki temeljijo na manj kot 4 enotah, niso prikazani, in so oznaeni s simbolom \\guillemotright.\\guillemotleft. - V primeru, da izvajalec v doloenem letu pri predmetu ni sodeloval ali pa - se predmet ni izvajal, je to oznaeno s simbolom \\guillemotright--\\guillemotleft. \\newline \\newline - Podrobneji vpogled v kakovost posamezne ocene je v odgovarjajoem letnem poroilu izvajalca. - Ostale metodoloke podrobnosti in vpraalniki so na koncu poroila in na \\url{http://ul.1ka.si/metodologija}. ") - -pojasnilo.trendi <- paste0("V tabelah so prikazana povpreja za agregirane ocene na lestvici 1-5 - (podrobne ocene komponent so v pregledu po predmetih v poglavju 2). \\newline \\newline Identitete predmetov - temeljijo na njihovi administrativni ifri (in ne na imenu); pri spremembah - imen se upoteva zadnje poimenovanje. Oznaka I oziroma II pomeni semester. \\newline \\newline - Izrauni, ki temeljijo na manj kot 4 enotah, niso prikazani, in so oznaeni s simbolom \\guillemotright.\\guillemotleft. - V primeru, da izvajalec v doloenem letu pri predmetu ni sodeloval ali pa - se predmet ni izvajal, je to oznaeno s simbolom \\guillemotright--\\guillemotleft. \\newline \\newline - Podrobneji vpogled v kakovost posamezne ocene je v odgovarjajoem letnem poroilu. - Ostale metodoloke podrobnosti in vpraalniki so na koncu poroila in na \\url{http://ul.1ka.si/metodologija}. ") -# Se bo morda uporabljajo kasneje na ve podatkih za preverjanje -#d_izv <- sqldf("select -# predmet_izvedba, idx, leto, sifra_izvajalca, ime, -# max(n_vpisanih) as n_vpisanih, -# max(n_sodelujocih_jepouceval) as n_sodelujocih, -# max(pct_sodelujocih_jepouceval) as pct_sodelujocih, -# max(izvajalec_ocena_kakovost) as izvajalec_ocena_kakovost, -# max(izvajalec_ocena_razprave) as izvajalec_ocena_razprave, -# max(izvajalec_ocena_odnos) as izvajalec_ocena_odnos, -# max(povpreje_ocen) as povpreje_ocen, -# count(*) -# from d_izv -# group by predmet_izvedba, idx, leto, sifra_izvajalca, ime") - -#preberemo za generiranje pdf reportov -if (pdfReporti & KomisijaStudentskiSvet) { - tex.glava <- scan('latexkosi/a-glava-komisija.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') - tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) # Logo fakultete - tex.noga <- scan('latexkosi/z-noga.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') -} else if (pdfReporti) { - tex.glava <- scan('latexkosi/a-glava.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') - tex.glava <- gsub(pattern='!logo!', replacement = Hmisc::latexTranslate(logo), x = tex.glava) # Logo fakultete - tex.noga <- scan('latexkosi/z-noga.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') -} - -if (latexDatoteke) { - dir.create('output/latexDatoteke', showWarnings=FALSE) -} -if (Trendi) { - dir.create('output', showWarnings=FALSE) - ##V primeru, da elimo dodatni kakna pojasnila, itd. - tex.pojasnilo <- scan('latexkosi/metod.pojasnilo_trendi.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') - Rdirektorij <- getwd() -} else if (pdfReporti|latexDatoteke) { - dir.create('output', showWarnings=FALSE) - ##V primeru, da elimo dodatni kakna pojasnila, itd. - tex.pojasnilo <- scan('latexkosi/metod.pojasnilo_habilit.tex', character(0), sep='\n', quiet=TRUE, encoding='UTF-8') - Rdirektorij <- getwd() -} - -### ZAASNO KER IMAM TAVE PRI GENERIRANJU POROIL ZA OMENJENA IZVAJALCA ## -if (ID==3000021){ -un_izv <- subset(un_izv,sifra_izvajalca !="3000021_FDV_300" & sifra_izvajalca !="3000021_FDV_1293" & sifra_izvajalca !="3000021_FDV_336" & sifra_izvajalca !="3000021_FDV_765" & sifra_izvajalca !="3000021_FDV_99" & sifra_izvajalca !="3000021_FDV_NA") -un_izv$sifra_izvajalca <- gsub("3000021_FDV_47 ","3000021_FDV_47",un_izv$sifra_izvajalca) -} -## - -# PRAKSO IZPISUJEMO POSEBEJ: SVOJE POGLAVJE (ne elimo ocen predmetov, ki vsebujejo prakso tudi v poroilu predmeta) -if (ID==3000021){ -d_pre$izvajalec_sifra=d_pre$IDPEDAGOGA -} -d_pre_brez_praks <- subset(d_pre, PRAKSA == 0) -d_izv_brez_praks <- subset(d_izv, PRAKSA == 0) - - -if (ID==3000030 | ID==3000011) { # FKKT ima znake pri imenih predmetov kar zmoti latex in ne naredi kazala - d_izv$ime_predmeta <- gsub('', '-', d_izv$ime_predmeta, fixed=T) - d_pre$ime_predmeta <- gsub('', '-', d_pre$ime_predmeta, fixed=T) - d_pre_brez_praks$ime_predmeta <- gsub('', '-', d_pre_brez_praks$ime_predmeta, fixed=T) - d_pre$ime_predmeta <- gsub('_', ' ', d_pre$ime_predmeta, fixed=T) - d_izv$ime_predmeta <- gsub('_', ' ', d_izv$ime_predmeta, fixed=T) - d_pre_brez_praks$ime_predmeta <- gsub('_', ' ', d_pre_brez_praks$ime_predmeta, fixed=T) - d_izv_brez_praks$ime_predmeta <- gsub('_', ' ', d_izv_brez_praks$ime_predmeta, fixed=T) -} else if (ID==3000027) { - d_pre$ime_predmeta <- gsub('_', '\\_', d_pre$ime_predmeta, fixed=T) - d_izv$ime_predmeta <- gsub('_', '\\_', d_izv$ime_predmeta, fixed=T) - d_izv$ime_predmeta <- gsub('', '-', d_izv$ime_predmeta, fixed=T) - d_pre$ime_predmeta <- gsub('', '-', d_pre$ime_predmeta, fixed=T) - d_pre_brez_praks$ime_predmeta <- gsub('', '-', d_pre_brez_praks$ime_predmeta, fixed=T) - d_pre_brez_praks$ime_predmeta <- gsub('_', '\\_', d_pre_brez_praks$ime_predmeta, fixed=T) - } - -d_pre$ime_predmeta <- gsub('&', '\\&', d_pre$ime_predmeta , fixed=T) -d_izv$ime_predmeta <- gsub('&', '\\&', d_izv$ime_predmeta, fixed=T) -d_pre_brez_praks$ime_predmeta <- gsub('&', '\\&', d_pre_brez_praks$ime_predmeta, fixed=T) -########################################################################################################## -# GLAVNA ZANKA PO IZVAJALCIH ZA GENERIRANJE TABEL & GRAFOV -########################################################################################################## -for (izv in un_izv$sifra_izvajalca[!is.na(un_izv$sifra_izvajalca)]) { - #izv="300" - # Filtriraj podatke glede na izvajalca, izberi spremeljivke in fiksiraj tabele na zadnjih 5 let - dd_pre <- d_pre_brez_praks[vapply(d_pre_brez_praks$izvajalec_sifra,function(x){izv %in% (x)}, FUN.VALUE=TRUE),] - dd_po <- d_pre_brez_praks[vapply(d_pre_brez_praks$izvajalec_sifra,function(x){izv %in% (x)}, FUN.VALUE=TRUE),] - dd_praksa <- d_pre[vapply(d_pre$izvajalec_sifra,function(x){izv %in% (x)}, FUN.VALUE=TRUE),] - dd_izv <- d_izv_brez_praks[d_izv_brez_praks$sifra_izvajalca==izv,] - - #e enkrat preimenujemo stolpce zaradi funkcije sqldf - colnames(dd_pre) <- gsub("\\.","_",colnames( dd_pre)) - colnames(dd_po) <- gsub("\\.","_",colnames( dd_po)) - #preveri predmete glede na pojavljanje v semestrih - #chk <- sqldf("select NAZIV_PEDAGOGA from (select NAZIV_PEDAGOGA, leto, count(*) as cnt from dd_pre where pojavitve_imena_v_letu = 2 group by ime, leto) group by ime having max(cnt)<2") - chk_dd_pre <- sqldf("select ime_predmeta from (select ime_predmeta, leto, count(*) as cnt from dd_pre where pojavitve_imena_v_letu = 2 group by ime_predmeta, leto) group by ime_predmeta having max(cnt)>1") - - if(nrow(chk_dd_pre)==0){ - dd_pre["predmet.izvedba"] <- dd_pre$ime_predmeta - dd_po["predmet.izvedba"] <- dd_po$ime_predmeta - dd_praksa["predmet.izvedba"] <- dd_praksa$ime_predmeta - dd_izv["predmet.izvedba"] <- dd_izv$ime_predmeta - }else{ - nova_imena.predmetov <- apply(dd_pre,1,function(x){if(x["ime_predmeta"] %in% chk_dd_pre$ime_predmeta){paste(x["ime_predmeta"],sep=" - ")}else{x["ime_predmeta"]}}) - nova_imena.izvajalcev <- apply(dd_izv,1,function(x){if(x["ime_predmeta"] %in% chk_dd_pre$ime_predmeta){paste(x["ime_predmeta"],sep=" - ")}else{x["ime_predmeta"]}}) - dd_pre["predmet.izvedba"] <- nova_imena.predmetov - dd_po["predmet.izvedba"] <- nova_imena.predmetov - dd_praksa["predmet.izvedba"] <- nova_imena.predmetov - dd_izv["predmet.izvedba"] <- nova_imena.izvajalcev - } - - #Anketa PRED izpitom - colnames(dd_pre) <- gsub("\\.","_",colnames( dd_pre)) - dd_pre <- sqldf("select leta.leto, izvajalec_sifra, NAZIV_PEDAGOGA, - N_anket, sodelujocih_pct, zavrnjenih_pct, ST_STUD, - nova_sifra as nova_sifra_predmeta,predmet_izvedba, - predmet_ocena_zadovoljstvo_mean,predmet_ocena_usklajenost_mean, - predmet_ocena_samostojnost_mean,predmet_ocena_literatura_mean, - predmet_ocena_obvescenost_mean,predmet_ocena_informiranost_mean, - predmet_ocena_znanje_mean, predmet_ocena_SKUPAJ_pred, - predmet_ocena_SKUPAJ_FDV - from leta left outer join dd_pre on (leta.leto = dd_pre.leto)") - - - #Anketa PO izpitu - colnames( dd_po) <- gsub("\\.","_",colnames( dd_po)) - dd_po <- sqldf("select leta.leto, izvajalec_sifra, NAZIV_PEDAGOGA, - N_anket_po_izpitu, sodelujocih_pct_po_izpitu, - zavrnjenih_pct_po_izpitu, ST_STUD, - nova_sifra as nova_sifra_predmeta,predmet_izvedba, - predmet_ocena_vsebine_mean,predmet_ocena_naloge_mean, - predmet_ocena_kriteriji_mean,predmet_ocena_kompetence, - predmet_ocena_krediti, predmet_ocena_SKUPAJ_po, - predmet_ocena_SKUPAJ_FDV_po, predmet_ocena_SKUPAJ_FDV_krediti, - predmet_ocena_SKUPAJ_FDV_kompetence - from leta left outer join dd_po on (leta.leto = dd_po.leto)") - - #tevilo porabljenih ur (USTREZNOST KT) - dd_po_KT <- dd_po - dd_po_KT$predmet_ocena_krediti <- as.numeric(as.character(dd_po_KT$predmet_ocena_krediti)) - - #Kompetence - dd_po_Kom <- dd_po - dd_po_Kom$predmet_ocena_kompetence <- as.numeric(as.character(dd_po_Kom$predmet_ocena_kompetence)) - - - #Izvajalci pri predmetih - colnames(dd_izv) <- gsub("\\.","_",colnames(dd_izv)) - # Komentarji izvajalcev - dd_izv_komentarji <- dd_izv - dd_izv_komentarji <- sqldf("select leta.leto, sifra_izvajalca, NAZIV_PEDAGOGA, - N_anket, sodelujocih_pct, zavrnjenih_pct,ST_STUD, - nova_sifra_predmeta,predmet_izvedba, izvajalec_ocena_kakovost_mean, - izvajalec_ocena_pripravljenost_mean, izvajalec_ocena_razumljivost_mean, - izvajalec_ocena_zanimivost_mean, izvajalec_ocena_kriticnost_mean, - izvajalec_ocena_korektnost_mean, izvajalec_ocena_SKUPAJ,izvajalec_ocena_SKUPAJ_FDV, - izvajalec_komentar_dobro, izvajalec_komentar_slabo - from leta left outer join dd_izv_komentarji on (leta.leto = dd_izv_komentarji.leto)") - - - dd_izv <- sqldf("select leta.leto, sifra_izvajalca, NAZIV_PEDAGOGA, - N_anket, sodelujocih_pct, zavrnjenih_pct,ST_STUD, - nova_sifra_predmeta,predmet_izvedba, izvajalec_ocena_kakovost_mean, - izvajalec_ocena_pripravljenost_mean, izvajalec_ocena_razumljivost_mean, - izvajalec_ocena_zanimivost_mean, izvajalec_ocena_kriticnost_mean, - izvajalec_ocena_korektnost_mean, izvajalec_ocena_SKUPAJ,izvajalec_ocena_SKUPAJ_FDV - from leta left outer join dd_izv on (leta.leto = dd_izv.leto)") - - dd_izv <- dd_izv[!is.na(dd_izv["predmet_izvedba"]),] - - - - # TUDIJSKA PRAKSA - colnames(dd_praksa) <- gsub("\\.","_",colnames( dd_praksa )) - dd_praksa <- sqldf("select leta.leto, izvajalec_sifra, NAZIV_PEDAGOGA, - N_anket_po_izpitu, sodelujocih_pct_po_izpitu, - zavrnjenih_pct_po_izpitu, ST_STUD, - nova_sifra as nova_sifra_predmeta,predmet_izvedba, - predmet_ocena_ponudba_mean,predmet_ocena_pomoc_mean, - predmet_ocena_navodila_mean,predmet_ocena_korist_mean, - predmet_ocena_ucinkovitost_mean, predmet_ocena_strokovnost_mean, - predmet_ocena_podpora_mean,predmet_ocena_primernost_mean,predmet_ocena_dolzina_mean,PRAKSA, - predmet_ocena_SKUPAJ_praksa - from leta left outer join dd_praksa on (leta.leto =dd_praksa.leto)") - - - - - - - - - ################################################################################### - ###OBLIKOVANJE IN IZBIRA PODATKOV ZA TABELE# - - ####### - # 3. Povzetek: Tabela 1 ANKETA PRED IZPITOM - ####### - d31 <- dd_pre[c("leto","predmet_izvedba","predmet_ocena_SKUPAJ_pred")] - - d31$predmet_ocena_SKUPAJ_pred <- sprintf("%.1f",d31$predmet_ocena_SKUPAJ_pred) - d31$predmet_ocena_SKUPAJ_pred[d31$predmet_ocena_SKUPAJ_pred=="NA" & d31$predmet_izvedba!="NA"] <- paste0("$\\cdot$") # Simbol pika za izvedbe z <5 glasovi - d31 <- d31[ ! duplicated( d31[ c("leto" , "predmet_izvedba") ] ) , ] - d31 <- dcast(d31,predmet_izvedba ~ leto, value.var="predmet_ocena_SKUPAJ_pred") # Pivotiraj na predmet_izvedba x leto - d31[d31 == "NA"] <- NA - d31 <- d31[rowSums(is.na(d31)) 1) { - d31_komponente_avg <- apply(d31_komponente_avg,1,mean, na.rm=TRUE) - } else{d31_komponente_avg <- round(mean(d31_komponente_avg, na.rm=T),1)} - d31_komponente_avg1 <- round(mean(d31_komponente_avg),1) - d31_komponente_avg <- c(d31_komponente_avg,d31_komponente_avg1) - d31_komponente_avg <- sprintf("%.1f",d31_komponente_avg) - d31_komponente_avg[d31_komponente_avg=="NaN"] <- "." - d31_komponente <- cbind(d31_komponente,c(d31_komponente_avg[-length(d31_komponente_avg)])) - d31_komponente <- d31_komponente[-1,] # Izbrii prvi stolpec - - - #colnames(d31_komponente)[1] <- paste0("\\textbf{",as.character(leta),"}") - names(d31_komponente) <- paste0("\\textbf{",names(d31_komponente),"}") - if (ncol(trendi.leta.pred) > 1) { - colnames(d31_komponente) <- paste0("\\textbf{",colnames(d31_komponente),"}") - } else {colnames(d31_komponente)[1] <- paste0("\\textbf{",as.character(leta),"}")} - - colnames(d31_komponente)[ncol(d31_komponente)] = "\\textbf{Skupaj}" - rownames(d31_komponente)[nrow(d31_komponente)] = "\\hline \\textbf{Povpreje predmeta}" - - d31_komponente[is.na(d31_komponente)] <- paste0("--") - - d31_komponente <- rbind(d31_komponente,c(FDVpredmetiPRED.kom,round(mean(FDVpredmetiPRED.kom, na.rm=T),1))) - - rownames(d31_komponente)[nrow(d31_komponente)] = paste0("\\hline \\textbf{Povpreje " ,fakulteta,"}") - - #d31_komponente <- d31_komponente[,-2] - if (pdfReporti|latexDatoteke) { - t31_komponente <- capture.output(Hmisc::latex(d31_komponente, - file="", - caption="Povpreja za agregirane ocene komponent \\textbf{predmetov} po - vseh predmetih (anketa PRED izpitom)", - rowlabel="\\textbf{Komponente}", - col.just=c(rep('c', nrow(leta)),'|c'), - multicol=FALSE, - where='H')) - } - - - ## //KOMPONENTE PO LETIH (ANKETA PRED IZPITOM)// ## - - - - - - ####### - # 3. Povzetek: Tabela 2 ANKETA PO IZPITU - ####### - - d32 <- dd_po[c("leto","predmet_izvedba","predmet_ocena_SKUPAJ_po")] - d32$predmet_ocena_SKUPAJ_po <- sprintf("%.1f",d32$predmet_ocena_SKUPAJ_po) - d32$predmet_ocena_SKUPAJ_po[d32$predmet_ocena_SKUPAJ_po=="NA" & d32$predmet_izvedba!="NA"] <- "." # Simbol pika za izvedbe z <5 glasovi - d32<-d32[ ! duplicated( d32[ c("leto" , "predmet_izvedba") ] ) , ] - d32 <- dcast(d32,predmet_izvedba ~ leto, value.var="predmet_ocena_SKUPAJ_po") # Pivotiraj na predmet_izvedba x leto - d32[d32 == "NA"] <- NA - d32 <- d32[rowSums(is.na(d32)) 1) { - d31_komponente_po_avg <- apply(d31_komponente_po_avg,1,mean, na.rm=TRUE) - }else{d31_komponente_po_avg <- round(mean(d31_komponente_po_avg,na.rm=TRUE),1)} - d31_komponente_po_avg1 <- round(mean(d31_komponente_po_avg),1) - d31_komponente_po_avg <- c(d31_komponente_po_avg,d31_komponente_po_avg1) - d31_komponente_po_avg <- sprintf("%.1f",d31_komponente_po_avg) - d31_komponente_po_avg[d31_komponente_po_avg=="NaN"] <- "." - d31_komponente_po <- cbind(d31_komponente_po,c(d31_komponente_po_avg[-length(d31_komponente_po_avg)])) - d31_komponente_po <- d31_komponente_po[-1,] # Izbrii prvi stolpec - - if (ncol(trendi.leta.po) > 1) { - colnames(d31_komponente_po) <- paste0("\\textbf{",colnames(d31_komponente_po),"}") - } else {colnames(d31_komponente_po)[1] <- paste0("\\textbf{",as.character(leta),"}")} - colnames(d31_komponente_po)[ncol(d31_komponente_po)] = "\\textbf{Skupaj}" - rownames(d31_komponente_po)[nrow(d31_komponente_po)] = "\\hline \\textbf{Povpreje predmeta}" - - d31_komponente_po[is.na(d31_komponente_po)] <- paste0("--") - - d31_komponente_po <- rbind(d31_komponente_po,c(FDVpredmetiPO.kom,round(mean(FDVpredmetiPO.kom, na.rm=T),1))) - - rownames(d31_komponente_po)[nrow(d31_komponente_po)] = paste0("\\hline \\textbf{Povpreje " ,fakulteta,"}") - - - - if (pdfReporti|latexDatoteke) { - t31_komponente_po <- capture.output(Hmisc::latex(d31_komponente_po, - file="", - caption="Povpreja za agregirane ocene izpitnih komponent \\textbf{predmetov} po - vseh predmetih (anketa PO izpitu)", - rowlabel="\\textbf{Komponente}", - col.just=c(rep('c', nrow(leta)),'|c'), - multicol=FALSE, - where='H')) - } - ## //KOMPONENTE PO LETIH (ANKETA PO IZPITU)// ## - - - - ####### - # 3. Povzetek: Tabela 4 IZVAJALCI PRI PREDMETIH (ANKETA PRED IZPITOM) - ####### - - d33 <- dd_izv[c("leto","predmet_izvedba","izvajalec_ocena_SKUPAJ","zavrnjenih_pct")] - #d33$izvajalec_ocena_SKUPAJ <- sprintf("%.2f",d33$izvajalec_ocena_SKUPAJ) - d33$izvajalec_ocena_SKUPAJ <- format(round( d33$izvajalec_ocena_SKUPAJ, 1), nsmall = 1) - d33$izvajalec_ocena_SKUPAJ[c(d33$izvajalec_ocena_SKUPAJ==" NA" |d33$izvajalec_ocena_SKUPAJ=="NA") & d33$predmet_izvedba!="NA"] <- "." # Simbol pika za izvedbe z <5 glasovi - d33 <- d33[ ! duplicated( d33[ c("leto" , "predmet_izvedba") ] ) , ] - d33 <- dcast(d33,predmet_izvedba ~ leto, value.var="izvajalec_ocena_SKUPAJ") # Pivotiraj na predmet_izvedba x leto - d33[d33 == "NA"] <- NA - d33 <- d33[rowSums(is.na(d33)) 1) { - d31_komponente_izv_avg <- apply(d31_komponente_izv_avg,1,mean, na.rm=TRUE) - } else{ d31_komponente_izv_avg <- round(mean(d31_komponente_izv_avg, na.rm=TRUE),1) -} - d31_komponente_izv_avg1 <- round(mean(d31_komponente_izv_avg),1) - d31_komponente_izv_avg <- c(d31_komponente_izv_avg,d31_komponente_izv_avg1) - d31_komponente_izv_avg <- sprintf("%.1f",d31_komponente_izv_avg) - d31_komponente_izv_avg[d31_komponente_izv_avg=="NaN"] <- "." - if (ncol(d31_komponente_izv) > 1) { - d31_komponente_izv <- cbind(d31_komponente_izv,c(d31_komponente_izv_avg[-length(d31_komponente_izv_avg)])) - } else {d31_komponente_izv <- cbind(d31_komponente_izv,d31_komponente_izv)} - - - if (ncol(d31_komponente_izv) > 2) { - colnames(d31_komponente_izv)[1:3]<-paste0("\\textbf{",colnames(d31_komponente_izv)[1:3],"}") - } else if (colnames(d31_komponente_izv)[2] == "14/15"){ - colnames(d31_komponente_izv)[1] <- "\\textbf{14/15}" - } else {colnames(d31_komponente_izv)[1] <- "\\textbf{15/16}"} - #colnames(d31_komponente_izv) <- paste0("\\textbf{",colnames(d31_komponente_izv),"}") - colnames(d31_komponente_izv)[ncol(d31_komponente_izv)] = "\\textbf{Skupaj}" - rownames(d31_komponente_izv)[nrow(d31_komponente_izv)] = "\\hline \\textbf{Povpreje izvajalca}" - - d31_komponente_izv[is.na(d31_komponente_izv)] <- paste0("--") - - - - - d31_komponente_izv <- rbind(d31_komponente_izv, c(FDVizvajalci.kom,round(mean(FDVizvajalci.kom, na.rm=T),1))) - rownames(d31_komponente_izv)[nrow(d31_komponente_izv)] = paste0("\\hline \\textbf{Povpreje " ,fakulteta,"}") - d31_komponente_izv <- d31_komponente_izv[-1,] #izbrii prvo vrstico - # d31_komponente_izv <- d31_komponente_izv[,-2] - if (pdfReporti|latexDatoteke) { - # colnames(d31_komponente_izv) <- paste('\\begin{Complement}', Hmisc::latexTranslate(colnames(d31_komponente_izv)), '\\end{Complement}') # za visea imena - t31_komponente_izv <- capture.output(Hmisc::latex(d31_komponente_izv, - file="", - caption="Povprene ocene komponent - \\textbf{izvajalca} po vseh predmetih (anketa PRED izpitom)", - rowlabel="\\textbf{Komponente}", - col.just=c(rep('c', nrow(leta)),'|c'), - multicol=FALSE, - where='H')) - } - - ## //KOMPONENTE PO LETIH IZVAJALEC PRI PREDMETU// ## - - - - - - - - - - - - - ################################################# - #PODROBEN PREGLED:POSAMEZNI PREDMETI - ################################################# - # Ustvari ID polja za unikatne predmet_izvedba, jih dodaj v d_izv in d_pre - un_pre <- sort(unique(dd_pre[!is.na(dd_pre$predmet_izvedba),"predmet_izvedba"])) - #sort(dd_pre[!is.na(dd_pre$predmet_izvedba),"predmet_izvedba"]) - #un_pre <- unique(subset(dd_pre[c("predmet_izvedba","predmet_ocena_SKUPAJ_pred")],!is.na(dd_pre$predmet_izvedba))) - #un_pre <- subset(un_pre, !(is.na(predmet_ocena_SKUPAJ_pred))) - #un_pre$predmet_izvedba <- sort(un_pre$predmet_izvedba) - t4 <- NULL - - # DELAMO SAMO ZA FDV, KO DELAMO POROILA TRENDOV ZA IZVAJALCE, KI POUUJEJO TUJE JEZIKE - #dd_pre <- subset(dd_pre, !duplicated(predmet_izvedba) | !duplicated(leto)) - #dd_po <- subset(dd_po, !duplicated(predmet_izvedba) | !duplicated(leto)) - #dd_izv <- subset(dd_izv, !duplicated(predmet_izvedba) | !duplicated(leto)) - # //TUJI JEZIKI// # - - for (idx in un_pre){ - - ####### - # 4. Pregled: Tabela 1: ANKETA PRED IZPITOM - ####### - #dd_pre <- dd_pre[ ! duplicated( dd_pre[ c("predmet_izvedba","predmet_ocena_zadovoljstvo_mean", - # "predmet_ocena_usklajenost_mean","predmet_ocena_SKUPAJ_pred") ] ), ] - - - d41 <- dd_pre[dd_pre$predmet_izvedba==idx,c("leto","predmet_ocena_zadovoljstvo_mean","predmet_ocena_usklajenost_mean", - "predmet_ocena_samostojnost_mean","predmet_ocena_literatura_mean", - "predmet_ocena_obvescenost_mean","predmet_ocena_informiranost_mean", - "predmet_ocena_znanje_mean", "predmet_ocena_SKUPAJ_pred")] - - names(d41) <- c("leto","Zadovoljstvo","Usklajenost","Samostojnost","Literatura","Obveenost","Informiranost","Preverjanje","Povpreje") - d41 <- d41[ ! duplicated( d41[ c("leto","Povpreje") ] ), ] - d41 <- d41[ ! is.na( d41[ c("Povpreje") ] ), ] - d41_avg <- apply(d41[,-1],2,mean,na.rm=TRUE) # Izraunaj povpreje po komponentah - # d41 <- na.omit(d41) - - - t41 <- NULL - if (sum(!is.na(d41_avg)) > 0) { #nadaljuje s tabelami predmetov/izvajalcev samo e obstaja kakno veljavno povpreje komponente (se pravi obstaja kakna tevilna ocena) - d41_avg <- sprintf("%.1f",d41_avg) - d41_avg[d41_avg=="NaN"] <- "." - - d41[,-1] <- sapply(d41[,-1],function(x){sprintf("%.1f",x)}) - d41[d41=="NA"] <- "." # Simbol pika za izvedbe z <5 glasovi - - d41 <- t.data.frame(sqldf("select leta.leto, Zadovoljstvo, Usklajenost, Samostojnost, - Literatura, Obveenost, Informiranost, Preverjanje, Povpreje - from leta left outer join d41 on (leta.leto = d41.leto)")) - # Preimenujemo ime vrstice "informiranost" v "info na spletu", da se ujema z ostalimi poroili/izpisi (izvajalec itd.) - rownames(d41)[7] <- "Info na spletu" - colnames(d41) <- d41[1,] - d41 <- d41[-1,] - d41 <- cbind(d41,d41_avg) # Dodaj povpreja k tabeli - - if (ncol(d41) > 2) { - names(d41) <- paste0("\\textbf{",names(d41),"}") - colnames(d41) <- paste0("\\textbf{",colnames(d41),"}") - } else {colnames(d41)[1:1] <- paste0("\\textbf{15/16}")} - colnames(d41)[ncol(d41)] = "\\textbf{Skupaj}" - rownames(d41)[(nrow(d41)):nrow(d41)] <- c("\\hline \\textbf{Povpreje izvajalca}") - - - #colnames(d41)[1] <- paste0("\\textbf{",as.character(leta),"}") - #rownames(d41) <- paste0("\\textbf{",rownames(d41),"}") # Ne boldamo imena vrstic - #colnames(d41) <- paste0("\\textbf{",colnames(d41),"}") - #colnames(d41)[ncol(d41)] = "\\textbf{Skupaj}" - #rownames(d41)[(nrow(d41)):nrow(d41)] <- c("\\hline \\textbf{Povpreje predmeta}") - - - # Podatki o udeleni - d41_n <- dd_pre[dd_pre$predmet_izvedba==idx,c("leto","sodelujocih_pct")] - delez <- apply(dd_pre[dd_pre$predmet_izvedba==idx,c("N_anket","ST_STUD")],1, - function(x){paste(x["N_anket"],"/",x["ST_STUD"],sep="")}) - attributes(delez) <- NULL - delez <- gsub(" ", "", delez) - d41_n <- c(d41_n["leto"],list(delez),d41_n["sodelujocih_pct"]) - names(d41_n)[2]<-"delez" - d41_n <- data.frame(d41_n) - d41_n$sodelujocih_pct <- round(d41_n$sodelujocih_pct,0) - d41_n$sodelujocih_pct<- ifelse(!is.na(d41_n$sodelujocih_pct) & d41_n$sodelujocih_pct < 10, - paste0( " ((", d41_n$sodelujocih_pct,"\\%))"), - ifelse(!is.na(d41_n$sodelujocih_pct) & d41_n$sodelujocih_pct < 25, - paste0( " (", d41_n$sodelujocih_pct,"\\%)"), paste0(d41_n$sodelujocih_pct,"\\%"))) - - d41_n <- cbind(t.data.frame(sqldf("select leta.leto,delez,sodelujocih_pct from leta left outer join d41_n on (leta.leto = d41_n.leto)")),"") - d41_n <- d41_n[-1,] - rownames(d41_n) <- c( "\\hline Respondenti\\slash Vpisani","dele sodelujoih") - - #d41_n <- d41_n[, !duplicated(t(d41_n))] - - #d41 <- d41[, !duplicated(t(d41))] - if (ncol(d41) != ncol(d41_n)) { - d41_n <- d41_n[,apply(!(d41_n==""),2,any)] - } - #if (izv=="3000026_FGG_1" | izv=="3000026_FGG_1555") {d41_n <- d41_n[,-c(2)] - d41 <- rbind(d41,d41_n) - #} else {d41 <- rbind(d41,d41_n)} - - d41[is.na(d41)] <- paste0("--") # Simbol - za prazne celice - # Trenutno ne elimo da se v tabelah izpie dele sodelujoih - d41 <- d41[-nrow(d41),] - #d41 <- d41[,-(4:ncol(d41))] - # GENERIRANJE LATEX TABELE - if (pdfReporti|latexDatoteke) { - t41 <- capture.output(Hmisc::latex(d41, - file="", - title=paste0('d41_', idx), - caption="Povprene ocene komponent \\textbf{predmeta} - (anketa PRED izpitom)", - rowlabel="\\textbf{Komponente}", - col.just=c(rep('c', nrow(leta)),'|c'), - multicol=FALSE, - where='H')) - } - } - ## //Pregled: Tabela 1: ANKETA PRED IZPITOM// ## - - - #Pregled: Tabela 2: ANKETA PO IZPITU - # dd_po <- dd_po[ ! duplicated( dd_po[ c("predmet_izvedba","predmet_ocena_SKUPAJ_po") ] ), ] - - - d41_PO <- dd_po[dd_po$predmet_izvedba==idx,c("leto","predmet_ocena_vsebine_mean", - "predmet_ocena_naloge_mean", - "predmet_ocena_kriteriji_mean", - "predmet_ocena_SKUPAJ_po", - "predmet_ocena_kompetence", - "predmet_ocena_krediti")] - d41_PO$predmet_ocena_kompetence <- as.numeric(as.character(d41_PO$predmet_ocena_kompetence)) - d41_PO$predmet_ocena_krediti <- as.numeric(as.character(d41_PO$predmet_ocena_krediti)) - names(d41_PO) <- c("leto","Vsebine","Naloge","Ocenjevanje","Povpreje","Kompetence", "UstreznostKT") - d41_PO<-d41_PO[ ! duplicated( d41_PO[ c("leto","Povpreje") ] ), ] - d41_PO <- d41_PO[ ! is.na( d41_PO[ c("Povpreje") ] ), ] - d41_PO_avg <- apply(d41_PO[,-1],2,mean,na.rm=TRUE) # Izraunaj povpreje po komponentah - - t41_PO <- NULL - if (sum(!is.na(d41_PO_avg)) > 0) { #nadaljuje s tabelami predmetov/izvajalcev samo e obstaja kakno veljavno povpreje komponente (se pravi obstaja kakna tevilna ocena) - d41_PO_avg <- sprintf("%.1f",d41_PO_avg) - d41_PO_avg[d41_PO_avg=="NaN"] <- "." - - d41_PO[,-1] <- sapply(d41_PO[,-1],function(x){sprintf("%.1f",x)}) - d41_PO[d41_PO=="NA"] <- "." # Simbol pika za izvedbe z <5 glasovi - #d41_PO<-d41_PO[ ! duplicated( d41_PO[ c("leto") ] ), ] - d41_PO <- t.data.frame(sqldf("select leta.leto, Vsebine, Naloge, Ocenjevanje, Povpreje, Kompetence, UstreznostKT - from leta left outer join d41_PO on (leta.leto = d41_PO.leto)")) - - - colnames(d41_PO) <- d41_PO[1,] - d41_PO <- d41_PO[-1,] - - d41_PO <- cbind(d41_PO,d41_PO_avg) # Dodaj povpreja k tabeli - #colnames(d41_PO)[1] <- paste0("\\textbf{",as.character(leta),"}") - if (ncol(d41_PO) > 2) { - names(d41_PO) <- paste0("\\textbf{",names(d41_PO),"}") - colnames(d41_PO) <- paste0("\\textbf{",colnames(d41_PO),"}") - } else {colnames(d41_PO)[1:1] <- paste0("\\textbf{15/16}")} - colnames(d41_PO)[ncol(d41_PO)] = "\\textbf{Skupaj}" - - #names(d41_PO) <- paste0("\\textbf{",names(d41_PO),"}") - #colnames(d41_PO) <- paste0("\\textbf{",colnames(d41_PO),"}") - #colnames(d41_PO)[ncol(d41_PO)] = "\\textbf{Skupaj}" - rownames(d41_PO)[(nrow(d41_PO)):nrow(d41_PO)[1]-2] <- c("\\hline \\textbf{Povpreje predmeta}") - d41_PO <- d41_PO[c(1,2,3,4),] - #rownames(d41_PO)[(nrow(d41_PO)):nrow(d41_PO)[1]-1] <- c("\\hline Kompetence") - #rownames(d41_PO)[(nrow(d41_PO)):nrow(d41_PO)[1]] <- c("Ustreznost KT") - - # Podatki o udelebi - d41_n_po <- dd_po[dd_po$predmet_izvedba==idx,c("leto","sodelujocih_pct_po_izpitu")] - delez_po <- apply(dd_po[dd_po$predmet_izvedba==idx,c("N_anket_po_izpitu","ST_STUD")],1, - function(x){paste(x["N_anket_po_izpitu"],"/",x["ST_STUD"],sep="")}) - attributes(delez_po) <- NULL - delez_po <- gsub(" ", "", delez_po) - d41_n_po <- c(d41_n_po["leto"],list(delez_po),d41_n_po["sodelujocih_pct_po_izpitu"]) - names(d41_n_po)[2]<-"delez_po" - d41_n_po <- data.frame(d41_n_po) - d41_n_po$sodelujocih_pct_po_izpitu <- round(d41_n_po$sodelujocih_pct_po_izpitu,0) - d41_n_po$sodelujocih_pct_po_izpitu <- ifelse(!is.na(d41_n_po$sodelujocih_pct_po_izpitu) & d41_n_po$sodelujocih_pct_po_izpitu < 10, - paste0( " ((", d41_n_po$sodelujocih_pct_po_izpitu,"\\%))"), - ifelse(!is.na(d41_n_po$sodelujocih_pct_po_izpitu) & d41_n_po$sodelujocih_pct_po_izpitu < 25, - paste0( " (", d41_n_po$sodelujocih_pct_po_izpitu,"\\%)"), paste0(d41_n_po$sodelujocih_pct_po_izpitu,"\\%"))) - d41_n_po <- cbind(t.data.frame(sqldf("select leta.leto,delez_po,sodelujocih_pct_po_izpitu from leta left outer join d41_n_po on (leta.leto = d41_n_po.leto)")),"") - d41_n_po <- d41_n_po[-1,] - rownames(d41_n_po) <- c( "\\hline Respondenti\\slash Vpisani","dele sodelujoih") - - - # d41_n_po <- d41_n_po[, !duplicated(t(d41_n_po))] - - - - #d41_PO <- d41_PO[, !duplicated(t(d41_PO))] - - if (ncol(d41_PO) != ncol(d41_n_po)) { - d41_n_po <- d41_n_po[,apply(!(d41_n_po==""),2,any)] - } - # d41_n_po <- d41_n_po[,apply(!(d41_n_po==""),2,any)] - - d41_PO <- rbind(d41_PO,d41_n_po) - - - d41_PO[is.na(d41_PO)] <- paste0("--") # Simbol - za prazne celice - # Trenutno ne elimo da se v tabelah izpie dele sodelujoih - d41_PO <- d41_PO[-nrow(d41_PO),] - - # GENERIRANJE LATEX TABELE - if (pdfReporti|latexDatoteke) { - t41_PO <- capture.output(Hmisc::latex(d41_PO, - file="", - title=paste0('d41_PO_', idx), - caption="Povprene ocene komponent \\textbf{predmeta} - (anketa PO izpitu)", - rowlabel="\\textbf{Komponente}", - col.just=c(rep('c', nrow(leta)),'|c'), - multicol=FALSE, - where='H')) - } - } - - ## //Pregled: Tabela 2: ANKETA PO IZPITU// ## - - ## KOMENTARJI TUDENTOV ZA IZVAJALCA PRI PREDMETU - # kjer so tekstovne spremenljivke je na koncu vekratkrat kup nepotrebnih presledkov - - - trim <- function(x) { - gsub(pattern='^\\s+|\\s+$', replacement='', x=x) - } - # what should be excluded from student comments - junk.komentar <- c(NA,"-1","-2","-3","-4","-5","-97","-98","-99","-","/","\\",".","","-1: Ni odgovoril","-2: Preskok (if)","-3: Prekinjeno") - - text.komentar <- structure(c("Prosimo, natejte nekaj najbolj pozitivnih opaanj, povezanih z delom izvajalca/ke pri izvedbi predmeta.", - "Prosimo, natejte nekaj pomanjkljivosti in predlagajte izboljave, povezane z delom izvajalca/ke pri izvedbi predmeta." - ), .Names = c("izvajalec_komentar_dobro", "izvajalec_komentar_slabo" - )) - - if (any(dd_izv_komentarji$leto=="14/15")) { #e bostajajo komentarji za leto 2014/15 - izvajalec.komentarji.2015 <- subset(dd_izv_komentarji, leto=="14/15" & predmet_izvedba==idx) - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpraanja" - data.text.2015 <- lapply(izvajalec.komentarji.2015[c("izvajalec_komentar_dobro","izvajalec_komentar_slabo")], trim) #data.text.2015 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2015)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2015[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2015[[textvar]][!data.text.2015[[textvar]] %in% junk.komentar]) - } - - tex.text.2015 <- NULL - for (textvar in names(data.text.2015)) { - komentarji <- data.text.2015[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo otevileni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text.2015 <- append(tex.text.2015 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2015 <- append(tex.text.2015 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - - tex.text.2015 <- c("\\textbf{\\large {Komentarji tudentov za tudijsko leto 2014/2015}} \\newline \\newline",tex.text.2015) - } else {tex.text.2015 <- NULL} - - - - izvajalec.komentarji.2016 <- subset(dd_izv_komentarji, leto=="15/16" & predmet_izvedba==idx) - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpraanja" - data.text.2016 <- lapply(izvajalec.komentarji.2016[c("izvajalec_komentar_dobro","izvajalec_komentar_slabo")], trim) #data.text.2016 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2016)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2016[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2016[[textvar]][!data.text.2016[[textvar]] %in% junk.komentar]) - } - - tex.text.2016 <- NULL - for (textvar in names(data.text.2016)) { - komentarji <- data.text.2016[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo otevileni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text.2016 <- append(tex.text.2016 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2016 <- append(tex.text.2016 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - tex.text.2016 <- c("\\textbf{\\large {Komentarji tudentov za tudijsko leto 2015/2016}} \\newline \\newline",tex.text.2016) - - - - - - - izvajalec.komentarji.2017 <- subset(dd_izv_komentarji, leto=="16/17" & predmet_izvedba==idx) - - # Zajamemo komentarje, ki jih nato dodamo v poglavju izvajalca "Odgovori na odprta vpraanja" - data.text.2017 <- lapply(izvajalec.komentarji.2017[c("izvajalec_komentar_dobro","izvajalec_komentar_slabo")], trim) #data.text.2017 <- lapply(dd_izv_komentarji[dd_izv_komentarji$predmet_izvedba==idx,c([gsub(".","_",vars.izvajalec$text$vars, fixed=T)]], trim) - for (textvar in names(data.text.2017)){ - # odstranimo nezaelene stringe pri komentarjih - # backslashi v komentarjih so hudo nadleni amapk jih zaradi latexTranslate in LL ne moremo takoj zamenjat za \textbackslash - data.text.2017[[textvar]] <- gsub(pattern='\\\\', replacement='!backslash!', - x=data.text.2017[[textvar]][!data.text.2017[[textvar]] %in% junk.komentar]) - } - - tex.text.2017 <- NULL - for (textvar in names(data.text.2017)) { - komentarji <- data.text.2017[[textvar]] - if (length(komentarji) > 0) { # e je kaken komentar - komentarji <- reports::LL(text=Hmisc::latexTranslate(komentarji), copy2clip=FALSE, enumerate=FALSE) # Zapis komentarjev, ki naj ne bodo otevileni (enumerate=FALSE) - komentarji <- gsub(pattern='!backslash!', replacement='\\\\textbackslash ', x=komentarji) - komentarji <- gsub(pattern='', replacement='e', x=komentarji) - komentarji <- gsub(pattern='', replacement='...', x=komentarji) - tex.text.2017 <- append(tex.text.2017 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), komentarji)) - } else { - tex.text.2017 <- append(tex.text.2017 , append(paste('\\textbf{', text.komentar[[textvar]], '}', sep=''), - '\\newline - Ni podanih komentarjev. \\newline \\newline')) # \\newline zaradi preglednosti - } - } - tex.text.2017 <- c("\\textbf{\\large {Komentarji tudentov za tudijsko leto 2016/2017}} \\newline \\newline",tex.text.2017) - - - - - - - - - ## //TEKSTOVNE// ## - - - - - #Pregled: Tabela 3: IZVAJALCI PRI PREDMETIH - dd_izv <- dd_izv[ ! duplicated( dd_izv[ c("predmet_izvedba","izvajalec_ocena_razumljivost_mean", - "izvajalec_ocena_kakovost_mean","izvajalec_ocena_SKUPAJ") ] ), ] - - d42 <- dd_izv[dd_izv$predmet_izvedba==idx,c("leto","izvajalec_ocena_kakovost_mean", - - "izvajalec_ocena_pripravljenost_mean", - "izvajalec_ocena_razumljivost_mean", - "izvajalec_ocena_zanimivost_mean", - "izvajalec_ocena_kriticnost_mean", - "izvajalec_ocena_korektnost_mean", - "izvajalec_ocena_SKUPAJ")] - - names(d42) <- c("leto","Kakovost","Pripravljenost","Razumljivost","Zanimivost","Kritinost","Korektnost","Povpreje") - d42_jezik <- d42 - - d42 <- d42[ ! duplicated( d42[ c("leto") ] ), ] - #d42 <- d42[ ! is.na( d42[ c("Povpreje") ] ), ] - - if (all(is.na(d42[2:ncol(d42)]))) { - d42_avg <- apply(d42_jezik[,-1],2,mean,na.rm=TRUE) # Izraunaj povpreje po komponentah - } else {d42_avg <- apply(d42[,-1],2,mean,na.rm=TRUE) # Izraunaj povpreje po komponentah} - } - # d42_avg <- apply(d42_jezik[,-1],2,mean,na.rm=TRUE) # Izraunaj povpreje po komponentah - - t42 <- NULL - if (sum(!is.na(d42_avg)) > 0) { #nadaljuje s tabelami predmetov/izvajalcev samo e obstaja kakno veljavno povpreje komponente (se pravi obstaja kakna tevilna ocena) - d42_avg <- sprintf("%.1f",d42_avg) - d42[,-1] <- sapply(d42[,-1],function(x){sprintf("%.1f",x)}) - - d42_avg[d42_avg=="NaN"] <-"." - d42[d42=="NA"] <- "."# Simbol pika za izvedbe z <5 glasovi - d42 <- t.data.frame(sqldf("select leta.leto, Kakovost, Pripravljenost, Razumljivost, Zanimivost, Kritinost, Korektnost, Povpreje - from leta left outer join d42 on (leta.leto = d42.leto)")) - - colnames(d42) <- d42[1,] - d42 <- d42[-1,] - - d42 <- cbind(d42,d42_avg) # Dodaj povpreja k tabeli - - # if (any(d42[,1]==".")) { #FUnkcija izpie vrednosti##nevem zakaj vendar pri izvajalki za jezike s ifro 1293 inam teave saj zaradi 906 vrstice izpie "." namesto tevil - #d42[,1] <- d42_avg - # - if (ncol(d42) > 2) { - names(d42) <- paste0("\\textbf{",names(d42),"}") - colnames(d42) <- paste0("\\textbf{",colnames(d42),"}") - } else {colnames(d42)[1:1] <- paste0("\\textbf{15/16}")} - colnames(d42)[ncol(d42)] = "\\textbf{Skupaj}" - rownames(d42)[(nrow(d42)):nrow(d42)] <- c("\\hline \\textbf{Povpreje izvajalca}") - - - - - # Podatki o udelebi - d42_n <- unique(dd_izv[dd_izv$predmet_izvedba==idx,c("leto","sodelujocih_pct")]) - delez_izv <- apply(dd_izv[dd_izv$predmet_izvedba==idx,c("N_anket","ST_STUD")],1, - function(x){paste(x["N_anket"],"/",x["ST_STUD"],sep="")}) - attributes(delez_izv) <- NULL - delez_izv <- gsub(" ", "", delez_izv) - d42_n <- c(d42_n["leto"],list(delez_izv),d42_n["sodelujocih_pct"]) - names(d42_n)[2]<-"delez_izv" - d42_n <- data.frame(d42_n) - d42_n$sodelujocih_pct <- round(d42_n$sodelujocih_pct,0) - d42_n$sodelujocih_pct<- ifelse(!is.na(d42_n$sodelujocih_pct) & d42_n$sodelujocih_pct < 10, - paste0( " ((", d42_n$sodelujocih_pct,"\\%))"), - ifelse(!is.na(d42_n$sodelujocih_pct) & d42_n$sodelujocih_pct < 25, - paste0( " (", d42_n$sodelujocih_pct,"\\%)"), paste0(d42_n$sodelujocih_pct,"\\%"))) - - d42_n <- cbind(t.data.frame(sqldf("select leta.leto,delez_izv,sodelujocih_pct from leta left outer join d42_n on (leta.leto = d42_n.leto)")),"") - d42_n <- d42_n[-1,] - rownames(d42_n) <- c( "\\hline Respondenti\\slash Vpisani","dele sodelujoih") - #d42_n <- d42_n[,-c(2,3)] - d42 <- rbind(d42,d42_n) - - - d42[is.na(d42)] <- paste0("--") # Simbol - za prazne celice - # Trenutno ne elimo da se v tabelah izpie dele sodelujoih - d42 <- d42[-nrow(d42),] - - # Zanemo z generiranjem LATEX tabele - if (pdfReporti|latexDatoteke) { - t42 <- capture.output(Hmisc::latex(d42, - file="", - title=paste0('d42_', idx), - caption="Povprene ocene komponent - \\textbf{izvajalca pri predmetu} (anketa PRED izpitom)", - rowlabel="\\textbf{Komponente}", - col.just=c(rep('c', nrow(leta)),'|c'), - multicol=FALSE, - where='H')) - } - } - - - - # idx<-gsub("(\\d+)","",idx ) - #idx<-gsub("[[:punct:]]","",idx ) - ## //#Pregled: Tabela 3: IZVAJALCI PRI PREDMETIH// ## - - - if(KomisijaStudentskiSvet) { - t4 <- c(t4, - paste0('\\section{', idx, '}'), - if(!is.null(t42)){c(t42, tex.text.2017, tex.text.2016, tex.text.2015)} else {"- Zaradi prenizkega tevila odgovorov analiza izvajalca pri predmetu ni bila narejena. -"}) - } - if (!is.null(c(t41))) { - if (Trendi) { - t4 <- c(t4, - paste0('\\section{', idx, '}'), - if(!is.null(t41)){c( t41,t41_PO)}, - if(!is.null(t42)){c(t42)}, - '\\newpage')} - } - - } - - - - t4.praksa <- NULL - dd_praksa <- subset(dd_praksa, dd_praksa$PRAKSA==1) - dd_praksa <- subset(dd_praksa,!is.na(predmet_ocena_ponudba_mean) & !is.na(predmet_ocena_pomoc_mean) & !is.na(predmet_ocena_SKUPAJ_praksa)) - - dd_praksa <- dd_praksa[ ! duplicated( dd_praksa[ c("nova_sifra_predmeta","predmet_ocena_SKUPAJ_praksa") ] ), ] - - - - if (nrow(dd_praksa) > 0) { - - dd_praksa$st_predmeta <- gsub("^.*\\((\\d+)\\).*", "\\1", dd_praksa$predmet_izvedba) - - # ustvarim bazo vseh monih tevilk in izberem pa neko (prvo) ime - # izbere prvo ime in ignorira stolpec leto - baza <- do.call(rbind, lapply(split(dd_praksa, f = dd_praksa$st_predmeta), FUN = function(x) x[1, -1])) - names(baza)[grepl("predmet_izvedba", names(baza))] <- "poenoteno_ime" - - dd_praksa <- merge(dd_praksa, baza, by = "st_predmeta", all.y = TRUE, sort = FALSE) - - dd_praksa$predmet_izvedba <- dd_praksa$poenoteno_ime - colnames(dd_praksa) <- gsub('.x','',names(dd_praksa)) - - un_praksa <- sort(unique(dd_praksa[!is.na(dd_praksa$predmet_izvedba),"predmet_izvedba"])) - un_praksa <- un_praksa[!duplicated(un_praksa)] - - for (praksa in un_praksa) { - - d41_PRAKSA <- dd_praksa[dd_praksa$predmet_izvedba==praksa,c("leto","predmet_ocena_ponudba_mean", - "predmet_ocena_pomoc_mean", - "predmet_ocena_navodila_mean", - "predmet_ocena_korist_mean", - "predmet_ocena_ucinkovitost_mean", - "predmet_ocena_strokovnost_mean", - "predmet_ocena_podpora_mean", - "predmet_ocena_primernost_mean", - "predmet_ocena_dolzina_mean", - "predmet_ocena_SKUPAJ_praksa")] - - - names(d41_PRAKSA) <- c("leto","Ponudba","Pomo","Navodila","Notranjimentor","Sodelmentorjev", "Strokkompetence","Zunanjimentorji","Nainizvjanja","Dolina","Povpreje") - - d41_PRAKSA_avg <- apply(d41_PRAKSA[,-1],2,mean,na.rm=TRUE) # Izraunaj povpreje po komponentah - - t41_PRAKSA <- NULL - if (sum(!is.na(d41_PRAKSA_avg)) > 0) { #nadaljuje s tabelami predmetov/izvajalcev samo e obstaja kakno veljavno povpreje komponente (se pravi obstaja kakna tevilna ocena) - d41_PRAKSA_avg <- sprintf("%.1f",d41_PRAKSA_avg) - d41_PRAKSA_avg[d41_PRAKSA_avg=="NaN"] <- "." - - d41_PRAKSA[,-1] <- sapply(d41_PRAKSA[,-1],function(x){sprintf("%.1f",x)}) - d41_PRAKSA[d41_PRAKSA=="NA"] <- "." # Simbol pika za izvedbe z <5 glasovi - d41_PRAKSA <- d41_PRAKSA[ ! duplicated( d41_PRAKSA[ c("leto") ] ), ] - d41_PRAKSA <- t.data.frame(sqldf("select leta.leto, Ponudba, Pomo, Navodila, Notranjimentor, Sodelmentorjev, - Strokkompetence, Zunanjimentorji,Nainizvjanja, Dolina,Povpreje - from leta left outer join d41_PRAKSA on (leta.leto = d41_PRAKSA.leto)")) - - rownames(d41_PRAKSA) <- c("leto","Ponudba","Pomo","Navodila","Notranji mentor","Sodel. mentorjev", "Strok. kompetence","Zunanji mentorji","Nain izvjanja","Dolina","Povpreje") - - colnames(d41_PRAKSA) <- d41_PRAKSA[1,] - d41_PRAKSA <- d41_PRAKSA[-1,] - - d41_PRAKSA <- cbind(d41_PRAKSA,d41_PRAKSA_avg) # Dodaj povpreja k tabeli - #colnames(d41_PRAKSA)[1] <- paste0("\\textbf{",as.character(leta),"}") - colnames(d41_PRAKSA) <- paste0("\\textbf{",colnames(d41_PRAKSA),"}") - colnames(d41_PRAKSA)[ncol(d41_PRAKSA)] = "\\textbf{Skupaj}" - rownames(d41_PRAKSA)[(nrow(d41_PRAKSA)):nrow(d41_PRAKSA)] <- c("\\hline \\textbf{Povpreje}") - #rownames(d41_PRAKSA)[(nrow(d41_PRAKSA)):nrow(d41_PRAKSA)[1]-1] <- c("\\hline Kompetence") - #rownames(d41_PRAKSA)[(nrow(d41_PRAKSA)):nrow(d41_PRAKSA)[1]] <- c("Ustreznost KT") - - # Podatki o udelebi - d41_n_PRAKSA <- dd_praksa[dd_praksa$predmet_izvedba==praksa,c("leto","sodelujocih_pct_po_izpitu")] - delez_praksa <- apply(dd_praksa[dd_praksa$predmet_izvedba==praksa,c("N_anket_po_izpitu","ST_STUD")],1, - function(x){paste(x["N_anket_po_izpitu"],"/",x["ST_STUD"],sep="")}) - attributes(delez_praksa) <- NULL - delez_praksa <- gsub(" ", "", delez_praksa) - d41_n_PRAKSA <- c(d41_n_PRAKSA["leto"],list(delez_praksa),d41_n_PRAKSA["sodelujocih_pct_po_izpitu"]) - names(d41_n_PRAKSA)[2]<-"delez_praksa" - d41_n_PRAKSA <- data.frame(d41_n_PRAKSA) - d41_n_PRAKSA$sodelujocih_pct_po_izpitu <- round(d41_n_PRAKSA$sodelujocih_pct_po_izpitu,0) - d41_n_PRAKSA$sodelujocih_pct_po_izpitu <- ifelse(!is.na(d41_n_PRAKSA$sodelujocih_pct_po_izpitu) & d41_n_PRAKSA$sodelujocih_pct_po_izpitu < 10, - paste0( " ((", d41_n_PRAKSA$sodelujocih_pct_po_izpitu,"\\%))"), - ifelse(!is.na(d41_n_PRAKSA$sodelujocih_pct_po_izpitu) & d41_n_PRAKSA$sodelujocih_pct_po_izpitu < 25, - paste0( " (", d41_n_PRAKSA$sodelujocih_pct_po_izpitu,"\\%)"), paste0(d41_n_PRAKSA$sodelujocih_pct_po_izpitu,"\\%"))) - d41_n_PRAKSA <- cbind(t.data.frame(sqldf("select leta.leto,delez_praksa,sodelujocih_pct_po_izpitu from leta left outer join d41_n_PRAKSA on (leta.leto = d41_n_PRAKSA.leto)")),"") - d41_n_PRAKSA <- d41_n_PRAKSA[-1,] - rownames(d41_n_PRAKSA) <- c( "\\hline Respondenti\\slash Vpisani","dele sodelujoih") - #d41_n_PRAKSA <- d41_n_PRAKSA[, !duplicated(t(d41_n_PRAKSA))] - - if (ncol(d41_n_PRAKSA) != ncol(d41_PRAKSA)) { - d41_n_PRAKSA <- d41_n_PRAKSA[,apply(!(d41_n_PRAKSA==""),2,any)] - } - # d41_n_po <- d41_n_po[,apply(!(d41_n_po==""),2,any)] - - d41_PRAKSA <- rbind(d41_PRAKSA,d41_n_PRAKSA) - - - d41_PRAKSA[is.na(d41_PRAKSA)] <- paste0("--") # Simbol - za prazne celice - d41_PRAKSA <- d41_PRAKSA[-nrow(d41_PRAKSA),] - - if (pdfReporti|latexDatoteke) { - t41_PRAKSA <- capture.output(Hmisc::latex(d41_PRAKSA, - file="", - title=paste0('d41_PRAKSA_', praksa), - caption=c(paste0("Povpreja za ocene komponent \\textbf{tudijske prakse} ", praksa, " ")), - rowlabel="\\textbf{Komponente}", - col.just=c(rep('c', nrow(leta)),'|c'), - multicol=FALSE, - where='H')) - } - - - } - if (!is.null(c(t41_PRAKSA))) { - if (Trendi) { - t4.praksa <- c(t4.praksa, - paste0('\\section{', praksa, '}'), - if(!is.null(t41_PRAKSA)){c(t41_PRAKSA)}, - '\\newpage')} - - } - - } - } else {t41_PRAKSA <- NULL - t4.praksa <- NULL} - ##### //PREGLED:POSAMEZNI PREDMETI// ##### - - - - ################################################# - # Zaetek generiranja tabel za Pregled - ################################################# - - ##### generiranje pdfja - if (pdfReporti|latexDatoteke) { - if (pdfReporti) { - if (KomisijaStudentskiSvet) { - imenaIzv <- dd_izv$NAZIV_PEDAGOGA[which(!is.na(dd_izv$NAZIV_PEDAGOGA))] #vzame vsa imena brez NA vrednosti (ponekod so NA, ne vem zakaj, kar zlomi zanko v naslednjem koraku) da potem vzame zadnje ime za naslov dolumenta (ker naj bi bil v zadnjem najnoveji naziv) - tex.glava.izv <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(imenaIzv[length(imenaIzv)]), x=tex.glava) - } else { # za naslov damo ime izvajalca iz zadnje vrstice (kjer naj bi bil najnoveji naziv) - imenaIzv <- dd_izv$NAZIV_PEDAGOGA[which(!is.na(dd_izv$NAZIV_PEDAGOGA))] #vzame vsa imena brez NA vrednosti (ponekod so NA, ne vem zakaj, kar zlomi zanko v naslednjem koraku) da potem vzame zadnje ime za naslov dolumenta (ker naj bi bil v zadnjem najnoveji naziv) - tex.glava.izv <- gsub(pattern='!naslov!', replacement=Hmisc::latexTranslate(imenaIzv[length(imenaIzv)]), x=tex.glava) - } - } - - ##ARHIV OCEN## - ###Na koncu poroila dodamo 5 Letne serije ocen za izvajalca #2008/2012 - if (Trendi==TRUE) { - if (dodatkePoLetih) { - if (file.exists(paste0('C:/Miha/DELO ZA NAZAJ/5 letne serije/0000-za nazaj/0000-pdfji ez leta/output/latexDatoteke/izvajalec_', sapply(strsplit(izv, "_", fixed=TRUE), "[", 3), '.tex'))) { # ali ocene obstajajo (so v mapi) - tex.poLetih <- scan(paste0('C:/Miha/DELO ZA NAZAJ/5 letne serije/0000-za nazaj/0000-pdfji ez leta/output/latexDatoteke/izvajalec_', sapply(strsplit(izv, "_", fixed=TRUE), "[", 3), '.tex'), character(0), sep='\n', quiet=TRUE) - } else { - tex.poLetih <- '- Ni podatkov -' - } - } else {tex.poLetih <- NULL} - } else {tex.poLetih <- NULL} - #tex.poLetih<-NULL - ##//ARHIV OCEN 2008/2013//## - - # sestavimo latex datoteko - - if (KomisijaStudentskiSvet) { - TeXreport <- c( - '\\chapter{Povzetek agregiranih ocen izvajalca}',pojasnilo.komisija, t33, - '\\chapter{Analiza po predmetih}', - paste0("V tabelah so za izbrani predmet prikazane ocene estih komponent - izvajalca. V tabeli je navedeno tudi tevilo tudentov, - ki so na anketo odgovarjali (\\textbf{Respondenti}) in - tevilo tudentov, ki so predmet vpisali (\\textbf{Vpisani}). - Dodani so tudi komentarji tudentov. - Podrobneji vpogled v kakovost - posamezne ocene je v odgovarjajoem letnem poroilu."),t4, - '\\chapter{Ocene komponent}', - paste("Povpreja odgovarjajoe komponente so izraunana kot - aritmetina sredina ocen po predmetih (poglavje 2). e - predmet pri doloeni komponenti nima ocene, se v izraunih - ne upoteva."), - t31_komponente_izv,'\\newpage', tex.pojasnilo) - - - - } else {TeXreport <- c( - '\\chapter{Povzetek trendov za izvajalca in njegove predmete}',pojasnilo.trendi, - t31, t32, t32_KT, t32_Kom, t33, - '\\chapter{Analiza trendov po predmetih}', - paste0("V tabelah so za izbrani predmet prikazane - komponente agregiranih ocen (poglavje 1) predmeta oziroma izvajalca. - V vsaki tabeli je navedeno tudi tevilo tudentov, - ki so na anketo odgovarjali (\\textbf{Respondenti}) in - tevilo tudentov, ki so predmet vpisali (\\textbf{Vpisani}). - Nizko tevilo enot je oznaeno z enojnim () oziroma z dvojnim oklepajem (()). - Trendi za ustreznost kreditnih tok in za oceno pridobljenih kompetenc so navedeni e v poglavju 1. - Podrobneji vpogled v kakovost posamezne ocene je v odgovarjajoem letnem poroilu."), t4,'\\newpage', - '\\chapter{Trendi za ocene komponent}', - paste(" V tabelah so prikazana povpreja posameznih komponent, izraunana - po vseh predmetih, ki so navedeni v poglavju 2. - Trendi za ustreznost kreditnih tok in za oceno pridobljenih - kompetenc so navedeni e v poglavju 1."), - t31_komponente, t31_komponente_po, t31_komponente_izv, if (!is.null(t41_PRAKSA)) {c("\\chapter{Trendi za tudijsko prakso}", - paste0("Navedena so povpreja komponent za tudijsko prakso. - tudenti so komponente ocenjevali na lestvici od 1 do 5."))},t4.praksa, - tex.pojasnilo)} - - - # shranimo in skompiliramo; workdir spremenimo vsaki zato da dela pdfje v output mapo - if (pdfReporti) { - TeXzaPDF <- c(tex.glava.izv, '\\newpage', TeXreport, tex.poLetih, tex.noga) - TeXzaPDF <- gsub('NA', ".", TeXzaPDF, fixed=TRUE) - TeXzaPDF <- gsub('NaN', ".", TeXzaPDF, fixed=TRUE) - #TeXzaPDF <- gsub('(1)', '', TeXzaPDF, fixed=TRUE) - #TeXzaPDF <- gsub('(2)', '', TeXzaPDF, fixed=TRUE) - #TeXzaPDF <- gsub('(3)', '', TeXzaPDF, fixed=TRUE) - TeXzaPDF <- gsub('celoletni', '1C', TeXzaPDF, fixed=TRUE) - - cat(TeXzaPDF, file=paste('output/report_izvajalec_', gsub('.*_([0-9]+).*','\\1',izv), '.tex', sep=''), sep='\n') - setwd(paste(Rdirektorij, 'output', sep='/')) - tools::texi2pdf(file=paste('report_izvajalec_', gsub('.*_([0-9]+).*','\\1',izv), '.tex', sep=''), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) - } - if (latexDatoteke) { - cat(TeXreport, file=paste('output/latexDatoteke/izvajalec_', gsub('.*_([0-9]+).*','\\1',izv), '.tex', sep=''), sep='\n') - } - } - ##### /generiranje pdfja/ - - - } - -cat(capture.output(warnings()), sep='\n', file='output/warnings.txt') \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda_KATEDRA.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda_KATEDRA.R deleted file mode 100644 index b9ca1c526..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda_KATEDRA.R +++ /dev/null @@ -1,1126 +0,0 @@ -# run first -#params <- commandArgs(trailingOnly=TRUE) -#ID <- params[1] - -#source("Evalvacija/R/koda.r") - -#Ali naj generira tudi tabele za vse tudente ali samo za tudente doloenega programa -allstudents <- FALSE -sortByAverage <- TRUE # if true sort by average, else by name -sortbykrediti<-TRUE #if true sort by krediti (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - - -katedre <- read.csv2("Evalvacija/temp/katedre.csv",sep=";", header=T, fill=T,stringsAsFactors=FALSE) -katedre <- katedre[-which(katedre$Katedra == ""), ] -katedre<-katedre[!is.na(katedre$Katedra),] -#Sortirano ocene izvajalcev in ocene predmetov glede na KATEDRE -programi <- merge(programi, katedre[c("ID_programa", "ID_katedre", "Katedra")], by.x="student.program.sifra", by.y="ID_programa", all.x=TRUE) -programi <- subset(programi, !is.na(student.program.sifra)) -programi <- subset(programi, !is.na(Katedra)) -programi <- programi[order(programi$student.program.ime),] -Porocilo.izvajalci<-merge(povprecja.izvajalci.programi, katedre[c("ID_programa","ID_katedre","Katedra")], by.x=c("program.studentov"),by.y=("ID_programa"), all=TRUE,sort=FALSE) -Porocilo.predmeti<-merge(povprecja.predmeti.programi, katedre[c("ID_programa","ID_katedre","Katedra")], by.x=c("program.studentov"),by.y=("ID_programa"), all=TRUE,sort=FALSE) -povprecja.izvajalci.katedra<-merge(povprecja.izvajalci, Porocilo.izvajalci[c("izvajalec.sifra","predmet.sifra","ID_katedre","Katedra")], by=c("izvajalec.sifra","predmet.sifra"),all=TRUE, sort=FALSE) -povprecja.predmeti.katedra<-merge(povprecja.predmeti, Porocilo.predmeti[c("predmet.sifra","ID_katedre","Katedra")], by=c("predmet.sifra"), all=TRUE,sort=FALSE) - - - - -# making latex files -katedre.tex <- NULL -for (katedra in programi$Katedra) { - ime.katedre<- unique(Hmisc::latexTranslate(programi[programi$Katedra==katedra,"Katedra"])) - - ## lecturer total programme averages ## - program.izvajalci.skupaj.data <- subset(Porocilo.izvajalci, Katedra == katedra & N_anket >= minEnot) - if (nrow(program.izvajalci.skupaj.data) > 0) { - program.izvajalci.skupaj <- aggregate(program.izvajalci.skupaj.data[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], by=program.izvajalci.skupaj.data[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], FUN=mean, na.rm=TRUE) - st.predmetov <- as.data.frame(table(program.izvajalci.skupaj.data$izvajalec.sifra)) - program.izvajalci.skupaj <- merge(st.predmetov, program.izvajalci.skupaj, by.x="Var1", by.y="izvajalec.sifra", all=TRUE, sort=FALSE) - rownames(program.izvajalci.skupaj) <- formatProgImena(program.izvajalci.skupaj$NAZIV.PEDAGOGA, program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ) - program.izvajalci.skupaj <- program.izvajalci.skupaj[order(program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program.izvajalci.skupaj) %in% c("Var1", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - program.izvajalci.skupaj <- rbind(program.izvajalci.skupaj, c("-", colMeans(program.izvajalci.skupaj[2:ncol(program.izvajalci.skupaj)], na.rm=TRUE)), c("-", vars.izvajalec$cont$meansFDV)) - program.izvajalci.skupaj <- formatNA(program.izvajalci.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c("NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - vsota_izvajalcev_programa<-sum(program.izvajalci.skupaj$izvajalec.ocena.SKUPAJ != ".")-2 - rownames(program.izvajalci.skupaj)[(nrow(program.izvajalci.skupaj)-1):nrow(program.izvajalci.skupaj)] <- c(paste0("\\hline \\textbf{Povpreje programa (",vsota_izvajalcev_programa, " izvajalcev)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - colnames(program.izvajalci.skupaj) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program.izvajalci.skupaj.tex <- capture.output(Hmisc::latex(program.izvajalci.skupaj, caption="Povpreja \\textbf{izvajalcev}, sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", - rowlabel.just="A{12cm}", multicol=FALSE, longtable=TRUE, lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - program.izvajalci.skupaj.tex <- "Ni ocen." - } - ## /lecturer total programme averages/ ## - - ## lecturer total averages ## - program.izvajalci <- subset(povprecja.izvajalci.katedra, Katedra==katedra & N_anket>3) - if (nrow(program.izvajalci) > 0) { - program.izvajalci.skupaj.vsi <- aggregate(program.izvajalci[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], by=program.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], FUN=mean, na.rm=TRUE) - st.predmetov <- as.data.frame(table(program.izvajalci$izvajalec.sifra)) - program.izvajalci.skupaj.vsi <- merge(st.predmetov, program.izvajalci.skupaj.vsi, by.x="Var1", by.y="izvajalec.sifra", all=TRUE, sort=FALSE) - rownames(program.izvajalci.skupaj.vsi) <- formatProgImena(program.izvajalci.skupaj.vsi$NAZIV.PEDAGOGA, program.izvajalci.skupaj.vsi$izvajalec.ocena.SKUPAJ) - program.izvajalci.skupaj.vsi <- program.izvajalci.skupaj.vsi[order(program.izvajalci.skupaj.vsi$izvajalec.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program.izvajalci.skupaj.vsi) %in% c("Var1", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - program.izvajalci.skupaj.vsi <- rbind(program.izvajalci.skupaj.vsi, c("-", colMeans(program.izvajalci.skupaj.vsi[2:ncol(program.izvajalci.skupaj.vsi)], na.rm=TRUE)), c("-", vars.izvajalec$cont$meansFDV)) - program.izvajalci.skupaj.vsi <- formatNA(program.izvajalci.skupaj.vsi, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c("NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program.izvajalci.skupaj.vsi)[(nrow(program.izvajalci.skupaj.vsi)-1):nrow(program.izvajalci.skupaj.vsi)] <- c("\\hline \\textbf{Povpreje programa (po pedagogih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - colnames(program.izvajalci.skupaj.vsi) <- latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program.izvajalci.skupaj.vsi.tex <- capture.output(Hmisc::latex(program.izvajalci.skupaj.vsi, caption="Skupne ocene izvajalcev", rowlabel="", file="", where="H", - rowlabel.just="A{12cm}", multicol=FALSE, longtable=TRUE, lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{- Podatek je manj pomemben ali teko izraunljiv.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - - ## /lecturer total averages/ ## - - ## lecturer course averages ## - rownames(program.izvajalci) <- make.unique(paste0(sapply(povprecja.izvajalci.katedra[rownames(program.izvajalci),"NAZIV.PEDAGOGA"], titula.rm), " (", povprecja.izvajalci.katedra[rownames(program.izvajalci),"ime.predmeta"], ")")) - program.izvajalci.redni <- program.izvajalci[program.izvajalci$NACIN_STUDIJA == "1", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - program.izvajalci.izredni <- program.izvajalci[program.izvajalci$NACIN_STUDIJA == "2", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - - # redni - if (nrow(program.izvajalci.redni) > 0) { - - # redni - students of this programme - program.izvajalci.redni.program <- subset(Porocilo.izvajalci, Katedra==katedra & NACIN_STUDIJA == "1" & N_anket > 0)[c("N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - st.ocen <- sum(!is.na(program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ)) - program.izvajalci.redni.program <- program.izvajalci.redni.program[order(program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ, program.izvajalci.redni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.izvajalci.redni.program))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.izvajalci.redni.program) <- make.unique(formatProgImena(paste0(sapply(Porocilo.izvajalci[rownames(program.izvajalci.redni.program), "NAZIV.PEDAGOGA"], titula.rm), " (", Porocilo.izvajalci[rownames(program.izvajalci.redni.program), "ime.predmeta"], ")"), program.izvajalci.redni.program$izvajalec.ocena.SKUPAJ)) - program.izvajalci.redni.program <- rbind(program.izvajalci.redni.program, colMeans(program.izvajalci.redni.program, na.rm=TRUE), c("-", vars.izvajalec$cont$meansFDV)) - program.izvajalci.redni.program1 <- formatNA1(program.izvajalci.redni.program[1:1], decimalke=0, pobarvanka=FDVstopnjaPobarvanka$n.anket, na.repl=".") - program.izvajalci.redni.program2 <- formatNA(program.izvajalci.redni.program[2:8], decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - program.izvajalci.redni.program<-cbind(program.izvajalci.redni.program1,program.izvajalci.redni.program2) - #program.izvajalci.redni.program <- formatNA(program.izvajalci.redni.program, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c(FDVstopnjaPobarvanka$n.anket,as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program.izvajalci.redni.program)[(nrow(program.izvajalci.redni.program)-1):nrow(program.izvajalci.redni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.ocen, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " IPP)}")) - colnames(program.izvajalci.redni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program.izvajalci.redni.program.tex <- c(capture.output(Hmisc::latex(program.izvajalci.redni.program, caption="Povpreja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="A{12cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.izvajalci.redni.tex <- "Ni ocen." - program.izvajalci.redni.program.tex <- "Ni ocen." - } - - # izredni - all students - if (nrow(program.izvajalci.izredni) > 0) { - if (allstudents) { - if (any(is.na(program.izvajalci.izredni))) {opombaIzvIzredni <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opombaIzvIzredni <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.izvajalci.izredni <- program.izvajalci.izredni[order(program.izvajalci.izredni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(program.izvajalci.izredni) <- formatProgImena(rownames(program.izvajalci.izredni), program.izvajalci.izredni$izvajalec.ocena.SKUPAJ) - program.izvajalci.izredni <- rbind(program.izvajalci.izredni, colMeans(program.izvajalci.izredni, na.rm=TRUE), c("-", "-", "-", "-", "-", vars.izvajalec$cont$meansFDV)) - program.izvajalci.izredni <- formatNA(program.izvajalci.izredni, decimalke=c(0,0,0,0,0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c("NE","NE",FDVstopnjaPobarvanka$skupaj,"NE","NE",as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program.izvajalci.izredni)[(nrow(program.izvajalci.izredni)-1):nrow(program.izvajalci.izredni)] <- c("\\hline \\textbf{Povpreje programa}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " predmetov)}")) - colnames(program.izvajalci.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoi", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program.izvajalci.izredni.tex <- c(capture.output(Hmisc::latex(program.izvajalci.izredni, caption="Povpreja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="A{8.9cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opombaIzvIzredni, "}}")))) - } - - # izredni - students of this programme - program.izvajalci.izredni.program <- subset(Porocilo.izvajalci, Katedra==katedra & NACIN_STUDIJA == "2" & N_anket > 0)[c("N_anket",paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")] - st.ocen <- sum(!is.na(program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ)) - program.izvajalci.izredni.program <- program.izvajalci.izredni.program[order(program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ, program.izvajalci.izredni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.izvajalci.izredni.program))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.izvajalci.izredni.program) <- formatProgImena(paste0(sapply(Porocilo.izvajalci[rownames(program.izvajalci.izredni.program), "NAZIV.PEDAGOGA"], titula.rm), " (", Porocilo.izvajalci[rownames(program.izvajalci.izredni.program), "ime.predmeta"], ")"), program.izvajalci.izredni.program$izvajalec.ocena.SKUPAJ) - program.izvajalci.izredni.program <- rbind(program.izvajalci.izredni.program, colMeans(program.izvajalci.izredni.program, na.rm=TRUE), c("-", vars.izvajalec$cont$meansFDV)) - program.izvajalci.izredni.program1 <- formatNA1(program.izvajalci.izredni.program[1:1], decimalke=0, pobarvanka=FDVstopnjaPobarvanka$n.anket, na.repl=".") - program.izvajalci.izredni.program2 <- formatNA(program.izvajalci.izredni.program[2:8], decimalke=c(as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c(as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - program.izvajalci.izredni.program<-cbind(program.izvajalci.izredni.program1,program.izvajalci.izredni.program2) - #program.izvajalci.izredni.program <- formatNA(program.izvajalci.izredni.program, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), pobarvanka=c(FDVstopnjaPobarvanka$n.anket,as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(program.izvajalci.izredni.program)[(nrow(program.izvajalci.izredni.program)-1):nrow(program.izvajalci.izredni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.ocen, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.izvajalci.st, " IPP)}")) - colnames(program.izvajalci.izredni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - program.izvajalci.izredni.program.tex <- c(capture.output(Hmisc::latex(program.izvajalci.izredni.program, caption="Povpreja \\textbf{izvajalcev pri predmetih} (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"), rowlabel.just="A{12cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - } else { - program.izvajalci.izredni.tex <- "Ni ocen." - program.izvajalci.izredni.program.tex <- "Ni ocen." - } - } else { - program.izvajalci.skupaj.vsi.tex <- "Ni ocen." - program.izvajalci.redni.tex <- "Ni ocen." - program.izvajalci.redni.program.tex <- "Ni ocen." - program.izvajalci.izredni.tex <- "Ni ocen." - program.izvajalci.izredni.program.tex <- "Ni ocen." - } - - ## /lecturer course averages/ ## - - - - stopnja <- NULL - ## course averages ## - program.predmeti <- subset(povprecja.predmeti.katedra, Katedra==katedra & N_anket>3) - if (nrow(program.predmeti) > 0) { - stopnja <- names(sort(table(program.predmeti$STOPNJA),decreasing=TRUE))[1] - # faculty averages for courese tables # - if (stopnja==1) { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["1", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["1", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV) - } else if (stopnja==2) { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["2", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["2", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV) - } else { - FDVmeansPredmet_BDorBPpred <- c(FDVpredmeti["skupaj", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct")], vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]) - FDVmeansPredmet_BDorBPpo <- c(FDVpredmeti["skupaj", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu")], vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV) - } - #/faculty averages for courese tables /# - - rownames(program.predmeti) <- make.unique(povprecja.predmeti.katedra[rownames(program.predmeti),"ime.predmeta"]) - program.predmeti.pred.redni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="1", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - program.predmeti.pred.izredni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="2", c("ST_STUD","N_anket","sodelujocih.pct","zavrnjenih.pct","neodzivnih.pct",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - program.predmeti.po.redni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="1", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - program.predmeti.po.izredni <- program.predmeti[program.predmeti$NACIN_STUDIJA=="2", c("ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu","zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - if (nrow(program.predmeti.pred.redni) > 0) { - # PRED - redni - all students - if (allstudents) { - if (any(is.na(program.predmeti.pred.redni))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.pred.redni <- program.predmeti.pred.redni[order(program.predmeti.pred.redni$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.redni$N_anket, decreasing=TRUE),] - rownames(program.predmeti.pred.redni) <- formatProgImena(rownames(program.predmeti.pred.redni), program.predmeti.pred.redni$predmet.ocena.SKUPAJ.pred) - program.predmeti.pred.redni <- rbind(program.predmeti.pred.redni, colMeans(program.predmeti.pred.redni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpred)) - program.predmeti.pred.redni <- formatNA(program.predmeti.pred.redni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - rownames(program.predmeti.pred.redni)[(nrow(program.predmeti.pred.redni)-1):nrow(program.predmeti.pred.redni)] <- c("\\hline \\textbf{Povpreje programa (po predmetih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.redni.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.redni, caption="Ocene predmetov - anketa PRED izpitom (redne izvedbe)", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="A{8.1cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PRED - redni - students of this programme - program.predmeti.pred.redni.program <- subset(Porocilo.predmeti, Katedra==katedra & NACIN_STUDIJA == "1" & N_anket > 0)[c("N_anket",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - st.predmetov <- sum(!is.na(program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.redni.program <- program.predmeti.pred.redni.program[order(program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.redni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.predmeti.pred.redni.program))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.pred.redni.program) <- make.unique(formatProgImena(Porocilo.predmeti[rownames(program.predmeti.pred.redni.program), "ime.predmeta"], program.predmeti.pred.redni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.redni.program <- rbind(program.predmeti.pred.redni.program, colMeans(program.predmeti.pred.redni.program, na.rm=TRUE), unlist(c("-", vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]))) - program.predmeti.pred.redni.program1 <- formatNA1(program.predmeti.pred.redni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.pred.redni.program2 <- formatNA(program.predmeti.pred.redni.program[2:9], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - program.predmeti.pred.redni.program<-cbind(program.predmeti.pred.redni.program1,program.predmeti.pred.redni.program2) - rownames(program.predmeti.pred.redni.program)[(nrow(program.predmeti.pred.redni.program)-1):nrow(program.predmeti.pred.redni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.redni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.redni.program, caption="Povpreja \\textbf{predmetov} (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="A{11cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.predmeti.pred.redni.tex <- "Ni ocen." - program.predmeti.pred.redni.program.tex <- NULL - } - - if (nrow(program.predmeti.pred.izredni) > 0) { - # PRED - izredni - all students - if (allstudents) { - if (any(is.na(program.predmeti.pred.izredni))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.pred.izredni <- program.predmeti.pred.izredni[order(program.predmeti.pred.izredni$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.izredni$N_anket, decreasing=TRUE),] - rownames(program.predmeti.pred.izredni) <- formatProgImena(rownames(program.predmeti.pred.izredni), program.predmeti.pred.izredni$predmet.ocena.SKUPAJ.pred) - program.predmeti.pred.izredni <- rbind(program.predmeti.pred.izredni, colMeans(program.predmeti.pred.izredni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpred)) - program.predmeti.pred.izredni <- formatNA(program.predmeti.pred.izredni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - rownames(program.predmeti.pred.izredni)[(nrow(program.predmeti.pred.izredni)-1):nrow(program.predmeti.pred.izredni)] <- c("\\hline \\textbf{Povpreje programa (po predmetih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.izredni.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.izredni, caption="Povpreja \\textbf{predmetov} (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="A{8.1cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PRED - izredni - students of this programme - program.predmeti.pred.izredni.program <- subset(Porocilo.predmeti, Katedra==katedra & NACIN_STUDIJA == "2" & N_anket > 0)[c("N_anket",paste0(vars.predmet$cont$pred,"_mean"),"predmet.ocena.SKUPAJ.pred")] - st.predmetov <- sum(!is.na(program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred)) - program.predmeti.pred.izredni.program <- program.predmeti.pred.izredni.program[order(program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred, program.predmeti.pred.izredni.program$N_anket, decreasing=TRUE),] - if (any(is.na(program.predmeti.pred.izredni.program))) {opomba <- c(paste0(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opomba <- paste("- Podatek je manj pomemben ali teko izraunljiv.")} - rownames(program.predmeti.pred.izredni.program) <- formatProgImena(Porocilo.predmeti[rownames(program.predmeti.pred.izredni.program), "ime.predmeta"], program.predmeti.pred.izredni.program$predmet.ocena.SKUPAJ.pred) - program.predmeti.pred.izredni.program <- rbind(program.predmeti.pred.izredni.program, colMeans(program.predmeti.pred.izredni.program, na.rm=TRUE), unlist(c("-", vars.predmet$cont$meansFDV[c(vars.predmet$cont$pred, "povprecje.ocen.pred")]))) - program.predmeti.pred.izredni.program1 <- formatNA1(program.predmeti.pred.izredni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.pred.izredni.program2 <- formatNA(program.predmeti.pred.izredni.program[2:9], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$pred]),decimalkePredmSkupaj), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$pred], povprecje.ocen.pred=pobarvankaPredmSkupaj), na.repl=".") - program.predmeti.pred.izredni.program<-cbind(program.predmeti.pred.izredni.program1,program.predmeti.pred.izredni.program2) - rownames(program.predmeti.pred.izredni.program)[(nrow(program.predmeti.pred.izredni.program)-1):nrow(program.predmeti.pred.izredni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.pred, " predmetov)}")) - colnames(program.predmeti.pred.izredni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$pred])), "\\textbf{Skupaj}")) - program.predmeti.pred.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.pred.izredni.program, caption="Povpreja \\textbf{predmetov} (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$pred)),"|c"), rowlabel.just="A{11cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } else { - program.predmeti.pred.izredni.tex <- "Ni ocen." - program.predmeti.pred.izredni.program.tex <- NULL - } - - if (nrow(program.predmeti.po.redni) > 0) { - # PO - redni - all students - if (allstudents) { - if (any(is.na(program.predmeti.po.redni))) {opomba <- c(paste0(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv."))} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.po.redni <- program.predmeti.po.redni[order(program.predmeti.po.redni$predmet.ocena.SKUPAJ.po, program.predmeti.po.redni$N_anket_po_izpitu, decreasing=TRUE),] - rownames(program.predmeti.po.redni) <- formatProgImena(rownames(program.predmeti.po.redni), program.predmeti.po.redni$predmet.ocena.SKUPAJ.po) - program.predmeti.po.redni <- rbind(program.predmeti.po.redni, colMeans(program.predmeti.po.redni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpo)) - program.predmeti.po.redni <- formatNA(program.predmeti.po.redni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program.predmeti.po.redni)[(nrow(program.predmeti.po.redni)-1):nrow(program.predmeti.po.redni)] <- c("\\hline \\textbf{Povpreje programa (po predmetih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.redni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni, caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$po)),"|c","|c"), rowlabel.just="A{9.4cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PO - redni - students of this programme - program.predmeti.po.redni.program <- subset(Porocilo.predmeti, Katedra==katedra & NACIN_STUDIJA == "1" & (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c("N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po)) - program.predmeti.po.redni.program <- program.predmeti.po.redni.program[order(program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po, program.predmeti.po.redni.program$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.redni.program))) {opomba <- c(paste0(". Podatek ni prikazan zaradi majhnega tevila enot.","- Podatek je manj pomemben ali teko izraunljiv.\\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih komponent (glej metodoloka pojasnila): {\\color{Orange}\\textbf{Oranno}} so oznaena {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} pa {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.3}}) in (nad {\\color{BrickRed}\\textbf{3.7}})."))} else {opomba <- c(paste("- Podatek je manj pomemben ali teko izraunljiv.\\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih komponent (glej metodoloka pojasnila): {\\color{Orange}\\textbf{Oranno}} so oznaena {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} pa {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.3}}) in (nad {\\color{BrickRed}\\textbf{3.7}})."))} - rownames(program.predmeti.po.redni.program) <- formatProgImena(Porocilo.predmeti[rownames(program.predmeti.po.redni.program), "ime.predmeta"], program.predmeti.po.redni.program$predmet.ocena.SKUPAJ.po) - program.predmeti.po.redni.program <- rbind(program.predmeti.po.redni.program, colMeans(program.predmeti.po.redni.program, na.rm=TRUE), unlist(c("-", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.redni.program1 <- formatNA1(program.predmeti.po.redni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.redni.program2 <- formatNA(program.predmeti.po.redni.program[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.redni.program<-cbind(program.predmeti.po.redni.program1,program.predmeti.po.redni.program2) - rownames(program.predmeti.po.redni.program)[(nrow(program.predmeti.po.redni.program)-1):nrow(program.predmeti.po.redni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.redni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.program<-program.predmeti.po.redni.program[c(1,3,4,5,6,2,7)] - program.predmeti.po.redni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program, caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c|","|c","c"), rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - - - ###SORTIRANJE PO USTREZNOSTI KREDITNIH TOK - program.predmeti.po.redni.program.krediti <- subset(Porocilo.predmeti, Katedra==katedra & NACIN_STUDIJA == "1" & (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c("N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.redni.program.krediti <- program.predmeti.po.redni.program.krediti[order(program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean, program.predmeti.po.redni.program.krediti$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.redni.program.krediti))) {opomba <- c(paste(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv.\\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih komponent (glej metodoloka pojasnila): {\\color{Orange}\\textbf{Oranno}} so oznaena {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} pa {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.3}}) in (nad {\\color{BrickRed}\\textbf{3.7}})."))} else {opomba <- c(paste("- Podatek je manj pomemben ali teko izraunljiv.\\newline * Ocene za ustreznost kreditnih tok se razlikujejo od ostalih komponent (glej metodoloka pojasnila): {\\color{Orange}\\textbf{Oranno}} so oznaena {\\color{Orange}\\textbf{opozorilna}} odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in ({\\color{Orange}\\textbf{3.4-3.6}}), {\\color{BrickRed}\\textbf{rdee}} pa {\\color{BrickRed}\\textbf{kritina}} odstopanja (pod {\\color{BrickRed}\\textbf{2.3}}) in (nad {\\color{BrickRed}\\textbf{3.7}})."))} - rownames(program.predmeti.po.redni.program.krediti) <- formatProgImena(Porocilo.predmeti[rownames(program.predmeti.po.redni.program.krediti), "ime.predmeta"], program.predmeti.po.redni.program.krediti$predmet.ocena.krediti_mean) - program.predmeti.po.redni.program.krediti <- rbind(program.predmeti.po.redni.program.krediti, colMeans(program.predmeti.po.redni.program.krediti, na.rm=TRUE), unlist(c("-", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.redni.program.krediti1 <- formatNA1(program.predmeti.po.redni.program.krediti[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.redni.program.krediti2 <- formatNA(program.predmeti.po.redni.program.krediti[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.redni.program.krediti<-cbind(program.predmeti.po.redni.program.krediti1,program.predmeti.po.redni.program.krediti2) - rownames(program.predmeti.po.redni.program.krediti)[(nrow(program.predmeti.po.redni.program.krediti)-1):nrow(program.predmeti.po.redni.program.krediti)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.redni.program.krediti) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.redni.program.krediti<-program.predmeti.po.redni.program.krediti[c(1,3,4,5,6,2,7)] - program.predmeti.po.redni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.redni.program.krediti, caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - ####### - - - } else { - program.predmeti.po.redni.program.krediti.tex<- NULL - program.predmeti.po.redni.tex <- NULL - program.predmeti.po.redni.program.tex <- NULL - } - - if (nrow(program.predmeti.po.izredni) > 0) { - # PO - izredni - all students - if (allstudents) { - if (any(is.na(program.predmeti.po.izredni))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv.")} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - program.predmeti.po.izredni <- program.predmeti.po.izredni[order(program.predmeti.po.izredni$predmet.ocena.SKUPAJ.po, program.predmeti.po.izredni$N_anket_po_izpitu, decreasing=TRUE),] - rownames(program.predmeti.po.izredni) <- formatProgImena(rownames(program.predmeti.po.izredni), program.predmeti.po.izredni$predmet.ocena.SKUPAJ.po) - program.predmeti.po.izredni <- rbind(program.predmeti.po.izredni, colMeans(program.predmeti.po.izredni, na.rm=TRUE), unlist(FDVmeansPredmet_BDorBPpo)) - program.predmeti.po.izredni <- formatNA(program.predmeti.po.izredni, decimalke=c(0,0,0,0,0,as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c("NE", "NE", "NE", "NE", "NE", vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program.predmeti.po.izredni)[(nrow(program.predmeti.po.izredni)-1):nrow(program.predmeti.po.izredni)] <- c("\\hline \\textbf{Povpreje programa (po predmetih)}", paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni) <- latex.rotate(c("t. vpisanih", "t. odgovorov", "\\% odgovorov", "\\% zavrnitev", "\\% nesodelujoih", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni, caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c(rep_len("c",4),"c|",rep_len("c", length(vars.predmet$cont$po)),"|c","|c"), rowlabel.just="A{9.4cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - # PO - izredni - students of this programme - program.predmeti.po.izredni.program <- subset(Porocilo.predmeti, Katedra==katedra & NACIN_STUDIJA == "2" & (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c("N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po)) - program.predmeti.po.izredni.program <- program.predmeti.po.izredni.program[order(program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po, program.predmeti.po.izredni.program$N_anket_po_izpitu, decreasing=TRUE),] - if (nrow(program.predmeti.po.izredni.program)>0) { - if (any(is.na(program.predmeti.po.izredni.program))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv.")} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.po.izredni.program) <- formatProgImena(Porocilo.predmeti[rownames(program.predmeti.po.izredni.program), "ime.predmeta"], program.predmeti.po.izredni.program$predmet.ocena.SKUPAJ.po) - program.predmeti.po.izredni.program <- rbind(program.predmeti.po.izredni.program, colMeans(program.predmeti.po.izredni.program, na.rm=TRUE), unlist(c("-", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.izredni.program1 <- formatNA1(program.predmeti.po.izredni.program[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.izredni.program2 <- formatNA(program.predmeti.po.izredni.program[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.izredni.program<-cbind(program.predmeti.po.izredni.program1,program.predmeti.po.izredni.program2) - rownames(program.predmeti.po.izredni.program)[(nrow(program.predmeti.po.izredni.program)-1):nrow(program.predmeti.po.izredni.program)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.program<-program.predmeti.po.izredni.program[c(1,3,4,5,6,2,7)] - program.predmeti.po.izredni.program.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program, caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - - - program.predmeti.po.izredni.program.krediti <- subset(Porocilo.predmeti, Katedra==katedra & NACIN_STUDIJA == "2" & (N_anket >= minEnot | N_anket_po_izpitu >= minEnot))[c("N_anket_po_izpitu",paste0(vars.predmet$cont$po,"_mean"),"predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - st.predmetov <- sum(!is.na(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean)) - program.predmeti.po.izredni.program.krediti <- program.predmeti.po.izredni.program.krediti[order(program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean, program.predmeti.po.izredni.program.krediti$N_anket_po_izpitu, decreasing=TRUE),] - if (any(is.na(program.predmeti.po.izredni.program.krediti))) {opomba <- c(". Podatek ni prikazan zaradi majhnega tevila enot.","\\newline - Podatek je manj pomemben ali teko izraunljiv.")} else {opomba <- "- Podatek je manj pomemben ali teko izraunljiv."} - rownames(program.predmeti.po.izredni.program.krediti) <- formatProgImena(Porocilo.predmeti[rownames(program.predmeti.po.izredni.program.krediti), "ime.predmeta"], program.predmeti.po.izredni.program.krediti$predmet.ocena.krediti_mean) - program.predmeti.po.izredni.program.krediti <- rbind(program.predmeti.po.izredni.program.krediti, colMeans(program.predmeti.po.izredni.program.krediti, na.rm=TRUE), unlist(c("-", vars.predmet$cont$meansFDV[c(vars.predmet$cont$po, "povprecje.ocen.po")], vars.predmet$krediti$meansFDV))) - program.predmeti.po.izredni.program.krediti1 <- formatNA1(program.predmeti.po.izredni.program.krediti[1:1], decimalke=c(0), pobarvanka=c(FDVstopnjaPobarvanka$n.anket), na.repl=".") - program.predmeti.po.izredni.program.krediti2 <- formatNA(program.predmeti.po.izredni.program.krediti[2:7], decimalke=c(as.numeric(vars.predmet$cont$decimalke[vars.predmet$cont$po]),decimalkePredmSkupaj,as.numeric(vars.predmet$krediti$decimalke)), pobarvanka=c(vars.predmet$cont$pobarvanka[vars.predmet$cont$po], povprecje.ocen.po=pobarvankaPredmSkupaj, vars.predmet$krediti$pobarvanka), na.repl=".") - program.predmeti.po.izredni.program.krediti<-cbind(program.predmeti.po.izredni.program.krediti1,program.predmeti.po.izredni.program.krediti2) - rownames(program.predmeti.po.izredni.program.krediti)[(nrow(program.predmeti.po.izredni.program.krediti)-1):nrow(program.predmeti.po.izredni.program.krediti)] <- c(paste0("\\hline \\textbf{Povpreje programa (", st.predmetov, " predmetov)}"), paste0("\\hline \\textbf{Povpreje ", fakulteta, " (", kvantili.predmeti.st.po, " predmetov)}")) - colnames(program.predmeti.po.izredni.program.krediti) <- latex.rotate(c("t. odgovorov", Hmisc::latexTranslate(as.character(vars.predmet$cont$ime.kratko[vars.predmet$cont$po])), "\\textbf{Skupaj}", as.character(vars.predmet$krediti$ime.kratko))) - program.predmeti.po.izredni.program.krediti<-program.predmeti.po.izredni.program.krediti[c(1,3,4,5,6,2,7)] - program.predmeti.po.izredni.program.krediti.tex <- c(capture.output(Hmisc::latex(program.predmeti.po.izredni.program.krediti, caption="Povpreja \\textbf{predmetov} (anketa PO izpitu), sortirana po \\textbf{Skupaj}", rowlabel="", file="", where="H", multicol=FALSE, longtable=TRUE, lines.page=1000, - col.just=c("c|",rep_len("c", length(vars.predmet$cont$po[-1])),"|c","|c","c"), rowlabel.just="A{12.5cm}", - insert.bottom=paste0("{\\footnotesize \\textit{", opomba, "}}")))) - } - - - } else { - program.predmeti.po.izredni.tex <- NULL - program.predmeti.po.izredni.program.krediti.tex<- NULL - } - - } else { - program.predmeti.pred.redni.tex <- "Ni ocen." - program.predmeti.pred.izredni.tex <- "Ni ocen." - program.predmeti.po.redni.tex <- NULL - program.predmeti.po.redni.program.krediti.tex <- NULL - program.predmeti.po.izredni.tex <- NULL - program.predmeti.po.izredni.program.krediti.tex <- NULL - program.predmeti.pred.redni.program.tex <- "Ni ocen." - program.predmeti.po.redni.program.tex <- NULL - program.predmeti.pred.izredni.program.tex <- "Ni ocen." - program.predmeti.po.izredni.program.tex <- NULL - } - ## /course averages/ ## - - - - - - - ############################################################################ - ##POGLAVJE v izpisu za tudijske programe: Povpreja po tudijskih programih - ###DODAJANJE POVPREIJ PO TUDIJSKIH PROGRAMIH - ############################################################################ - program.1stopnja <- aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja<- cbind(program.1stopnja, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program1<-stopnja_program - colnames(stopnja_program1)[4] <- "N_anket" - rownames(stopnja_program1) <- stopnja_program1[rownames(stopnja_program1),"student.program.ime"] - - if (nrow(stopnja_program1) > 0) { - program_BD_pred.skupaj <- merge(stopnja_program1, program.1stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } else {program_BD_pred.skupaj <- stopnja_program1} - - if (nrow(program_BD_pred.skupaj) > 0 & any(program_BD_pred.skupaj$STOPNJA==1, na.rm=TRUE)) { - program_BD_pred.skupaj<-subset(program_BD_pred.skupaj, STOPNJA==1) - program_BD_pred.skupaj<- program_BD_pred.skupaj[, !(colnames(program_BD_pred.skupaj) %in% c("STOPNJA"))] - # if (gregexpr(pattern = "Magistrski",program_BD_pred.skupaj$program.studentov.ime)[[1]][1] == 1){ - # program_BD_pred.skupaj<-program_BD_pred.skupaj[- grep("Magistrski", program_BD_pred.skupaj$program.studentov.ime),] - - #} - st.programov <- length(program_BD_pred.skupaj$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_pred.skupaj) <- - formatProgImena(program_BD_pred.skupaj$program.studentov.ime, program_BD_pred.skupaj$predmet.ocena.SKUPAJ) - program_BD_pred.skupaj <- - program_BD_pred.skupaj[order(program_BD_pred.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.skupaj) <- - program_BD_pred.skupaj$program.studentov.ime - program_BD_pred.skupaj <- - program_BD_pred.skupaj[order(as.character(sapply(rownames(program_BD_pred.skupaj),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.skupaj <- - rbind(program_BD_pred.skupaj, c(colMeans(program_BD_pred.skupaj[1:1]), - colMeans(program_BD_pred.skupaj[2:ncol(program_BD_pred.skupaj)], na.rm=TRUE))) - program_BD_pred.skupaj <- - formatNA(program_BD_pred.skupaj, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.skupaj )[nrow(program_BD_pred.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov," programov)}")) - colnames(program_BD_pred.skupaj ) <- - latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.skupaj.tex <- capture.output(Hmisc::latex(program_BD_pred.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - program_BD_pred.skupaj.tex <- "Ni ocen." - } - - - - - #PROGRAMI: ANKETA PO IZPITU - stopnja_program.PO<- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO <- - stopnja_program.PO[stopnja_program.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (any(!is.na(stopnja_program.PO))){ - stopnja_program.PO <- - aggregate(stopnja_program.PO$predmet.sifra, - by=stopnja_program.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.pred<-merge(test.po, stopnja_program.PO, by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program.PO <- stopnja_program.PO} - - program.1stopnja.PO <- - aggregate(data.predmeti[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO <- - cbind(program.1stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO1<-stopnja_program.PO - if (!is.null(stopnja_program.PO1)) { - colnames(stopnja_program.PO1)[4] <- "N_anket" - rownames(program.1stopnja.PO) <- program.1stopnja.PO[rownames(program.1stopnja.PO),"student.program.ime"] - } - - if (nrow(program.1stopnja.PO) > 0 & !is.null(stopnja_program.PO1)) { - program_BD_po.skupaj <- merge(stopnja_program.PO1, program.1stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - - if (nrow(program_BD_po.skupaj) > 0 & any(program_BD_po.skupaj$STOPNJA==1, na.rm=TRUE)) { - program_BD_po.skupaj<-subset(program_BD_po.skupaj, STOPNJA==1) - program_BD_po.skupaj<- program_BD_po.skupaj[, !(colnames(program_BD_po.skupaj) %in% c("STOPNJA"))] - program_BD_po.skupaj<- program_BD_po.skupaj[c(1,2,3,4,5,6,7,9,8)] - #if (gregexpr(pattern = "Magistrski",program_BD_po.skupaj$program.studentov.ime)[[1]][1] == 1){ - # program_BD_po.skupaj<-program_BD_po.skupaj[- grep("Magistrski", program_BD_po.skupaj$program.studentov.ime),] - - #} - st.programov1 <- length(program_BD_po.skupaj$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_po.skupaj) <- - formatProgImena(program_BD_po.skupaj$program.studentov.ime, program_BD_po.skupaj$predmet.ocena.SKUPAJ) - program_BD_po.skupaj <- - program_BD_po.skupaj[order(program_BD_po.skupaj$predmet.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj) <- program_BD_po.skupaj$program.studentov.ime - program_BD_po.skupaj <- - program_BD_po.skupaj[order(as.character(sapply(rownames(program_BD_po.skupaj))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj <- - rbind(program_BD_po.skupaj, c(colMeans(program_BD_po.skupaj[1:1]), - colMeans(program_BD_po.skupaj[2:ncol(program_BD_po.skupaj)], na.rm=TRUE))) - program_BD_po.skupaj <- - formatNA(program_BD_po.skupaj, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.skupaj )[nrow(program_BD_po.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj) <- - latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj<-program_BD_po.skupaj[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} odstopanja - ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.skupaj.tex <- "Ni ocen." - } - - - - # ANKETA PO IZPITU SORITRANA PO USTREZNOSTI KREDITNIH TOK - stopnja_program.PO.krediti <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program.PO.krediti<-stopnja_program.PO.krediti[stopnja_program.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (nrow(stopnja_program.PO.krediti) > 0) { - stopnja_program.PO.krediti<-aggregate(stopnja_program.PO.krediti$predmet.sifra, - by=stopnja_program.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program.PO.krediti.pred<-merge(test.po, stopnja_program.PO.krediti, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program.PO.krediti.pred <- stopnja_program.PO.krediti} - - program.1stopnja.PO.krediti <- - aggregate(data.predmeti[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.1stopnja.PO.krediti <- - cbind(program.1stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.1stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program.PO.krediti1 <- stopnja_program.PO.krediti - colnames(stopnja_program.PO.krediti1)[4] <- "N_anket" - rownames(program.1stopnja.PO.krediti) <- program.1stopnja.PO.krediti[rownames(program.1stopnja.PO.krediti),"student.program.ime"] - - if (nrow(program.1stopnja.PO.krediti) > 0 & nrow(stopnja_program.PO.krediti1) > 0) { - program_BD_po.skupaj.krediti <- merge(stopnja_program.PO.krediti1, program.1stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - - } - if (nrow(program_BD_po.skupaj.krediti) > 0 & any(program_BD_po.skupaj.krediti$STOPNJA==1, na.rm=TRUE)) { - program_BD_po.skupaj.krediti<-subset(program_BD_po.skupaj.krediti, STOPNJA==1) - program_BD_po.skupaj.krediti<- program_BD_po.skupaj.krediti[, !(colnames(program_BD_po.skupaj.krediti) %in% c("STOPNJA"))] - program_BD_po.skupaj.krediti<- program_BD_po.skupaj.krediti[c(1,2,3,4,5,6,7,9,8)] - #if (gregexpr(pattern = "Magistrski",program_BD_po.skupaj.krediti$program.studentov.ime)[[1]][1] == 1){ - # program_BD_po.skupaj.krediti<-program_BD_po.skupaj.krediti[- grep("Magistrski", program_BD_po.skupaj.krediti$program.studentov.ime),] - - #} - st.programov1<-length(program_BD_po.skupaj.krediti$program.studentov.ime) - if (sortByAverage) { - rownames(program_BD_po.skupaj.krediti) <- - formatProgImena(program_BD_po.skupaj.krediti$program.studentov.ime, program_BD_po.skupaj.krediti$predmet.ocena.krediti) - program_BD_po.skupaj.krediti <- - program_BD_po.skupaj.krediti[order(program_BD_po.skupaj.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.skupaj.krediti) <- program_BD_po.skupaj.krediti$program.studentov.ime - program_BD_po.skupaj.krediti <- - program_BD_po.skupaj.krediti[order(as.character(sapply(rownames(program_BD_po.skupaj.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.skupaj.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.skupaj.krediti <- - rbind(program_BD_po.skupaj.krediti, c(colMeans(program_BD_po.skupaj.krediti[1:1]), - colMeans(program_BD_po.skupaj.krediti[2:ncol(program_BD_po.skupaj.krediti)], na.rm=TRUE))) - program_BD_po.skupaj.krediti <- - formatNA(program_BD_po.skupaj.krediti, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.skupaj.krediti )[nrow(program_BD_po.skupaj.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov1," programov)}")) - colnames(program_BD_po.skupaj.krediti ) <- - latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.skupaj.krediti <- program_BD_po.skupaj.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.skupaj.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.skupaj.krediti, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}). }}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.skupaj.krediti.tex <- "Ni ocen." - } - ## //program_BD_po.skupaj.krediti.tex// ## - - - - ##################### - # PODIPLOMSKI TUDIJ - ##################### - #FAKULTETA: IZPIS PROGRAMOV ZA DRUGO STOPNJO - #PODIPLOMSKI PROGRAM - stopnja_program_podipl <- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"),"program.studentov", - "program.studentov.ime","N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl<-stopnja_program_podipl[stopnja_program_podipl$N_anket >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (nrow(stopnja_program_podipl) >0) { - stopnja_program_podipl<-aggregate(stopnja_program_podipl$predmet.sifra, - by=stopnja_program_podipl[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.pred<-merge(test.pred, stopnja_program_podipl, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program_podipl <- stopnja_program_podipl} - - - #ANKETA PRED IZPITOM - program.2stopnja<-aggregate(data.predmeti[vars.predmet.vars], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.2stopnja<- cbind(program.2stopnja, predmet.ocena.SKUPAJ=rowMeans(program.2stopnja[vars.predmet.vars], na.rm=TRUE)) - stopnja_program_podipl1<-stopnja_program_podipl - colnames(stopnja_program_podipl1)[4] <- "N_anket" - rownames(stopnja_program_podipl1) <- stopnja_program_podipl1[rownames(stopnja_program_podipl1),"student.program.ime"] - - ##Izloimo Neznan program - #stopnja_program_podipl1<- stopnja_program_podipl1[!stopnja_program_podipl1$program.studentov.ime == "Neznan program", ] - - if (nrow(stopnja_program_podipl1) > 0) { - program_BD_pred.podipl <- merge(stopnja_program_podipl1, program.2stopnja, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } else {program_BD_pred.podipl <- stopnja_program_podipl1} - - if (nrow(program_BD_pred.podipl) > 0 & any(program_BD_pred.podipl$STOPNJA==2, na.rm=TRUE)) { - program_BD_pred.podipl<-subset(program_BD_pred.podipl, STOPNJA==2) - program_BD_pred.podipl<- program_BD_pred.podipl[, !(colnames(program_BD_pred.podipl) %in% c("STOPNJA"))] - st.programov2<-length(program_BD_pred.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_pred.podipl) <- - formatProgImena(program_BD_pred.podipl$program.studentov.ime, program_BD_pred.podipl$predmet.ocena.SKUPAJ) - program_BD_pred.podipl <- - program_BD_pred.podipl[order(program_BD_pred.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_pred.podipl) <- program_BD_pred.podipl$program.studentov.ime - program_BD_pred.podipl <- - program_BD_pred.podipl[order(as.character(sapply(rownames(program_BD_pred.podipl),titula.rm)), decreasing=FALSE), - !(colnames(program_BD_pred.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_pred.podipl <- - rbind(program_BD_pred.podipl, c(colMeans(program_BD_pred.podipl[1:1]), - colMeans(program_BD_pred.podipl[2:ncol(program_BD_pred.podipl)], na.rm=TRUE))) - program_BD_pred.podipl <- - formatNA(program_BD_pred.podipl, decimalke=c(0,as.numeric(decimalno_mestoPRED),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(pobarvanka.PRED),pobarvankaIzvSkupaj), na.repl=".") - rownames(program_BD_pred.podipl )[nrow(program_BD_pred.podipl)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov2," programov)}")) - colnames(program_BD_pred.podipl ) <- - latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPRED)), "\\textbf{Skupaj}")) - program_BD_pred.podipl.tex <- capture.output(Hmisc::latex(program_BD_pred.podipl, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PRED izpitom), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{10cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPRED)),"|c"))) - } else { - program_BD_pred.podipl.tex <- "Ni ocen." - } - ############### - - - #ANKETA PO IZPITU - stopnja_program_podipl.PO<- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra", - paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO<-stopnja_program_podipl.PO[stopnja_program_podipl.PO$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - if (any(!is.na(stopnja_program_podipl.PO))){ - stopnja_program_podipl.PO<-aggregate(stopnja_program_podipl.PO$predmet.sifra, - by=stopnja_program_podipl.PO[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.pred<-merge(test.po, stopnja_program_podipl.PO, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } else {stopnja_program_podipl.PO <- NULL} - - program.22stopnja.PO<-aggregate(data.predmeti[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO<- - cbind(program.22stopnja.PO, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO1<-stopnja_program_podipl.PO - if (!is.null(stopnja_program_podipl.PO1)) { - colnames(stopnja_program_podipl.PO1)[4] <- "N_anket" - rownames(program.22stopnja.PO) <- program.22stopnja.PO[rownames(program.22stopnja.PO),"student.program.ime"] - } - - if (nrow(program.22stopnja.PO) > 0 & !is.null(stopnja_program_podipl.PO1)) { - program_BD_po.podipl <- merge(stopnja_program_podipl.PO1, program.22stopnja.PO, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - - if (nrow(program_BD_po.podipl) > 0 & any(program_BD_po.podipl$STOPNJA==2, na.rm=TRUE)) { - program_BD_po.podipl<-subset(program_BD_po.podipl, STOPNJA==2) - program_BD_po.podipl<- program_BD_po.podipl[, !(colnames(program_BD_po.podipl) %in% c("STOPNJA"))] - program_BD_po.podipl<- program_BD_po.podipl[c(1,2,3,4,5,6,7,9,8)] - st.programov3<-length(program_BD_po.podipl$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl) <- - formatProgImena(program_BD_po.podipl$program.studentov.ime, program_BD_po.podipl$predmet.ocena.SKUPAJ) - program_BD_po.podipl <- - program_BD_po.podipl[order(program_BD_po.podipl$predmet.ocena.SKUPAJ, decreasing=TRUE), !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl) <- program_BD_po.podipl$program.studentov.ime - program_BD_po.podipl <- - program_BD_po.podipl[order(as.character(sapply(rownames(program_BD_po.podipl))), decreasing=FALSE), - !(colnames(program_BD_po.podipl) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl <- - rbind(program_BD_po.podipl, c(colMeans(program_BD_po.podipl[1:1]), - colMeans(program_BD_po.podipl[2:ncol(program_BD_po.podipl)], na.rm=TRUE))) - program_BD_po.podipl <- - formatNA(program_BD_po.podipl, decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl)[nrow(program_BD_po.podipl)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl) <- - latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}",as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl<-program_BD_po.podipl[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.tex <- capture.output(Hmisc::latex(program_BD_po.podipl, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} odstopanja - (pod {\\color{BrickRed}\\textbf{2.4}}) in - (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.podipl.tex <- "Ni ocen." - } - - - - ############################ - #ANKETA PO IZPITU SORTIRANA PO USTRETNOSTI KREDITNIH TOK - stopnja_program_podipl.PO.krediti<- merge(povprecja.predmeti[c("predmet.sifra","STOPNJA")], - povprecja.predmeti.programi[c("predmet.sifra",paste0(vars.predmet$cont$vars,"_mean"), - paste0(vars.predmet$krediti$vars,"_mean"), - "program.studentov","program.studentov.ime", - "N_anket","N_anket_po_izpitu" )], - by="predmet.sifra", sort=FALSE) - stopnja_program_podipl.PO.krediti <- - stopnja_program_podipl.PO.krediti[stopnja_program_podipl.PO.krediti$N_anket_po_izpitu >=minEnot, - c("predmet.sifra","program.studentov","program.studentov.ime","STOPNJA")] - - if (nrow(stopnja_program_podipl.PO.krediti) > 0) { - stopnja_program_podipl.PO.krediti <- - aggregate(stopnja_program_podipl.PO.krediti$predmet.sifra, - by=stopnja_program_podipl.PO.krediti[c("program.studentov","program.studentov.ime","STOPNJA")], function(x) length(unique(x))) - stopnja_program_podipl.PO.krediti.pred <- merge(test.po, stopnja_program_podipl.PO.krediti, - by.x="student.program.ime",by.y="program.studentov.ime", all=TRUE) - } - - program.22stopnja.PO.krediti <- aggregate(data.predmeti[c(vars.predmet$cont$po,"predmet.ocena.krediti")], - by=data.predmeti[c("student.program.sifra","student.program.ime")], FUN=mean, na.rm=TRUE) - program.22stopnja.PO.krediti <- - cbind(program.22stopnja.PO.krediti, predmet.ocena.SKUPAJ=rowMeans(program.22stopnja.PO.krediti[vars.predmet$cont$po[-1]], na.rm=TRUE)) - stopnja_program_podipl.PO.krediti1<-stopnja_program_podipl.PO.krediti - - - colnames(stopnja_program_podipl.PO.krediti1)[4] <- "N_anket" - rownames(program.22stopnja.PO.krediti) <- program.22stopnja.PO.krediti[rownames(program.22stopnja.PO.krediti),"student.program.ime"] - - if (nrow(program.22stopnja.PO.krediti) > 0 & nrow(stopnja_program_podipl.PO.krediti1) > 0) { - program_BD_po.podipl.krediti <- merge(stopnja_program_podipl.PO.krediti1, program.22stopnja.PO.krediti, - by.x=c("program.studentov","program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - } - if (nrow(program_BD_po.podipl.krediti) > 0 & any(program_BD_po.podipl.krediti$STOPNJA==2, na.rm=TRUE)) { - program_BD_po.podipl.krediti<-subset(program_BD_po.podipl.krediti, STOPNJA==2) - program_BD_po.podipl.krediti<- program_BD_po.podipl.krediti[, !(colnames(program_BD_po.podipl.krediti) %in% c("STOPNJA"))] - program_BD_po.podipl.krediti<- program_BD_po.podipl.krediti[c(1,2,3,4,5,6,7,9,8)] - st.programov3<-length(program_BD_po.podipl.krediti$program.studentov.ime) - - if (sortByAverage) { - rownames(program_BD_po.podipl.krediti) <- - formatProgImena(program_BD_po.podipl.krediti$program.studentov.ime, program_BD_po.podipl.krediti$predmet.ocena.krediti) - program_BD_po.podipl.krediti <- - program_BD_po.podipl.krediti[order(program_BD_po.podipl.krediti$predmet.ocena.krediti, decreasing=TRUE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } else { # sort by name - rownames(program_BD_po.podipl.krediti) <- program_BD_po.podipl.krediti$program.studentov.ime - program_BD_po.podipl.krediti <- - program_BD_po.podipl.krediti[order(as.character(sapply(rownames(program_BD_po.podipl.krediti))), decreasing=FALSE), - !(colnames(program_BD_po.podipl.krediti) %in% c("program.studentov", "program.studentov.ime"))] # sort and drop unneeded columns - } - program_BD_po.podipl.krediti <- - rbind(program_BD_po.podipl.krediti, c(colMeans(program_BD_po.podipl.krediti[1:1]), - colMeans(program_BD_po.podipl.krediti[2:ncol(program_BD_po.podipl.krediti)], na.rm=TRUE))) - program_BD_po.podipl.krediti <- - formatNA(program_BD_po.podipl.krediti, - decimalke=c(0,as.numeric(decimalno_mestoPO),decimalkeIzvSkupaj,as.numeric(vars.predmet$krediti$decimalke)), - pobarvanka=c("NE", as.character(pobarvanka.PO),pobarvankaIzvSkupaj,vars.predmet$krediti$pobarvanka), na.repl=".") - rownames(program_BD_po.podipl.krediti )[nrow(program_BD_po.podipl.krediti)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov3," programov)}")) - colnames(program_BD_po.podipl.krediti ) <- - latex.rotate(c("t. predmetov", Hmisc::latexTranslate(as.character(imena_stolpcevPO)), "\\textbf{Skupaj}", - as.character(vars.predmet$krediti$ime.kratko))) - program_BD_po.podipl.krediti<-program_BD_po.podipl.krediti[c(1,3,4,5,6,2,7)] - program_BD_po.podipl.krediti.tex <- capture.output(Hmisc::latex(program_BD_po.podipl.krediti, - caption="Povpreja \\textbf{predmetov} po tudijskih programih - (anketa PO izpitu), sortirana po \\textbf{Ustreznost KT}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{13cm}", - multicol=FALSE, - longtable=FALSE, - insert.bottom=paste("{\\footnotesize \\textit{* - {\\color{Orange}\\textbf{Oranno}} - so oznaena {\\color{Orange}\\textbf{opozorilna}} - odstopanja ({\\color{Orange}\\textbf{2.4-2.6}}) in - ({\\color{Orange}\\textbf{3.4-3.6}}), - {\\color{BrickRed}\\textbf{rdee}} pa - {\\color{BrickRed}\\textbf{kritina}} - odstopanja (pod {\\color{BrickRed}\\textbf{2.4}}) - in (nad {\\color{BrickRed}\\textbf{3.6}}).}}"), - col.just=c("c|",rep_len("c", length(imena_stolpcevPO[-1])),"|c","|c","c"))) - } else { - program_BD_po.podipl.krediti.tex <- "Ni ocen." - } - - ##################################### - - ####### - # IPP - ####### - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA - - if (nrow(izv.predmet) > 0) { - stopnja_izvajalec.skupaj <- merge(proggIZ.tmp, progMeanIzv.fak1, - by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.skupaj <- - stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.skupaj <- - merge(stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], - by="program.studentov.ime", sort=FALSE) - - program_dodiplomski_studij <- stopnja_izvajalec.skupaj - stopnja_izvajalec.skupaj <- subset(stopnja_izvajalec.skupaj, STOPNJA==1) - stopnja_izvajalec.skupaj <- stopnja_izvajalec.skupaj[, !(colnames(stopnja_izvajalec.skupaj) %in% c("STOPNJA"))] - stopnja_izvajalec.skupaj <- - stopnja_izvajalec.skupaj[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - #if (gregexpr(pattern = "Magistrski",stopnja_izvajalec.skupaj$program.studentov.ime)[[1]][1] == 1){ - # stopnja_izvajalec.skupaj<-stopnja_izvajalec.skupaj[- grep("Magistrski", stopnja_izvajalec.skupaj$program.studentov.ime),] - - # } - st.programov4<-length(stopnja_izvajalec.skupaj$program.studentov.ime) - } else {program_dodiplomski_studij <- NULL - program_dodiplomski_studij$STOPNJA <- NULL} - - if (nrow(izv.predmet) > 0 & any(program_dodiplomski_studij$STOPNJA==1, na.rm=TRUE)) { - - if (sortByAverage) { - rownames(stopnja_izvajalec.skupaj) <- - formatProgImena(stopnja_izvajalec.skupaj$program.studentov.ime, stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.skupaj <- - stopnja_izvajalec.skupaj[order(stopnja_izvajalec.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.skupaj) <- stopnja_izvajalec.skupaj$program.studentov.ime - stopnja_izvajalec.skupaj <- - stopnja_izvajalec.skupaj[order(as.character(sapply(rownames(stopnja_izvajalec.skupaj), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.skupaj) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.skupaj <- - rbind(stopnja_izvajalec.skupaj, c(colMeans(stopnja_izvajalec.skupaj[1:1]), - colMeans(stopnja_izvajalec.skupaj[2:ncol(stopnja_izvajalec.skupaj)], na.rm=TRUE))) - stopnja_izvajalec.skupaj <- - formatNA(stopnja_izvajalec.skupaj, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.skupaj )[nrow(stopnja_izvajalec.skupaj)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov4," programov)}")) - colnames(stopnja_izvajalec.skupaj ) <- - latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.skupaj.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.skupaj, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh - izvajalcev pri predmetih na - doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - stopnja_izvajalec.skupaj.tex <- "Ni ocen." - } - - ## //IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) PRVA STOPNJA// ## - - - - ###IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA### - - if (nrow(izv.predmet) > 0) { - stopnja_izvajalec.podipl <- merge(proggIZ.tmp, progMeanIzv.fak1,by.x=c("program.studentov", "program.studentov.ime"), - by.y=c("student.program.sifra","student.program.ime"), all=TRUE, sort=FALSE) - stopnja_izvajalec.podipl <- - stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - stopnja_izvajalec.podipl <- - merge(stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov", - paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")], - stopnja_program[c("program.studentov.ime", "STOPNJA")], by="program.studentov.ime", sort=FALSE) - - program_podiplomski_studij <- stopnja_izvajalec.podipl - stopnja_izvajalec.podipl <- subset(stopnja_izvajalec.podipl, STOPNJA==2) - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[, !(colnames(stopnja_izvajalec.podipl) %in% c("STOPNJA"))] - stopnja_izvajalec.podipl <- - stopnja_izvajalec.podipl[c("x","program.studentov.ime","program.studentov",paste0(vars.izvajalec$cont$vars),"izvajalec.ocena.SKUPAJ")] - ## Izloimo Neznan program - stopnja_izvajalec.podipl <- stopnja_izvajalec.podipl[!stopnja_izvajalec.podipl$program.studentov.ime == "Neznan program", ] - st.programov5<-length(stopnja_izvajalec.podipl$program.studentov.ime) - } - - if (nrow(izv.predmet) > 0 & any(program_podiplomski_studij$STOPNJA==2, na.rm=TRUE)) { - - if (sortByAverage) { - rownames(stopnja_izvajalec.podipl) <- - formatProgImena(stopnja_izvajalec.podipl$program.studentov.ime, stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ) - stopnja_izvajalec.podipl <- - stopnja_izvajalec.podipl[order(stopnja_izvajalec.podipl$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - - } else { # sort by name - rownames(stopnja_izvajalec.podipl) <- stopnja_izvajalec.podipl$program.studentov.ime - stopnja_izvajalec.podipl <- - stopnja_izvajalec.podipl[order(as.character(sapply(rownames(stopnja_izvajalec.podipl), titula.rm)), decreasing=FALSE), - !(colnames(stopnja_izvajalec.podipl) %in% c("program.studentov.ime", "program.studentov"))] # sort and drop unneeded columns - } - stopnja_izvajalec.podipl <- - rbind(stopnja_izvajalec.podipl, c(colMeans(stopnja_izvajalec.podipl[1:1]), - colMeans(stopnja_izvajalec.podipl[2:ncol(stopnja_izvajalec.podipl)], na.rm=TRUE))) - stopnja_izvajalec.podipl <- - formatNA(stopnja_izvajalec.podipl, decimalke=c(0,as.numeric(vars.izvajalec$cont$decimalke),decimalkeIzvSkupaj), - pobarvanka=c("NE", as.character(vars.izvajalec$cont$pobarvanka),pobarvankaIzvSkupaj), na.repl=".") - rownames(stopnja_izvajalec.podipl )[nrow(stopnja_izvajalec.podipl)] <- - c(paste0("\\hline \\textbf{Povpreje ", fakulteta," (",st.programov5," programov)}")) - colnames(stopnja_izvajalec.podipl ) <- - latex.rotate(c("t. IPP", Hmisc::latexTranslate(as.character(vars.izvajalec$cont$ime.kratko)), "\\textbf{Skupaj}")) - stopnja_izvajalec.podipl.tex <- capture.output(Hmisc::latex(stopnja_izvajalec.podipl, - caption="Povpreja \\textbf{izvajalcev pri predmetih} - po tudijskih programih (anketa PRED izpitom), - sortirana po \\textbf{Skupaj}", - rowlabel="", - file="", - where="H", - rowlabel.just="A{12cm}", - multicol=FALSE, - longtable=TRUE, - lines.page=1000, - insert.bottom=paste("{\\footnotesize \\textit{** - t. IPP - tevilo vseh - izvajalcev pri predmetih - na doloenem programu.}}"), - col.just=c("c|",rep_len("c", length(vars.izvajalec$cont$vars)),"|c"))) - } else { - stopnja_izvajalec.podipl.tex <- "Ni ocen." - } - - ## //IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA// ## - - - ############################################################ - ###/IZPIS ZA IZVAJALCE PRI PREDMETIH (IPP) DRUGA STOPNJA/### - - - - katedre.tex [[as.character(katedra)]] <- c( - # students of programme - - if (any(program.predmeti.pred.redni.program.tex!="Ni ocen.")) {c("\\chapter{Redni tudij}","\\renewcommand{\\leftmark}{Predmeti - redni tudij}", - paste("Prikazana so povpreja za ocene komponent na lestvici 1-5 za predmete z vsaj 4 odgovori. Povpreja pod 4.0 so obarvana {\\color{Orange}\\textbf{oranno (opozorilno)}}, povpreja pod 3.0 pa {\\color{BrickRed}\\textbf{rdee (kritino)}}. Nizko tevilo enot in neugodne stopnje sodelovanja so oznaene z enojnim () oklepajem oziroma z dvojnim oklepajem (()). Podrobnosti so v metodolokih navodilih na koncu poroila in na \\url{http://ul.1ka.si/metodologija}."), - "\\section{Predmeti}","\\subsection{Anketa PRED izpitom}", program.predmeti.pred.redni.program.tex, "\\newpage", "\\subsection{Anketa PO izpitu}", program.predmeti.po.redni.program.tex, "\\newpage",program.predmeti.po.redni.program.krediti.tex,"\\newpage", - "\\section{Izvajalci pri predmetih}","\\renewcommand{\\leftmark}{Izvajalci pri predmetih - redni tudij}", program.izvajalci.redni.program.tex)} else {c("\\chapter{Redni tudij}","Ni ocen za redni tudij.")}, - "\\chapter{Izredni tudij}","\\renewcommand{\\leftmark}{Predmeti - izredni tudij}", - if (program.predmeti.pred.izredni.tex != "Ni ocen." && !is.null(program.predmeti.po.izredni.tex) && program.izvajalci.izredni.tex != "Ni ocen.") { - c("\\section{Predmeti}","\\subsection{Anketa PRED izpitom}", program.predmeti.pred.izredni.program.tex, "\\newpage", "\\subsection{Anketa PO izpitu}",program.predmeti.po.izredni.program.tex, "\\newpage", - "\\section{Izvajalci pri predmetih}","\\renewcommand{\\leftmark}{Izvajalci pri predmetih - izredni tudij}", program.izvajalci.izredni.program.tex, "\\newpage",program.predmeti.po.izredni.program.krediti) - } else {"Ni ocen za izredni tudij."}, - if (any(program.izvajalci.skupaj.tex!="Ni ocen.")) {c("\\chapter{Povpreja po izvajalcih}", "\\renewcommand{\\leftmark}{Povpreja po izvajalcih}", - paste("Pri izraunu povpreij za izvajalce imajo vsi predmeti (redni in izredni) enako teo, ne glede na tevilo tudentov. V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je tevilo vseh predmetov izvajalca, kjer so na anketo odgovarjali vsaj", minEnot, "tudenti. Ocene pod 4.0 so obarvane {\\color{Orange}\\textbf{oranno (opozorilno)}}, ocene pod 3.0 pa {\\color{BrickRed}\\textbf{rdee (kritino)}}. Podrobnosti so v metodolokih navodilih na koncu poroila in na \\url{http://ul.1ka.si/metodologija}."), - program.izvajalci.skupaj.tex)} else {c("\\chapter{Povpreja po izvajalcih}", "\\renewcommand{\\leftmark}{Povpreja po izvajalcih}","Ni ocen za izvajalce.")}, - if (any(program.predmeti.pred.redni.program.tex!="Ni ocen.")) {c( - "\\chapter{Povpreja po tudijskih programih}","\\renewcommand{\\leftmark}{tudijski programi}", - paste("Izraunana so povpreja po vseh predmetih (oziroma po vseh izvedbah pri predmetih), rednih in izrednih, ki so jih ocenjevali tudenti doloenega tudijskega programa. Predmeti z veliko in malo tudenti imajo enako teo. V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je skupno tevilo predmetov (oziroma izvajalcev pri predmetih), kjer so odgovarjali vsaj", minEnot, "tudenti. Med predmete doloenega programa so vkljueni tudi prosto izbirni predmeti (oziroma izvajalci pri predmetih) drugim programov (e so jih izbrali tudenti)."), - "\\section{Dodiplomski tudij}", - program_BD_pred.skupaj.tex,"\\newpage",program_BD_po.skupaj.tex,"\\newpage",program_BD_po.skupaj.krediti.tex,"\\newpage", - stopnja_izvajalec.skupaj.tex,"\\newpage","\\section{Podiplomski tudij}", - program_BD_pred.podipl.tex,"\\newpage",program_BD_po.podipl.tex,"\\newpage",program_BD_po.podipl.krediti.tex,"\\newpage", - stopnja_izvajalec.podipl.tex,"\\newpage")} else {c("\\chapter{Povpreja po tudijskih programih}","\\renewcommand{\\leftmark}{tudijski programi}","Ni ocen za tudijski program.")}, - # all students - if (allstudents) {c( - "\\chapter{Povpreja po izvajalcih}", - paste("Pri izraunu povpreij za izvajalce imajo vsi predmeti (redni in izredni) enako teo, ne glede na tevilo tudentov. V stolpcu \\guillemotright t. predmetov\\guillemotleft \\ je tevilo vseh predmetov izvajalca, kjer so na anketo odgovarjali vsaj", minEnot, "tudenti. Ocene pod 4.0 so obarvane {\\color{Orange}\\textbf{oranno (opozorilno)}}, ocene pod 3.0 pa {\\color{BrickRed}\\textbf{rdee (kritino)}}. Podrobnosti so v metodolokih navodilih na koncu poroila in na \\url{http://ul.1ka.si/metodologija}."), - program.izvajalci.skupaj.vsi.tex, - "\\chapter{Redni tudij}", - "\\section{Predmeti}", - program.predmeti.pred.redni.tex, "\\newpage", program.predmeti.po.redni.tex, "\\newpage", - "\\section{Izvajalci pri predmetih}", - program.izvajalci.redni.tex, "\\newpage", - "\\chapter{Izredni tudij}", - if (program.predmeti.pred.izredni.tex != "Ni ocen." && !is.null(program.predmeti.po.izredni.tex) && program.izvajalci.izredni.tex != "Ni ocen.") { - c("\\section{Ocene predmetov}", - program.predmeti.pred.izredni.tex, "\\newpage", program.predmeti.po.izredni.tex, "\\newpage", - "\\section{Izvajalci pri predmetih}", - program.izvajalci.izredni.tex, "\\newpage") - } else {"Ni ocen za izredni tudij."} - )} - ) -} - - -# making pdfs -tex.glava <- scan("Evalvacija/latexkosi/a-glava-katedra.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -tex.glava <- gsub(pattern='!ime.fak!', replacement=Hmisc::latexTranslate(ime.fakultete), x=tex.glava) -tex.glava <- gsub(pattern='!leto!', replacement=Hmisc::latexTranslate(semester.leto), x=tex.glava) -tex.glava <- gsub(pattern='!encoding_r!', tolower(gsub("-","",localeToCharset(locale=Sys.getlocale("LC_CTYPE")))), x=tex.glava) -tex.noga <- scan("Evalvacija/latexkosi/z-noga.tex", character(0), sep="\n", quiet=TRUE, encoding="UTF-8") -Rdirektorij <- getwd() - -for (katedra in names(katedre.tex )) { - tex.glava.program <- gsub(pattern='!naslov!', replacement=unique(Hmisc::latexTranslate(programi[programi$Katedra==katedra,"Katedra"])), x=tex.glava) - tex.program <- c(tex.glava.program,"\\setlength{\\tabcolsep}{4pt}", - katedre.tex[[as.character(katedra)]], "\\newpage",tex.okvir,"\\newpage", - tex.noga) - - cat(tex.program, file=paste("Evalvacija/results/program_", katedra,"_", fakulteta, ".tex", sep=""), sep="\n") - setwd(paste(Rdirektorij, "Evalvacija/results", sep="/")) - tools::texi2pdf(file=paste("program_", katedra,"_", fakulteta, ".tex", sep=""), quiet=TRUE, clean=TRUE) - setwd(Rdirektorij) -} - - - - - - - - - - - - - - - - - - - - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda_excell_clanice.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda_excell_clanice.R deleted file mode 100644 index 003c0a088..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/koda_excell_clanice.R +++ /dev/null @@ -1,238 +0,0 @@ -library(data.table) - -sortByAverage <- TRUE # if true sort variable values and rownames in tables by average, else by lecturer's name -sortbykrediti<-TRUE # if true sort values in tables by values of komponent Ustreznost KT (izbor.predmeti.po.redni.krediti, izbor.predmeti.po.izredni.krediti) - -# which lecturers and courses should be included (all from predmeti.izbor and those from izvajalci.izbor that are also in predmeti.izbor) -predmeti.izbor <- povprecja.predmeti$predmet.sifra -izvajalci.izbor <- unique(povprecja.izvajalci$izvajalec.sifra) - - - - -formatProgImena <- function(imena, rankby) { - imena <- gsub(" (izredna izvedba)", "", imena, fixed=TRUE) - ranking <- rank(-suppressWarnings(rankby), ties="first", na.last="keep") - ranking[is.na(ranking)] <- "" - imena <- paste0( ranking, imena) - imena <- paste( imena) - return(imena) -} - -################################### -# EXCEL LANICE -################################### - -##################### -# VSI IZVAJALCI FAKULTETE -#################### -izbor.izvajalci <- subset(povprecja.izvajalci, predmet.sifra %in% predmeti.izbor & izvajalec.sifra %in% izvajalci.izbor) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("red. prof. dr. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("zn. svet. dr. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("le. mag. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("le. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("izr. prof. dr. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("dr. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("doc. dr. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("asist. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("akad. prof. dr. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("asist. dr. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("pred. mag. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("mag. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("izr. prof. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("doc. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("akad. prof. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("prof. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("vi. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) -izbor.izvajalci$NAZIV.PEDAGOGA <- gsub("pred. ","",izbor.izvajalci$NAZIV.PEDAGOGA,fixed=TRUE) - - - - - - - - # Vrednosti komponent izvajalcev agregiramo glede na ifro izvajalca in ime izvajalca in izraunamo povpreje - izbor.izvajalci.skupaj <- aggregate(izbor.izvajalci[c(paste0(vars.izvajalec$cont$vars,"_mean"),"izvajalec.ocena.SKUPAJ")], - by=izbor.izvajalci[c("izvajalec.sifra", "NAZIV.PEDAGOGA")], FUN=mean, na.rm=TRUE) - st.predmetov <- aggregate(izbor.izvajalci$N_anket >= minEnot, - by=izbor.izvajalci["izvajalec.sifra"], FUN=sum, na.rm=TRUE) # how many courses each lecturer has with enough answers - # Zdruimo tevilo predmetov s povpreji komponent glede na ifro izvajalca - izbor.izvajalci.skupaj <- merge(st.predmetov, izbor.izvajalci.skupaj, by="izvajalec.sifra", all=TRUE, sort=FALSE) - if (sortByAverage) {# if true sort variable values and rownames in tables by average, else by name - rownames(izbor.izvajalci.skupaj) <- formatProgImena(izbor.izvajalci.skupaj$NAZIV.PEDAGOGA, izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ) - - rownames(izbor.izvajalci.skupaj) <- make.unique(gsub("([[:digit:]])", "", rownames(izbor.izvajalci.skupaj))) - #rownames(izbor.izvajalci.skupaj) <- gsub("d+", "", rownames(izbor.izvajalci.skupaj)) - - izbor.izvajalci.skupaj <- izbor.izvajalci.skupaj[order(izbor.izvajalci.skupaj$izvajalec.ocena.SKUPAJ, decreasing=TRUE), - !(colnames(izbor.izvajalci.skupaj) %in% c("izvajalec.sifra", "NAZIV.PEDAGOGA"))] # sort and drop unneeded columns - } - # Zruimo povprene ocene posameznih komponent vseh izvajalcev z SKUPNIM povprejem vseh komponent (colmeans) - izbor.izvajalci.skupaj[2:ncol(izbor.izvajalci.skupaj)] <- round(izbor.izvajalci.skupaj[2:ncol(izbor.izvajalci.skupaj)],1) - - - colnames(izbor.izvajalci.skupaj)[1] <- "t. predmetov" - colnames(izbor.izvajalci.skupaj)[2] <- "kakovost" - colnames(izbor.izvajalci.skupaj)[3] <- "pripravljenost" - colnames(izbor.izvajalci.skupaj)[4] <- "razumljivost" - colnames(izbor.izvajalci.skupaj)[5] <- "zanimivost" - colnames(izbor.izvajalci.skupaj)[6] <- "kritinost" - colnames(izbor.izvajalci.skupaj)[7] <- "korektnost" - colnames(izbor.izvajalci.skupaj)[8] <- "SKUPAJ" - - - setDT(izbor.izvajalci.skupaj, keep.rownames = TRUE)[] - colnames(izbor.izvajalci.skupaj)[1] <- "IZVAJALCI" - write.csv2(izbor.izvajalci.skupaj, paste0("Excel rezultati ",fakulteta," 2016-2017.csv"),row.names = FALSE) - - - ################################### - # IZVAJALCI PRI PREDMETIH FAKULTETE - ################################### - - rownames(izbor.izvajalci) <- make.unique(paste0(sapply(povprecja.izvajalci[rownames(izbor.izvajalci),"NAZIV.PEDAGOGA"], titula.rm), - " (", povprecja.izvajalci[rownames(izbor.izvajalci),"ime.predmeta"], ")")) - #IPP redni tudij (NACIN_STUDIJA == "1") - izbor.izvajalci.redni.izredni <- izbor.izvajalci[c("NACIN_STUDIJA","ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.izvajalec$cont$vars,"_mean"), - "izvajalec.ocena.SKUPAJ")] - - - - izbor.izvajalci.redni.izredni <- izbor.izvajalci.redni.izredni[order(izbor.izvajalci.redni.izredni$izvajalec.ocena.SKUPAJ, decreasing=TRUE),] - rownames(izbor.izvajalci.redni.izredni) <- make.unique(formatProgImena(rownames(izbor.izvajalci.redni.izredni), izbor.izvajalci.redni.izredni$izvajalec.ocena.SKUPAJ)) - rownames(izbor.izvajalci.redni.izredni) <- make.unique(gsub("^[[:digit:]]+", "", rownames(izbor.izvajalci.redni.izredni))) - - # Zdruimo vrstice: povpreje komponent izvajalcev in skupno povpreje komponent izvajalcev - izbor.izvajalci.redni.izredni[,c(2:6)] <- round(izbor.izvajalci.redni.izredni[,2:6],0) - izbor.izvajalci.redni.izredni[7:ncol(izbor.izvajalci.redni.izredni)] <- round(izbor.izvajalci.redni.izredni[7:ncol(izbor.izvajalci.redni.izredni)],1) - - colnames(izbor.izvajalci.redni.izredni)[1] <- "stopnja (1=BD, 2=PB)" - colnames(izbor.izvajalci.redni.izredni)[2] <- "t. vpisanih" - colnames(izbor.izvajalci.redni.izredni)[3] <- "t. odgovorov" - colnames(izbor.izvajalci.redni.izredni)[4] <- "% odgovorov" - colnames(izbor.izvajalci.redni.izredni)[5] <- "% zavrnitev" - colnames(izbor.izvajalci.redni.izredni)[6] <- "% nesodelujoih" - colnames(izbor.izvajalci.redni.izredni)[7] <- "kakovost" - colnames(izbor.izvajalci.redni.izredni)[8] <- "pripravljenost" - colnames(izbor.izvajalci.redni.izredni)[9] <- "razumljivost" - colnames(izbor.izvajalci.redni.izredni)[10] <- "zanimivost" - colnames(izbor.izvajalci.redni.izredni)[11] <- "kritinost" - colnames(izbor.izvajalci.redni.izredni)[12] <- "korektnost" - colnames(izbor.izvajalci.redni.izredni)[13] <- "SKUPAJ" - - - setDT(izbor.izvajalci.redni.izredni, keep.rownames = TRUE)[] - colnames(izbor.izvajalci.redni.izredni)[1] <- "IZVAJALCI PRI PREDMETIH" - write.csv2(izbor.izvajalci.redni.izredni,paste0(fakulteta,"IPP.csv"),row.names = F) - - - - - - ################################### - # PREDMETI (ANKETA PRED IZPITOM) - ################################### - - izbor.predmeti <- subset(povprecja.predmeti, predmet.sifra %in% predmeti.izbor) # Izberemo predmete, ki so imeli dovolj enot - povprecja.predmeti <- povprecja.predmeti[!(is.na(povprecja.predmeti$ime.predmeta)), ] - rownames(izbor.predmeti) <- make.unique(povprecja.predmeti[rownames(izbor.predmeti), "ime.predmeta"]) - - # Loimo povpreje komponent predmetov PRED in PO izpitu na REDNI in IZREDNi TUDIJ, na podalgi katerih nato delamo LATEX tabele - izbor.predmeti.pred.redni.izredni <- izbor.predmeti[c("NACIN_STUDIJA","ST_STUD","N_anket","sodelujocih.pct", - "zavrnjenih.pct","neodzivnih.pct", - paste0(vars.predmet$cont$pred,"_mean"), - "predmet.ocena.SKUPAJ.pred")] - - - izbor.predmeti.pred.redni.izredni <- izbor.predmeti.pred.redni.izredni[order(izbor.predmeti.pred.redni.izredni$predmet.ocena.SKUPAJ.pred, - izbor.predmeti.pred.redni.izredni$N_anket, decreasing=TRUE),] - rownames(izbor.predmeti.pred.redni.izredni) <- make.unique(formatProgImena(rownames(izbor.predmeti.pred.redni.izredni), - izbor.predmeti.pred.redni.izredni$predmet.ocena.SKUPAJ.pred)) - rownames(izbor.predmeti.pred.redni.izredni) <- make.unique(gsub("^[[:digit:]]+", "", rownames(izbor.predmeti.pred.redni.izredni))) - - izbor.predmeti.pred.redni.izredni[,c(2:6)] <- round(izbor.predmeti.pred.redni.izredni[,c(2:6)],0) - izbor.predmeti.pred.redni.izredni[7:ncol(izbor.predmeti.pred.redni.izredni)] <- round(izbor.predmeti.pred.redni.izredni[7:ncol(izbor.predmeti.pred.redni.izredni)],1) - - colnames(izbor.predmeti.pred.redni.izredni)[1] <- "stopnja (1=BD, 2=PB)" - colnames(izbor.predmeti.pred.redni.izredni)[2] <- "t. vpisanih" - colnames(izbor.predmeti.pred.redni.izredni)[3] <- "t. odgovorov" - colnames(izbor.predmeti.pred.redni.izredni)[4] <- "% odgovorov" - colnames(izbor.predmeti.pred.redni.izredni)[5] <- "% zavrnitev" - colnames(izbor.predmeti.pred.redni.izredni)[6] <- "% nesodelujoih" - colnames(izbor.predmeti.pred.redni.izredni)[7] <- "zadovoljstvo" - colnames(izbor.predmeti.pred.redni.izredni)[8] <- "usklajenost" - colnames(izbor.predmeti.pred.redni.izredni)[9] <- "samostojnost" - colnames(izbor.predmeti.pred.redni.izredni)[10] <- "literatura" - colnames(izbor.predmeti.pred.redni.izredni)[11] <- "obveenost" - colnames(izbor.predmeti.pred.redni.izredni)[12] <- "informiranost" - colnames(izbor.predmeti.pred.redni.izredni)[13] <- "preverjanje" - colnames(izbor.predmeti.pred.redni.izredni)[14] <- "SKUPAJ" - - - setDT(izbor.predmeti.pred.redni.izredni, keep.rownames = TRUE)[] - colnames(izbor.predmeti.pred.redni.izredni)[1] <- "PREDMETI (ANKETA PRED)" - - write.csv2(izbor.predmeti.pred.redni.izredni,paste0(fakulteta,"PREDMET_PRED.csv"),row.names = FALSE) - - - - ################################### - # PREDMETI (ANKETA PO IZPITU) - ################################### - - izbor.predmeti.po.redni.izredni <- izbor.predmeti[c("NACIN_STUDIJA","ST_STUD","N_anket_po_izpitu","sodelujocih.pct_po_izpitu", - "zavrnjenih.pct_po_izpitu","neodzivnih.pct_po_izpitu", - paste0(vars.predmet$cont$po,"_mean"), - "predmet.ocena.SKUPAJ.po","predmet.ocena.krediti_mean")] - - - - - izbor.predmeti.po.redni.izredni <- izbor.predmeti.po.redni.izredni[order(izbor.predmeti.po.redni.izredni$predmet.ocena.SKUPAJ.po, - izbor.predmeti.po.redni.izredni$N_anket_po_izpitu, decreasing=TRUE),] - rownames(izbor.predmeti.po.redni.izredni) <- make.unique(formatProgImena(rownames(izbor.predmeti.po.redni.izredni), - izbor.predmeti.po.redni.izredni$predmet.ocena.SKUPAJ.po)) - - #rownames(izbor.predmeti.po.redni.izredni) <- make.unique(gsub("([[:digit:]])", "", rownames(izbor.predmeti.po.redni.izredni))) - rownames(izbor.predmeti.po.redni.izredni) <- make.unique(gsub("^[[:digit:]]+", "", rownames(izbor.predmeti.po.redni.izredni))) - # Ker elimo da sta v tabelah komponenti UTREZNOST KT in KOMPETENCE prikazani na koncu pred generiranjem tabel spremenimo vrstni red - izbor.predmeti.po.redni.izredni <- izbor.predmeti.po.redni.izredni[c(1,2,3,4,5,6,8,9,10,11,7,12)] - # Generiranje LATEX TABELE - - - izbor.predmeti.po.redni.izredni[,c(2:6)] <- round(izbor.predmeti.po.redni.izredni[,c(2:6)] ,0) - - izbor.predmeti.po.redni.izredni[7:ncol(izbor.predmeti.po.redni.izredni)] <- round(izbor.predmeti.po.redni.izredni[7:ncol(izbor.predmeti.po.redni.izredni)],1) - - colnames(izbor.predmeti.po.redni.izredni)[1] <- "stopnja (1=BD, 2=PB)" - colnames(izbor.predmeti.po.redni.izredni)[2] <- "t. vpisanih" - colnames(izbor.predmeti.po.redni.izredni)[3] <- "t. odgovorov" - colnames(izbor.predmeti.po.redni.izredni)[4] <- "% odgovorov" - colnames(izbor.predmeti.po.redni.izredni)[5] <- "% zavrnitev" - colnames(izbor.predmeti.po.redni.izredni)[6] <- "% nesodelujoih" - colnames(izbor.predmeti.po.redni.izredni)[7] <- "vsebine" - colnames(izbor.predmeti.po.redni.izredni)[8] <- "naloge" - colnames(izbor.predmeti.po.redni.izredni)[9] <- "kriteriji" - colnames(izbor.predmeti.po.redni.izredni)[10] <- "SKUPAJ" - colnames(izbor.predmeti.po.redni.izredni)[11] <- "kompetence" - colnames(izbor.predmeti.po.redni.izredni)[12] <- "Ustreznost KT" - - - setDT(izbor.predmeti.po.redni.izredni, keep.rownames = TRUE)[] - colnames(izbor.predmeti.po.redni.izredni)[1] <- "PREDMETI (ANKETA PO)" - - write.csv2(izbor.predmeti.po.redni.izredni,paste0(fakulteta,"PREDMET_PO.csv"),row.names = FALSE) - - - - - library(xlsx) - write.xlsx(izbor.izvajalci.skupaj, file=paste0("Excel rezultati_",fakulteta,"_2016_2017.xls"), sheetName="IZVAJALCI", row.names=FALSE) - write.xlsx(izbor.izvajalci.redni.izredni, file=paste0("Excel rezultati_",fakulteta,"_2016_2017.xls"), sheetName="IZVAJALCI PRI PREDMETIH", append=TRUE, row.names=FALSE) - write.xlsx(izbor.predmeti.pred.redni.izredni, file=paste0("Excel rezultati_",fakulteta,"_2016_2017.xls"), sheetName="PREDMETI (ANKETA PRED)", append=TRUE, row.names=FALSE) - write.xlsx(izbor.predmeti.po.redni.izredni, file=paste0("Excel rezultati_",fakulteta,"_2016_2017.xls"), sheetName="PREDMETI (ANKETA PO)", append=TRUE, row.names=FALSE) - - \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/metapredmeti.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/metapredmeti.R deleted file mode 100644 index 700b59f55..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/metapredmeti.R +++ /dev/null @@ -1,59 +0,0 @@ - -#--------------------------------------- AGREGAT SUMARNIH PREDMETOV -------------------------------------------# -# združevanje meta predmetov fakultete za glasbo na podlagi šifrantx X7 oziroma šifranta meta -# predmetov -# jer se definira fiktivne meta-predmete, ki zdruzujejo obstoječe predmete; nakar meta predmet -# nastopi v analizah, npr. Violina 1, Violina 2, Violina 3, vse to se združiv v meta predmete Violina. -# Pri tem gre za združevanje znotraj enega študijskega leta. - -# Šifrant metapredmetov X7 -sifrantx7 <- read.csv2("Evalvacija/temp/sifrantx7.csv", sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -colnames(sifrantx7)[5] <- "Novoimepredmeta" - -# Preverimo katere meta predmete iz šifranta x1 je potrebno združiti glede na šifrant x7 in to naredimo -library(dplyr) -metaPredmeti <- merge(sifrant,sifrantx7[c("ID_predmeta","Predmet","ID.NOVEGA.PREDMETA","Novoimepredmeta")], - by.x ="IDP", by.y= "ID_predmeta", all=F, sort=F ) %>% - mutate(PREDMET = ifelse(PREDMET==Predmet, Novoimepredmeta, PREDMET)) - -# Različnim predmetom dodelimo skupne lastnosti zato, da ne pride do podvajanja (redni način študija, prva stopnja, itd) -metaPredmeti[c("NACIN_STUDIJA","SEMESTER_IZV","STOPNJA","NOSILEC")] <- 1 - - -skpnoStStudentov <- aggregate(metaPredmeti[c("ST_STUD")], by = metaPredmeti["PREDMET"], FUN = sum, na.rm = TRUE) - -metaPredmeti$ST_STUD <- ifelse(metaPredmeti$PREDMET == skpnoStStudentov$PREDMET, skpnoStStudentov$ST_STUD, rev(skpnoStStudentov$ST_STUD)) - -# Preverimo, katere predmeti so združeni ter jih ustrezno nadomestimu v šifrantu x1: nadomestimo ime predmeta in šifro predmeta -# Ime predmeta -indices <- which(sifrant$PREDMET %in% metaPredmeti$Predmet) -sifrant$PREDMET[indices] <- metaPredmeti$Novoimepredmeta -# Šifra predmeta -indicesIDP <- which(sifrant$IDP %in% metaPredmeti$IDP) -sifrant$IDP[indicesIDP] <- metaPredmeti$ID.NOVEGA.PREDMETA - -# Vsem predmetom, ki jih bomo združili v nov predmet dodelimo skupne lastnosti -sifrant$NACIN_STUDIJA[indicesIDP] <- 1 # redni študij -sifrant$SEMESTER_IZV[indicesIDP] <- 1 # prvi semester -sifrant$STOPNJA[indicesIDP] <- 1 # dodiplomski -sifrant$NOSILEC[indicesIDP] <- 1 # nosilec -sifrant$ST_STUD[indicesIDP] <- metaPredmeti$ST_STUD -sifrant <- sifrant[!duplicated(sifrant[c("IDP","IDPEDAGOGA","ST_STUD")]),] - - -# Podatke združimo in preimenujemo še v bazi 1KA: poenotimo ime predmetov in njihovo šifro v meta predmet -# ANKETA PRED IZPITOM # -library(plyr) -metaPredmet.pred <- full_join(data_pred_izpitom, metaPredmeti, by = c("predmet" = "Predmet")) - -data_pred_izpitom$predmet <- ifelse(metaPredmet.pred$sifpredm %in% metaPredmet.pred$IDP, metaPredmet.pred$Novoimepredmeta, metaPredmet.pred$predmet) -data_pred_izpitom$sifpredm <- ifelse(metaPredmet.pred$sifpredm %in% metaPredmet.pred$IDP, metaPredmet.pred$ID.NOVEGA.PREDMETA, metaPredmet.pred$sifpredm) - -# ANKETA PO IZPITU # -metaPredmet.po <- full_join(data_po_izpitu, metaPredmeti, by = c("predmet" = "Predmet")) - -data_po_izpitu$predmet <- ifelse(metaPredmet.po$sifpredm %in% metaPredmet.po$IDP, metaPredmet.po$Novoimepredmeta, metaPredmet.po$predmet) -data_po_izpitu$sifpredm <- ifelse(metaPredmet.po$sifpredm %in% metaPredmet.po$IDP, metaPredmet.po$ID.NOVEGA.PREDMETA, metaPredmet.po$sifpredm) - -#--------------------------------------- //AGREGAT SUMARNIH PREDMETOV// -------------------------------------------# - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/metapredmeti_nova_verzija.R b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/metapredmeti_nova_verzija.R deleted file mode 100644 index d2ed4ed96..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/metapredmeti_nova_verzija.R +++ /dev/null @@ -1,56 +0,0 @@ - -#--------------------------------------- AGREGAT SUMARNIH PREDMETOV -------------------------------------------# -# združevanje meta predmetov fakultete za glasbo na podlagi šifrantx X7 oziroma šifranta meta -# predmetov -# jer se definira fiktivne meta-predmete, ki zdruzujejo obstoječe predmete; nakar meta predmet -# nastopi v analizah, npr. Violina 1, Violina 2, Violina 3, vse to se združiv v meta predmete Violina. -# Pri tem gre za združevanje znotraj enega študijskega leta. - -# Šifrant metapredmetov X7 -sifrantx7 <- read.csv2("Evalvacija/temp/sifrantx7.csv", sep = ";", header = T, fill = T, stringsAsFactors = FALSE) -colnames(sifrantx7)[5] <- "Novoimepredmeta" -sifrantx7 <- sifrantx7[!(duplicated(sifrantx7$ID_predmeta) & duplicated(sifrantx7$Predmet)), ] - - -# Preverimo katere meta predmete iz šifranta x1 je potrebno združiti glede na šifrant x7 in to naredimo -library(dplyr) -metaPredmeti <- merge(sifrant,sifrantx7[c("ID_predmeta","Predmet","ID.NOVEGA.PREDMETA","Novoimepredmeta")], - by.x ="IDP", by.y= "ID_predmeta", all=F, sort=F ) %>% - mutate(PREDMET = ifelse(PREDMET==Predmet, Novoimepredmeta, PREDMET)) - -# Različnim predmetom dodelimo skupne lastnosti zato, da ne pride do podvajanja (redni način študija, prva stopnja, itd) -metaPredmeti[c("NACIN_STUDIJA","SEMESTER_IZV","STOPNJA","NOSILEC")] <- 1 - - -# Preverimo, katere predmeti so združeni ter jih ustrezno nadomestimu v šifrantu x1: nadomestimo ime predmeta in šifro predmeta -# Ime predmeta - - - -# metapredmetiUN <- metaPredmeti[!(duplicated(metaPredmeti$NAZIV.PEDAGOGA) & duplicated(metaPredmeti$Predmet)), ] -# metaPredmeti <- metapredmetiUN -# - - - -sifrant <- sifrant[!duplicated(sifrant[c("IDP","IDPEDAGOGA","ST_STUD")]),] - - -# Podatke združimo in preimenujemo še v bazi 1KA: poenotimo ime predmetov in njihovo šifro v meta predmet -# ANKETA PRED IZPITOM # -library(plyr) -metaPredmet.pred <- full_join(data_pred_izpitom, metaPredmeti, by = c("predmet" = "Predmet")) - - - -data_pred_izpitom$predmet <- ifelse(metaPredmet.pred$sifpredm == metaPredmet.pred$IDP, metaPredmet.pred$Novoimepredmeta, metaPredmet.pred$predmet) -data_pred_izpitom$sifpredm <- ifelse(metaPredmet.pred$sifpredm %in% metaPredmet.pred$IDP, metaPredmet.pred$ID.NOVEGA.PREDMETA, metaPredmet.pred$sifpredm) - -# ANKETA PO IZPITU # -metaPredmet.po <- full_join(data_po_izpitu, metaPredmeti, by = c("predmet" = "Predmet")) - -data_po_izpitu$predmet <- ifelse(metaPredmet.po$sifpredm %in% metaPredmet.po$IDP, metaPredmet.po$Novoimepredmeta, metaPredmet.po$predmet) -data_po_izpitu$sifpredm <- ifelse(metaPredmet.po$sifpredm %in% metaPredmet.po$IDP, metaPredmet.po$ID.NOVEGA.PREDMETA, metaPredmet.po$sifpredm) - -#--------------------------------------- //AGREGAT SUMARNIH PREDMETOV// -------------------------------------------# - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/navodila_dodatno-UTF-8.r b/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/navodila_dodatno-UTF-8.r deleted file mode 100644 index daf50b5a1..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija dodiplomski in podiplomski studij/navodila_dodatno-UTF-8.r +++ /dev/null @@ -1,49 +0,0 @@ -semester.leto <- "Študijsko leto 2016/17" # Prikaz na prvi strani PDF poro?ila pod naslovom in v nogi - -# V primeru, da v poro?ilu za izvajalca nosilec predmeta ?eli videti tudi ocene soizvajalca -nosilci_soizvajalcev <- TRUE - -omejeniIzvajalci <- FALSE # ali naj omeji poro?ila samo na dolo?ene izvajalce. Uporabmo v primeru testiranja poro?il -omejeniIzvajalciSifre <- c("3000021_FDV_321", "3000021_FDV_722", "3000021_FDV_1556") # katere glede na vrstico zgoraj - -minEnot <- 4 # najmanj?e ?tevilo odgovorov, kjer se poka?e rezultat, ko ne gre za anlize po skupinah - -izvedba_v_imenu <- FALSE # na koncu imena predmeta doda ?e 1Z, 2P ipd. Da se lo?ijo tisti ki so v obeh semestrih. (sifrant$IZVEDBA) -oblikovanje_izvedbe <- FALSE # should first page have izvedba, semester text - - -#Barvanje st. studentov, ?t.odgovorov, % odgovorov, itd, v tabelah za povpre?ja komponent -#FDVstopnjaPobarvanka <- list(dodiplomski="NE", podiplomski="NE", skupaj="NE") -FDVstopnjaPobarvanka <- list(dodiplomski="30,40,Inf,Inf", podiplomski="30,40,Inf,Inf", skupaj="30,40,Inf,Inf", - st.stud="5,10,Inf,Inf", n.anket="5,10,Inf,Inf", sodelu.pct="10,25,Inf,Inf", zavr.pct="0,0,50,75") - -#za 3,4,Inf,Inf -> manj kot 3 je bold rede?e, 3 ali ve? in manj kot 4 je samo rde?e, Inf, Inf pomeni da ni zgornje meje za barvanja. -#za 2.4,2.7,3.3,3.6 -> manj kot 2.4 je bold rede?e, 2.4 ali ve? in manj kot 2.7 je samo rde?e, 3.3 ali ve? in manj?e kot 3.6 je samo rde?e, ve? kot 3.6 je bold rde?e -#Vrednosti 3,4,Inf,Inf so definirane v navodila_dodatno-UTF-8.r, vrednosti 2.4,2.7,3.3,3.6 pa v excelovi datoteki Navodila. - -pobarvankaPredmSkupaj <- "3,4,Inf,Inf" -pobarvankaIzvSkupaj <- "3,4,Inf,Inf" -# Zaokro?evanje povpre?ij v tabelah -decimalkePredmSkupaj <- 1 # zaokro?imo na eno decimalko -decimalkeIzvSkupaj <- 1 # zaokro?imo na eno decimalko - -# what should be excluded from student comments -junk.komentar <- c(NA,"-1","-2","-3","-4","-5","-97","-98","-99","-","/","\\",".","","-1: Ni odgovoril","-2: Preskok (if)","-3: Prekinjeno", "#NAME?") - -# strings to be used for semester specific calculations in metodology (this values present specific semester in sifrant$SEMESTER_IZV) -prvi_semester <- c("zimski", "prvi semester", 1) -drugi_semester <- c("letni", "drugi semester", "celoletni", 2, 3) - -# NOT USING THIS NOW # -# evaluations start/end dates for methodology (T1 1st semester start, T2 end; T3 2nd semester start, T4 end) -metod_T1 <- "T1" -metod_T2 <- "T2" -metod_T3 <- "T3" -metod_T4 <- "T4" -# //NOT USING THIS NOW// # - - -#ZA PORO?ILA ZA KATEDRE -#katedre <- read.csv2("Evalvacija/temp/miha_test.csv",sep=";", header=T, fill=T,stringsAsFactors=FALSE) -#katedre <- katedre[-which(katedre$Katedra == ""), ] -#katedre<-katedre[!is.na(katedre$Katedra),] \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/.RData b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/.RData deleted file mode 100644 index b8e9704f9..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/.RData and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/.Rhistory b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/.Rhistory deleted file mode 100644 index dd8b5ed59..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/.Rhistory +++ /dev/null @@ -1,512 +0,0 @@ -poProgramih_N_veljavni[[i]][j] <- as.numeric(length(veljavneEnote[[i]]$Q3a[veljavneEnote[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) -stevilo_vpisanih[[i]][j] <- subset(vpisani_tabela[[i]][,4], (vpisani_tabela[[i]][,2] == veljavneEnote[[i]]$siffaks[1] & vpisani_tabela[[i]][,3] == tip_programa[[i]]$idprog_uq_vsi[[j]])) -} -#Vseh enot za tabelo: 'Struktura študentov glede na študijski program' (n) -### Pristopili -vsehT1[[i]] <- sum(poProgramih_N_veljavni[[i]]) -#Izpišemo število VSEH enot glede na posamezen program -for (j in 1:length(tip_programa[[i]]$idprog_uq_vsi)){podatki_N_vsi[[i]][j]<-as.numeric( -length(podatki[[i]]$Q3a[podatki[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) -} -odgovori_pct[[i]] <- formatC2((poProgramih_N_veljavni[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") -odgovori_pct[[i]] <- c(odgovori_pct[[i]], formatC2((sum(poProgramih_N_veljavni[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format="f")) -#Izracun stevila tistih, ki niso odgovorili (Zavrnili) -podatki.r[[i]] <- podatki_N_vsi[[i]] - poProgramih_N_veljavni[[i]] -#Z lapply poženemo zgornjo funkcijo cez poProgramih_N_veljavni, kjer so shranjene dolžine seznama sodelujoci POPRAVI: GLEDE NA POGOJ_____ in dobimo seznam odstotkov -odstotkiT1[[i]] <- sapply(poProgramih_N_veljavni[[i]], function(x){ -x <- (x/vsehT1[[i]]*100) -x <- round2(x, digits=0) -}) -podatki.r.pct[[i]] <- formatC2((podatki.r[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") -#Odstotke iz seznama prenesemo v vektor -for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni))){vektorProgrami[[i]][j]<-odstotkiT1[[i]][j]} -odstotkiT1[[i]] <- c(odstotkiT1[[i]], formatC2(sum(unlist(odstotkiT1[[i]])), digits=0, format="f")) -#Dodamo vrstico 'skupaj' -programiV1[[i]] <- c(tip_programa[[i]]$naziv, "Skupaj") -poProgramih_N_veljavni[[i]] <- c(poProgramih_N_veljavni[[i]], vsehT1[[i]]) -poProgramih_N_veljavni_z_oklepaji[[i]] <- oklepajiVektor_f(poProgramih_N_veljavni[[i]]) -#za 'r%' -podatki.r.pct[[i]] <- c(podatki.r.pct[[i]], formatC2((sum(podatki.r[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format ="f")) -#Dodamo vrstico skupaj -podatki_N_vsi[[i]] <- formatC2(c(podatki_N_vsi[[i]], sum(podatki_N_vsi[[i]])), digits=0, format='f') -stevilo_vpisanih[[i]] <- c(stevilo_vpisanih[[i]], sum(stevilo_vpisanih[[i]])) -# Odebeljena vsota udelezenih, tistih, ki niso odgovorili -podatki.r[[i]] <- formatC2(c(podatki.r[[i]], sum(podatki.r[[i]])), digits=0, format='f') -stolpec100[[i]] <- formatC2(rep(100, length(podatki_N_vsi[[i]])), digits=0, format ='f') -ni_pristopilo[[i]] <- as.numeric(stevilo_vpisanih[[i]]) - as.numeric(podatki_N_vsi[[i]]) -ni_pristopilo.pct[[i]] <- ni_pristopilo[[i]]/as.numeric(stevilo_vpisanih[[i]])*100 -stevilo_vpisanih[[i]] <- formatC2(c(stevilo_vpisanih[[i]]), digits=0, format = 'f') -ni_pristopilo[[i]] <- formatC2(c(ni_pristopilo[[i]]), digits=0, format = 'f') -ni_pristopilo.pct[[i]] <- formatC2(c(ni_pristopilo.pct[[i]]), digits=0, format = 'f') -vektorProgrami[[i]] <- c(vektorProgrami[[i]], sum(vektorProgrami[[i]])) -#Sestavimo podatkovni okvir za prvo tabelo (Popravi: preimenuj tabele v kodi) -struktura_studijski_program[[i]] <- data.frame(programiV1[[i]], stevilo_vpisanih[[i]], stolpec100[[i]], ni_pristopilo[[i]], ni_pristopilo.pct[[i]], podatki_N_vsi[[i]], stolpec100[[i]], poProgramih_N_veljavni[[i]], odgovori_pct[[i]], podatki.r[[i]], podatki.r.pct[[i]]) -struktura_studijski_program[[i]] <- data.frame( -sapply(struktura_studijski_program[[i]], -function(x){as.character(x)}), stringsAsFactors = F) -struktura_studijski_program_temp <- list() -struktura_studijski_program_koncni <- list() -struktura_studijski_program_stolpci_temp <- list() -struktura_studijski_program_stolpci_koncni <- list() -colnames(struktura_studijski_program[[i]]) <- 1:11 -for (k in 1:nrow(struktura_studijski_program[[i]])){ -struktura_studijski_program_temp[[k]] <- data.frame( -paste0(struktura_studijski_program[[i]][k,1], -" (vpisani)"), -struktura_studijski_program[[i]][k,c(2:5)], -struktura_studijski_program[[i]][k,c(6)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(6)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), -struktura_studijski_program[[i]][k,c(8)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(8)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), -struktura_studijski_program[[i]][k,c(10)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(10)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f')) -temp <- data.frame(paste0(struktura_studijski_program[[i]][k,1], -" (pristopili)"), "", "", "", "", struktura_studijski_program[[i]][k,c(6:11)], stringsAsFactors = F) -colnames(temp) <- 1:11 -colnames(struktura_studijski_program_temp[[k]]) <- 1:11 -struktura_studijski_program_koncni[[k]] <- rbind( -struktura_studijski_program_temp[[k]], temp) -} -struktura_studijski_program_koncni_2[[i]] <- do.call(rbind, struktura_studijski_program_koncni) -struktura_studijski_program_koncni_2[[i]] <- data.frame(sapply(struktura_studijski_program_koncni_2[[i]], as.character), stringsAsFactors=F) -struktura_studijski_program_koncni_2[[i]][,8] <- oklepajiVektor_f(as.numeric(as.character(struktura_studijski_program_koncni_2[[i]][,8]))) -struktura_studijski_program_koncni_2[[i]][struktura_studijski_program_koncni_2[[i]] == 100] <- "\\textbf{100}" -colnames(struktura_studijski_program_koncni_2[[i]]) <- c("", "N", "\\%", "N", "\\%", "$n_0$", "\\%", "n", "\\%", "r", "\\%") -hlines[[i]] <- c(nrow(struktura_studijski_program_koncni_2[[i]])-1) -} -for (i in c(podatki_letnik)){ -# Te podatke shrani v vektor, da jih lahko prestejemo / izpisemo v tabeli -# Stevilo veljavnih enot na program -# Primerjavo z ID-ji vseh enot delamo, ker imajo vse enote lahko razlicen id od veljavnih -# ker ne bi imeli vrednosti bi dobili napacne izracune -for (j in 1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni)){ -### Odgovorili -poProgramih_N_veljavni[[i]][j] <- as.numeric(length(veljavneEnote[[i]]$Q3a[veljavneEnote[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) -stevilo_vpisanih[[i]][j] <- subset(vpisani_tabela[[i]][,4], (vpisani_tabela[[i]][,2] == veljavneEnote[[i]]$siffaks[1] & vpisani_tabela[[i]][,3] == tip_programa[[i]]$idprog_uq_vsi[[j]])) -} -#Vseh enot za tabelo: 'Struktura študentov glede na študijski program' (n) -### Pristopili -vsehT1[[i]] <- sum(poProgramih_N_veljavni[[i]]) -#Izpišemo število VSEH enot glede na posamezen program -for (j in 1:length(tip_programa[[i]]$idprog_uq_vsi)){podatki_N_vsi[[i]][j]<-as.numeric( -length(podatki[[i]]$Q3a[podatki[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) -} -odgovori_pct[[i]] <- formatC2((poProgramih_N_veljavni[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") -odgovori_pct[[i]] <- c(odgovori_pct[[i]], formatC2((sum(poProgramih_N_veljavni[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format="f")) -#Izracun stevila tistih, ki niso odgovorili (Zavrnili) -podatki.r[[i]] <- podatki_N_vsi[[i]] - poProgramih_N_veljavni[[i]] -#Z lapply poženemo zgornjo funkcijo cez poProgramih_N_veljavni, kjer so shranjene dolžine seznama sodelujoci POPRAVI: GLEDE NA POGOJ_____ in dobimo seznam odstotkov -odstotkiT1[[i]] <- sapply(poProgramih_N_veljavni[[i]], function(x){ -x <- (x/vsehT1[[i]]*100) -x <- round2(x, digits=0) -}) -podatki.r.pct[[i]] <- formatC2((podatki.r[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") -#Odstotke iz seznama prenesemo v vektor -for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni))){vektorProgrami[[i]][j]<-odstotkiT1[[i]][j]} -odstotkiT1[[i]] <- c(odstotkiT1[[i]], formatC2(sum(unlist(odstotkiT1[[i]])), digits=0, format="f")) -#Dodamo vrstico 'skupaj' -programiV1[[i]] <- c(tip_programa[[i]]$naziv, "Skupaj") -poProgramih_N_veljavni[[i]] <- c(poProgramih_N_veljavni[[i]], vsehT1[[i]]) -poProgramih_N_veljavni_z_oklepaji[[i]] <- oklepajiVektor_f(poProgramih_N_veljavni[[i]]) -#za 'r%' -podatki.r.pct[[i]] <- c(podatki.r.pct[[i]], formatC2((sum(podatki.r[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format ="f")) -#Dodamo vrstico skupaj -podatki_N_vsi[[i]] <- formatC2(c(podatki_N_vsi[[i]], sum(podatki_N_vsi[[i]])), digits=0, format='f') -stevilo_vpisanih[[i]] <- c(stevilo_vpisanih[[i]], sum(stevilo_vpisanih[[i]])) -# Odebeljena vsota udelezenih, tistih, ki niso odgovorili -podatki.r[[i]] <- formatC2(c(podatki.r[[i]], sum(podatki.r[[i]])), digits=0, format='f') -stolpec100[[i]] <- formatC2(rep(100, length(podatki_N_vsi[[i]])), digits=0, format ='f') -ni_pristopilo[[i]] <- as.numeric(stevilo_vpisanih[[i]]) - as.numeric(podatki_N_vsi[[i]]) -ni_pristopilo.pct[[i]] <- ni_pristopilo[[i]]/as.numeric(stevilo_vpisanih[[i]])*100 -stevilo_vpisanih[[i]] <- formatC2(c(stevilo_vpisanih[[i]]), digits=0, format = 'f') -ni_pristopilo[[i]] <- formatC2(c(ni_pristopilo[[i]]), digits=0, format = 'f') -ni_pristopilo.pct[[i]] <- formatC2(c(ni_pristopilo.pct[[i]]), digits=0, format = 'f') -vektorProgrami[[i]] <- c(vektorProgrami[[i]], sum(vektorProgrami[[i]])) -#Sestavimo podatkovni okvir za prvo tabelo (Popravi: preimenuj tabele v kodi) -struktura_studijski_program[[i]] <- data.frame(programiV1[[i]], stevilo_vpisanih[[i]], stolpec100[[i]], ni_pristopilo[[i]], ni_pristopilo.pct[[i]], podatki_N_vsi[[i]], stolpec100[[i]], poProgramih_N_veljavni[[i]], odgovori_pct[[i]], podatki.r[[i]], podatki.r.pct[[i]]) -struktura_studijski_program[[i]] <- data.frame( -sapply(struktura_studijski_program[[i]], -function(x){as.character(x)}), stringsAsFactors = F) -struktura_studijski_program_temp <- list() -struktura_studijski_program_koncni <- list() -struktura_studijski_program_stolpci_temp <- list() -struktura_studijski_program_stolpci_koncni <- list() -colnames(struktura_studijski_program[[i]]) <- 1:11 -for (k in 1:nrow(struktura_studijski_program[[i]])){ -struktura_studijski_program_temp[[k]] <- data.frame( -paste0(struktura_studijski_program[[i]][k,1], -" (vpisani)"), -struktura_studijski_program[[i]][k,c(2:5)], -struktura_studijski_program[[i]][k,c(6)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(6)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), -struktura_studijski_program[[i]][k,c(8)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(8)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), -struktura_studijski_program[[i]][k,c(10)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(10)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f')) -temp <- data.frame(paste0(struktura_studijski_program[[i]][k,1], -" (pristopili)"), "", "", "", "", struktura_studijski_program[[i]][k,c(6:11)], stringsAsFactors = F) -colnames(temp) <- 1:11 -colnames(struktura_studijski_program_temp[[k]]) <- 1:11 -struktura_studijski_program_koncni[[k]] <- rbind( -struktura_studijski_program_temp[[k]], temp) -} -struktura_studijski_program_koncni_2[[i]] <- do.call(rbind, struktura_studijski_program_koncni) -struktura_studijski_program_koncni_2[[i]] <- data.frame(sapply(struktura_studijski_program_koncni_2[[i]], as.character), stringsAsFactors=F) -struktura_studijski_program_koncni_2[[i]][,8] <- oklepajiVektor_f(as.numeric(as.character(struktura_studijski_program_koncni_2[[i]][,8]))) -struktura_studijski_program_koncni_2[[i]][struktura_studijski_program_koncni_2[[i]] == 100] <- "\\textbf{100}" -colnames(struktura_studijski_program_koncni_2[[i]]) <- c("", "N", "\\%", "N", "\\%", "$n_0$", "\\%", "n", "\\%", "r", "\\%") -hlines[[i]] <- c(nrow(struktura_studijski_program_koncni_2[[i]])-1) -} -for (i in c(podatki_letnik)){ -# Te podatke shrani v vektor, da jih lahko prestejemo / izpisemo v tabeli -# Stevilo veljavnih enot na program -# Primerjavo z ID-ji vseh enot delamo, ker imajo vse enote lahko razlicen id od veljavnih -# ker ne bi imeli vrednosti bi dobili napacne izracune -for (j in 1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni)){ -### Odgovorili -poProgramih_N_veljavni[[i]][j] <- as.numeric(length(veljavneEnote[[i]]$Q3a[veljavneEnote[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) -stevilo_vpisanih[[i]][j] <- subset(vpisani_tabela[[i]][,4], (vpisani_tabela[[i]][,2] == veljavneEnote[[i]]$siffaks[1] & vpisani_tabela[[i]][,3] == tip_programa[[i]]$idprog_uq_vsi[[j]])) -} -#Vseh enot za tabelo: 'Struktura študentov glede na študijski program' (n) -### Pristopili -vsehT1[[i]] <- sum(poProgramih_N_veljavni[[i]]) -#Izpišemo število VSEH enot glede na posamezen program -for (j in 1:length(tip_programa[[i]]$idprog_uq_vsi)){podatki_N_vsi[[i]][j]<-as.numeric( -length(podatki[[i]]$Q3a[podatki[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) -} -odgovori_pct[[i]] <- formatC2((poProgramih_N_veljavni[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") -odgovori_pct[[i]] <- c(odgovori_pct[[i]], formatC2((sum(poProgramih_N_veljavni[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format="f")) -#Izracun stevila tistih, ki niso odgovorili (Zavrnili) -podatki.r[[i]] <- podatki_N_vsi[[i]] - poProgramih_N_veljavni[[i]] -#Z lapply poženemo zgornjo funkcijo cez poProgramih_N_veljavni, kjer so shranjene dolžine seznama sodelujoci POPRAVI: GLEDE NA POGOJ_____ in dobimo seznam odstotkov -odstotkiT1[[i]] <- sapply(poProgramih_N_veljavni[[i]], function(x){ -x <- (x/vsehT1[[i]]*100) -x <- round2(x, digits=0) -}) -podatki.r.pct[[i]] <- formatC2((podatki.r[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") -#Odstotke iz seznama prenesemo v vektor -for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni))){vektorProgrami[[i]][j]<-odstotkiT1[[i]][j]} -odstotkiT1[[i]] <- c(odstotkiT1[[i]], formatC2(sum(unlist(odstotkiT1[[i]])), digits=0, format="f")) -#Dodamo vrstico 'skupaj' -programiV1[[i]] <- c(tip_programa[[i]]$naziv, "Skupaj") -poProgramih_N_veljavni[[i]] <- c(poProgramih_N_veljavni[[i]], vsehT1[[i]]) -poProgramih_N_veljavni_z_oklepaji[[i]] <- oklepajiVektor_f(poProgramih_N_veljavni[[i]]) -#za 'r%' -podatki.r.pct[[i]] <- c(podatki.r.pct[[i]], formatC2((sum(podatki.r[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format ="f")) -#Dodamo vrstico skupaj -podatki_N_vsi[[i]] <- formatC2(c(podatki_N_vsi[[i]], sum(podatki_N_vsi[[i]])), digits=0, format='f') -stevilo_vpisanih[[i]] <- c(stevilo_vpisanih[[i]], sum(stevilo_vpisanih[[i]])) -# Odebeljena vsota udelezenih, tistih, ki niso odgovorili -podatki.r[[i]] <- formatC2(c(podatki.r[[i]], sum(podatki.r[[i]])), digits=0, format='f') -stolpec100[[i]] <- formatC2(rep(100, length(podatki_N_vsi[[i]])), digits=0, format ='f') -ni_pristopilo[[i]] <- as.numeric(stevilo_vpisanih[[i]]) - as.numeric(podatki_N_vsi[[i]]) -ni_pristopilo.pct[[i]] <- ni_pristopilo[[i]]/as.numeric(stevilo_vpisanih[[i]])*100 -stevilo_vpisanih[[i]] <- formatC2(c(stevilo_vpisanih[[i]]), digits=0, format = 'f') -ni_pristopilo[[i]] <- formatC2(c(ni_pristopilo[[i]]), digits=0, format = 'f') -ni_pristopilo.pct[[i]] <- formatC2(c(ni_pristopilo.pct[[i]]), digits=0, format = 'f') -vektorProgrami[[i]] <- c(vektorProgrami[[i]], sum(vektorProgrami[[i]])) -#Sestavimo podatkovni okvir za prvo tabelo (Popravi: preimenuj tabele v kodi) -struktura_studijski_program[[i]] <- data.frame(programiV1[[i]], stevilo_vpisanih[[i]], stolpec100[[i]], ni_pristopilo[[i]], ni_pristopilo.pct[[i]], podatki_N_vsi[[i]], stolpec100[[i]], poProgramih_N_veljavni[[i]], odgovori_pct[[i]], podatki.r[[i]], podatki.r.pct[[i]]) -struktura_studijski_program[[i]] <- data.frame( -sapply(struktura_studijski_program[[i]], -function(x){as.character(x)}), stringsAsFactors = F) -struktura_studijski_program_temp <- list() -struktura_studijski_program_koncni <- list() -struktura_studijski_program_stolpci_temp <- list() -struktura_studijski_program_stolpci_koncni <- list() -colnames(struktura_studijski_program[[i]]) <- 1:11 -for (k in 1:nrow(struktura_studijski_program[[i]])){ -struktura_studijski_program_temp[[k]] <- data.frame( -paste0(struktura_studijski_program[[i]][k,1], -" (vpisani)"), -struktura_studijski_program[[i]][k,c(2:5)], -struktura_studijski_program[[i]][k,c(6)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(6)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), -struktura_studijski_program[[i]][k,c(8)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(8)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), -struktura_studijski_program[[i]][k,c(10)], -formatC2(as.numeric(struktura_studijski_program[[i]][k,c(10)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f')) -temp <- data.frame(paste0(struktura_studijski_program[[i]][k,1], -" (pristopili)"), "", "", "", "", struktura_studijski_program[[i]][k,c(6:11)], stringsAsFactors = F) -colnames(temp) <- 1:11 -colnames(struktura_studijski_program_temp[[k]]) <- 1:11 -struktura_studijski_program_koncni[[k]] <- rbind( -struktura_studijski_program_temp[[k]], temp) -} -struktura_studijski_program_koncni_2[[i]] <- do.call(rbind, struktura_studijski_program_koncni) -struktura_studijski_program_koncni_2[[i]] <- data.frame(sapply(struktura_studijski_program_koncni_2[[i]], as.character), stringsAsFactors=F) -struktura_studijski_program_koncni_2[[i]][,8] <- oklepajiVektor_f(as.numeric(as.character(struktura_studijski_program_koncni_2[[i]][,8]))) -struktura_studijski_program_koncni_2[[i]][struktura_studijski_program_koncni_2[[i]] == 100] <- "\\textbf{100}" -colnames(struktura_studijski_program_koncni_2[[i]]) <- c("", "N", "\\%", "N", "\\%", "$n_0$", "\\%", "n", "\\%", "r", "\\%") -hlines[[i]] <- c(nrow(struktura_studijski_program_koncni_2[[i]])-1) -} -idprog_uq_vsi <- list() -tip_programa <- list() -tip_programa2 <- list() -for (i in c(podatki_letnik)){ -idprog_uq_vsi[[i]] <- unique(podatki[[i]]$idprog) -tip_programa[[i]] <- data.frame(idprog_uq_vsi[[i]], stringsAsFactors = F) -tip_programa[[i]]$naziv <- sapply(tip_programa[[i]]$idprog_uq_vsi, function(x){ -unique(podatki[[i]]$program[podatki[[i]]$idprog == x]) -#}}) -}) -# df uredimo glede na padajoce ime programov -tip_programa[[i]] <- arrange(tip_programa[[i]], naziv) -} -idprog_uq_veljavni <- list() -tip_programa_veljavni <- list() -for (i in c(podatki_letnik)){ -idprog_uq_veljavni[[i]] <- unique(veljavneEnote[[i]]$idprog) -# Tu izlocimo program (ime), idprog, ki jih bomo pripisali, kot tip programa v tabeli 1 -tip_programa_veljavni[[i]] <- data.frame(idprog_uq_veljavni[[i]], stringsAsFactors = F) -tip_programa_veljavni[[i]]$naziv <- sapply(tip_programa_veljavni[[i]][,1], function(x){ -unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog == x]) -}) -tip_programa_veljavni[[i]] <- arrange(tip_programa_veljavni[[i]], naziv) -colnames(tip_programa[[i]]) <- c("idprog_uq_vsi", "naziv") -colnames(tip_programa_veljavni[[i]]) <- c("idprog_uq_veljavni", "naziv") -} -odg_gledeProgram <- list() -for (i in podatki_letnik){ -odg.GP <- list() -for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq))){ -# Zakaj -length(veljavneEnote[[i]]) -odg.GP[j] <- list(filter(veljavneEnote[[i]][-length(veljavneEnote[[i]])], idprog == tip_programa_veljavni[[i]]$idprog_uq[[j]])) -} -# s subset -# veljavneEnote[[1]][veljavneEnote[[1]]$program == tip_programa$idprog_uq_veljavni[[i]]] -# Veljavni odg. glede na program -# Veljavni odgovori za enote razvrščene po programu -# ali odgovori za vsa vprasanja glede na program -odgGPV <- vector(mode="list", length = length(odg.GP)) -for (j in (1:length(odg.GP))){ -for (k in (1:length(vprZ[[i]]$kratkoIme))){ -jj <- vprZ[[i]]$kratkoIme[k] -odgGPV[[j]][jj] <- subset(odg.GP[[j]][jj], odg.GP[[j]][jj] > 0) -} -} -# Odgovore spremenimo iz stringov v numeric -odgGPV <- lapply(odgGPV, function(x){lapply(x, function(y){as.numeric(y)})}) -# Podatke moramo najprej spremeniti v numeric, ta funkcija nam pri majhnem številu #odgovorov na posamezni program in vprasanje (2), izpise rezultate v napacni obliki in nadaljnji izracuni ne delujejo -# povprecja, dolzine, ... za vsa vprasanja glede na program -sy.mean <- lapply(odgGPV, function(x) sapply(x, mean)) -sy.length <- lapply(odgGPV, function(x) sapply(x, function(x) length(x))) -#sy.sd <- lapply(odgGPV, function(x) sapply(x, sd)) -# Povprečja, dolžine, za vse programe določenega letnika -sy.mean_output[[i]] <- sy.mean -sy.length_output[[i]] <- sy.length -### Izračuni za skupaj #se nadaljuje v f_tabele priloga -#odgVeljavni_skupaj_df <- rbind(odgVeljavni[[1]], odgVeljavni[[2]]) -skupaj.mean <- lapply(odgVeljavni[[i]], mean) -skupaj.length <- lapply(odgVeljavni[[i]], length) -#skupaj.sd <- lapply(odgVeljavni, sd) -skupaj.mean_output[[i]] <- skupaj.mean -skupaj.length_output[[i]] <- skupaj.length -# Izracuni 'izbirnih predmetov' - po programih in po letnikih. (Podatki) -odg_gledeProgram[[i]] <- odg.GP -} -izbirni_list_letnik <- list() -izbirni_list_vprasanja <- list() -izbirni_list_program <- list() -disertacija_poProgramih <- list() -triletno_poProgramih <- list() -nacin_poProgramih <- list() -nacin_poLetniku <- list() -razlog_list_vprasanja <- list() -razlog_poProgramih <- list() -razlog_poLetniku <- list() -cas_poProgramih <- list() -cas_poLetniku <- list() -oblika_poProgramih <- list() -oblika_poLetniku <- list() -danes_odlocali_poProgramih <- list() -danes_odlocali_poLetniku <- list() -kam_vpisali_poProgramih <- list() -kam_vpisali_poLetniku <- list() -for(i in 1:length(odg_gledeProgram[1])){ # po letnikih -for (j in 1:length(odg_gledeProgram[[i]])){ # po programih -if (nchar(unique(odg_gledeProgram[[i]][[j]]$program))>30){ -imeProg <- paste0(strtrim(unique(odg_gledeProgram[[i]][[j]]$program),30), ".") -} -else{ -imeProg <- unique(odg_gledeProgram[[i]][[j]]$program) -} -# V bazi prvih letnikov so nekoliko drugacna imena stolpcev -if (i == 1){ -izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q9", "Q12", "Q19", "Q22")] -oblika <- odg_gledeProgram[[i]][[j]][c("Q16")] -danes_odlocali <- odg_gledeProgram[[i]][[j]][c("Q36")] -kam_vpisali <- odg_gledeProgram[[i]][[j]][c("Q37")] -# Doktorska disertacija: -disertacija_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q27")] -disertacija_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -Da = length(disertacija_poProgramih[[j]][disertacija_poProgramih[[j]] == 1]), -Ne = length(disertacija_poProgramih[[j]][disertacija_poProgramih[[j]] == 2]), -stringsAsFactors = F) -# Kako studirate?: -nacin <- odg_gledeProgram[[i]][[j]][c("Q34")] -nacin_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -a = length(nacin[nacin == 1]), -b = length(nacin[nacin == 2]), -c = length(nacin[nacin == 3]), -d = length(nacin[nacin == 4]), -e = length(nacin[nacin == 5]), -stringsAsFactors = F) -# Zakaj ste se odlocili za doktorski studij? -razlog <- odg_gledeProgram[[i]][[j]][c("Q35a", "Q35b", "Q35c", "Q35d", "Q35e", "Q35f", "Q35g")] -razlog_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -a = length(razlog$Q35a[razlog$Q35a == 1]), -b = length(razlog$Q35b[razlog$Q35b == 1]), -c = length(razlog$Q35c[razlog$Q35c == 1]), -d = length(razlog$Q35d[razlog$Q35d == 1]), -e = length(razlog$Q35e[razlog$Q35e == 1]), -f = length(razlog$Q35f[razlog$Q35f == 1]), -g = length(razlog$Q35g[razlog$Q35g == 1]), -stringsAsFactors = F) -} else if (i == 2){ -izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q10", "Q13", "Q20", "Q23")] -oblika <- odg_gledeProgram[[i]][[j]][c("Q17")] -danes_odlocali <- odg_gledeProgram[[i]][[j]][c("Q37")] -kam_vpisali <- odg_gledeProgram[[i]][[j]][c("Q38")] -# Triletno trajanje: -triletno_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q8")] -triletno_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -prekratko = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 1]), -predolgo = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 2]), -nevem = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 3]), -da = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 4]), -stringsAsFactors = F) -# Kako studirate?: -nacin <- odg_gledeProgram[[i]][[j]][c("Q35")] -nacin_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -a = length(nacin[nacin == 1]), -b = length(nacin[nacin == 2]), -c = length(nacin[nacin == 3]), -d = length(nacin[nacin == 4]), -e = length(nacin[nacin == 5]), -stringsAsFactors = F) -# Zakaj ste se odlocili za doktorski studij? -razlog <- odg_gledeProgram[[i]][[j]][c("Q36a", "Q36b", "Q36c", "Q36d", "Q36e", "Q36f", "Q36g")] -razlog_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -a = length(razlog$Q36a[razlog$Q36a == 1]), -b = length(razlog$Q36b[razlog$Q36b == 1]), -c = length(razlog$Q36c[razlog$Q36c == 1]), -d = length(razlog$Q36d[razlog$Q36d == 1]), -e = length(razlog$Q36e[razlog$Q36e == 1]), -f = length(razlog$Q36f[razlog$Q36f == 1]), -g = length(razlog$Q36g[razlog$Q36g == 1]), -#Vprasanje = l, -stringsAsFactors = F) -} -for (k in 1:4){ -izbirni_daNe <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -Da = length(izbirni_poProgramih[,k][izbirni_poProgramih[,k] == 1]), -Ne = length(izbirni_poProgramih[,k][izbirni_poProgramih[,k] == 2]), -Vprasanje = k, -stringsAsFactors = F) -izbirni_list_vprasanja[[k]] <- izbirni_daNe -} -izbirni_list_program[[j]] <- do.call(rbind, izbirni_list_vprasanja) -# Ali se vam zdi cas, ki ga namenite dr. studiju ustrezen? (Q7) -# Doktorska disertacija_current: -cas_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q7")] -cas_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -Da = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 3]), -Ne_prevec = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 2]), -Ne_premalo = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 1]), -stringsAsFactors = F) -oblika_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -Predavanja = length(oblika[oblika == 1]), -Konzultacije = length(oblika[oblika == 2]), -Kombinacija_obojega = length(oblika[oblika == 3]), -stringsAsFactors = F) -danes_odlocali_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -enako = length(danes_odlocali[danes_odlocali == 1]), -drugam = length(danes_odlocali[danes_odlocali == 2]), -nebi = length(danes_odlocali[danes_odlocali == 3]), -nevem = length(danes_odlocali[danes_odlocali == 4]), -stringsAsFactors = F) -kam_vpisali_poProgramih[[j]] <- data.frame(Program = imeProg, -Letnik = letnik_besedi[i], -drug = length(kam_vpisali[kam_vpisali == 1]), -vs = length(kam_vpisali[kam_vpisali == 2]), -tujino = length(kam_vpisali[kam_vpisali == 3]), -stringsAsFactors = F) -} -izbirni_list_letnik[[i]] <- do.call(rbind, izbirni_list_program) -razlog_poLetniku[[i]] <- do.call(rbind, razlog_poProgramih) -cas_poLetniku[[i]] <- do.call(rbind, cas_poProgramih) -oblika_poLetniku[[i]] <- do.call(rbind, oblika_poProgramih) -danes_odlocali_poLetniku[[i]] <- do.call(rbind, danes_odlocali_poProgramih) -kam_vpisali_poLetniku[[i]] <- do.call(rbind, kam_vpisali_poProgramih) -nacin_poLetniku[[i]] <- do.call(rbind, nacin_poProgramih) -# Vprasanji sta zastavljeni le v eni izmed obeh anket -# Doktorska disertacija -disertacija_poProgramih_out <- do.call(rbind, disertacija_poProgramih) -# Triletno trajanje -triletno_poProgramih_out <- do.call(rbind, triletno_poProgramih) -} -cas_poLetniku -danes_odlocali_poLetniku -oblika_poProgramih -odg_gledeProgram -1:length(odg_gledeProgram[1] -library(knitr) -# Delovna mapa mora biti tista, kjer sta obe .r skripti -for (i in c(1)){ -IDs <- c(3000071) -ID <- IDs[i] -owd = getwd() -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -prvaBaza <- seq(1,30,2)[i] -drugaBaza <- seq(2,30,2)[i] -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), -paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) -# Uvozimo podatke, if stavek, ker imajo nekatere baze drugacen encoding -vhodni_podatki <- vector('list',2) -podatki <- list() -if (i %in% c(8,12,13)){ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE,encoding="UTF-8")) -}else if(i %in% c(16, 17)){ -if (i==16){ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/AG_2.csv")) -}else{ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) -} -#imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/BF_2_anketa218-2016-11-02.csv")) -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel, stringsAsFactors = FALSE, encoding="UTF-8")) -}else{ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE)) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE)) -} -# prek idprogram-a poveĹľemo bazo odgovorov z bazo, -# kjer je dostopno stevilo vpisanih -vpisani_tabela <- list() -vpisani_tabela[[1]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_prvi_letnik.csv")) -vpisani_tabela[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_drugi_letnik.csv")) -# Kodo pretvorimo v pdf. -knit2pdf('splosnaDoktorska_po_Institucijah.Rnw', encoding = 'UTF-8') -#knit2pdf('../splosnaDoktorska.Rnw', encoding = 'UTF-8') -# Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID -novaMapa <- paste0("rezultati/", ID, "/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -# Testi: -novaMapa <- paste0("rezultati/vsaPorocila/po_institucijah/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -file.copy("splosnaDoktorska_po_Institucijah.pdf", novaMapa, overwrite =T) -# Delovno pot spremenimo v prvotno. -setwd(owd) -print(i) -print(imenaTabel) -} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/cmunrm.ttf b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/cmunrm.ttf deleted file mode 100644 index 1c3fff0a6..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/cmunrm.ttf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/koda2pdf_po_Institucijah.R b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/koda2pdf_po_Institucijah.R deleted file mode 100644 index 111881086..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/koda2pdf_po_Institucijah.R +++ /dev/null @@ -1,64 +0,0 @@ - library(knitr) - # Delovna mapa mora biti tista, kjer sta obe .r skripti - - for (i in c(1)){ - IDs <- c(3000071) - - - ID <- IDs[i] - owd = getwd() - imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") - - prvaBaza <- seq(1,30,2)[i] - drugaBaza <- seq(2,30,2)[i] - - imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), - paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) - - # Uvozimo podatke, if stavek, ker imajo nekatere baze drugacen encoding - vhodni_podatki <- vector('list',2) - podatki <- list() - - if (i %in% c(8,12,13)){ - vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) - vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE,encoding="UTF-8")) - - }else if(i %in% c(16, 17)){ - if (i==16){ - imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/AG_2.csv")) - }else{ - imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) - } - #imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/BF_2_anketa218-2016-11-02.csv")) - vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel, stringsAsFactors = FALSE, encoding="UTF-8")) - - }else{ - vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE)) - vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE)) - } - - # prek idprogram-a povežemo bazo odgovorov z bazo, - # kjer je dostopno stevilo vpisanih - vpisani_tabela <- list() - vpisani_tabela[[1]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_prvi_letnik.csv")) - vpisani_tabela[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_drugi_letnik.csv")) - - # Kodo pretvorimo v pdf. - knit2pdf('splosnaDoktorska_po_Institucijah.Rnw', encoding = 'UTF-8') - #knit2pdf('../splosnaDoktorska.Rnw', encoding = 'UTF-8') - - # Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID - novaMapa <- paste0("rezultati/", ID, "/", fakulteta, "_", - format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") - # Testi: - novaMapa <- paste0("rezultati/vsaPorocila/po_institucijah/", fakulteta, "_", - format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") - - file.copy("splosnaDoktorska_po_Institucijah.pdf", novaMapa, overwrite =T) - - # Delovno pot spremenimo v prvotno. - setwd(owd) - print(i) - print(imenaTabel) - } - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/koda2pdf_po_Programih.R b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/koda2pdf_po_Programih.R deleted file mode 100644 index 9f8ab2283..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/koda2pdf_po_Programih.R +++ /dev/null @@ -1,195 +0,0 @@ - library(knitr) - # Delovna mapa mora biti tista, kjer sta obe .r skripti - for (i in c(8)){ - IDs <- c(3000043, 3000071, 3000025, - 3000021, 3000018, 3000026, - # FMF (8) - 3000030, 3000027, 3000009, - # (11 - FSD) - 3000022, 3000006, - # NTF, PEF (12,13) - 3000029, 3000001, - 3000020, - 3000050, - 3000023) - - - ID <- IDs[i] - owd = setwd('temp') - imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") - - prvaBaza <- seq(1,30,2)[i] - drugaBaza <- seq(2,30,2)[i] - - imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), - paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) - - vhodni_podatki <- vector('list',2) - podatki <- list() - - if (i == 8 | i == 12 | i==13){ - vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE))#, encoding="UTF-8")) - vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE))#, encoding="UTF-8")) - }else if (i %in% c(16,17)){ - if (i==16){ - imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSP_1_anketa221-2016-11-02.csv")) - }else{ - imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) - } - vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) - - }else{ - vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) - vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE, encoding="UTF-8")) - } - - # FSD, FS - #vhodni_podatki <- vector('list',2) - #ID <- 3000023 - #imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSP_1_anketa221-2016-11-02.csv")) - #ID <- 3000006 - #imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) - #vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) - - - # Podatkom odstranimo "=" - stevec_podatkov <- 0 - podatki_letnik <- c(1,2) - - for (i in podatki_letnik){ - if (length(vhodni_podatki[[i]]) == 0){ - podatki_letnik <- podatki_letnik[podatki_letnik != i] - }else{ - stevec_podatkov <- stevec_podatkov + 1 - podatki[[stevec_podatkov]] <- as.data.frame(lapply(vhodni_podatki[[i]], - function(y) gsub("=", "", y)), - stringsAsFactors = F) - - # izbrisemo prvo vrstico, ki so imena stolpcev - podatki[[stevec_podatkov]] <- podatki[[stevec_podatkov]][-c(1),] - - podatki[[stevec_podatkov]] <- subset(podatki[[stevec_podatkov]], podatki[[stevec_podatkov]]$idprog != "-2") - - if(podatki[[stevec_podatkov]]$Q1[1] == "Jezik"){ - podatki[[stevec_podatkov]] <- podatki[[stevec_podatkov]][-c(1),] - - } - podatki[[i]] <- subset(podatki[[stevec_podatkov]], - (podatki[[stevec_podatkov]]["status"] == 6 & - podatki[[stevec_podatkov]]["lurker"] == 0)) - } - } - - # Uvoz tabele studijski programi - ce je tu kodiranje UTF-8, so v - # napisih znaki npr.: " - - studijskiProgramiT <- read.csv2(paste0(owd,"/pomozne_tabele/studijskiProgrami.csv"), - stringsAsFactors = FALSE) - - ############## - #Uvoz pomoznih tabel - # Struktura: - #kratkoIme dolgoIme tip id sklop kljucnaBeseda barplot sklopBeseda - ########## - # Pomoznih tabel zaenkrat ne moremo zdruziti, ker imajo vprasanja z istimi napisi - # glede na letnik drugo kratko ime - - pomoznaT <- list(read.csv2(paste0(owd,"/pomozne_tabele/pomoznaT_Doktorska_nova.csv"), stringsAsFactors = FALSE)) - pomoznaT[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/pomoznaT_Doktorska_nova_drugi.csv"), stringsAsFactors = FALSE) - - # Izlocimo podatke samo za odgovore zaprtega tipa - vprZ <- list() - vprZ[[1]] <- subset(pomoznaT[[1]], pomoznaT[[1]]$tip==0) - vprZ[[2]] <- subset(pomoznaT[[2]], pomoznaT[[2]]$tip==0) - vprZ[[3]] <- vprZ[[1]] - - ######################## - #Filter veljavnih podatkov - # Q3a != "1" - ######################## - veljavneEnote <- vector('list', length(podatki)) - veljavniProg <- vector('list', length(podatki)) - odgVeljavni <- vector('list', length(podatki)) - veljavniSklopi <- vector('list', length(podatki)) - leto <- list() - napisiST <- list("\\textbf{Dejavnik}") - unikatni_veljavni_programi <- vector('list', length(podatki)) - - # prek idprogram-a povežemo bazo odgovorov z bazo, kjer je dostopno stevilo vpisanih - vpisani_tabela <- list() - vpisani_tabela[[1]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_prvi_letnik.csv")) - vpisani_tabela[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_drugi_letnik.csv")) - stevilo_vpisanih <- vector('list', length(podatki)) - - for(i in c(podatki_letnik)){ - # Stari podatki imajo filter v vrstici Q3a - # ce imajo enote pri tej spremenljivki vrednost 1 jih izkljucimo - if("Q3a" %in% colnames(podatki[[i]])){ - veljavneEnote[[i]] <- subset(podatki[[i]], podatki[[i]]["Q3a"] == -1) - } - unikatni_veljavni_programi[[i]] <- unique(veljavneEnote[[i]]$idprog) - } - - - unikatni_veljavni_programi <- unique(unlist(unikatni_veljavni_programi)) - for (programID in 1:length(unikatni_veljavni_programi)){ - odgVeljavni <- list() - podatki_programi <- as.numeric() - veljavneEnote_trenutne <- vector('list', length(podatki)) - podatki_trenutni <- vector('list', length(podatki)) - - - for (j in podatki_letnik){ - if (unikatni_veljavni_programi[[programID]] %in% veljavneEnote[[j]]$idprog){ - podatki_programi <- c(podatki_programi, j) - } - } - - for (j in podatki_programi){ - veljavneEnote_trenutne[[j]] <- subset(veljavneEnote[[j]], - veljavneEnote[[j]]$idprog == unikatni_veljavni_programi[[programID]]) - podatki_trenutni[[j]] <- subset(podatki[[j]], - podatki[[j]]$idprog == unikatni_veljavni_programi[[programID]]) - # Po letnikih: - # Izlocimo samo veljavne odgovore in odgovore spremenimo nazaj v numeric - # gsub jih spremeni v stringe in drugace povzroca tezave pri izracunih - - odgVeljavni[[j]] <- sapply(vprZ[[j]]$kratkoIme, function(x){ - lapply(veljavneEnote_trenutne[[j]][x], function(y) { - as.numeric(na.omit(y))}) - }) - - names(odgVeljavni[[j]]) <- vprZ[[j]]$kratkoIme - odgVeljavni[[j]] <- sapply(odgVeljavni[[j]], function(x){ - subset(x, x>0)}) - - stevilo_vpisanih[[j]] <- subset(vpisani_tabela[[j]][,4], (vpisani_tabela[[j]][,2] == veljavneEnote_trenutne[[j]]$siffaks[1] & - vpisani_tabela[[j]][,3] == unikatni_veljavni_programi[[programID]])) - - if(nrow(veljavneEnote_trenutne[[j]]) < 4){ - podatki_programi <- podatki_programi[podatki_programi != j] - } - } - - if (length(podatki_programi) == 2){ - podatki_programi <- c(podatki_programi, 3) - } - # Kodo pretvorimo v pdf. - print(length(podatki_programi)) - - if (length(podatki_programi) != 0){ - knit2pdf('../splosnaDoktorska_po_Programih.Rnw', encoding = 'UTF-8') - - novaMapa <- paste0("../rezultati/vsaPorocila/po_programih/", fakulteta, "_", - format(Sys.time(), "%Y"), "_splosna_doktorska_", - unikatni_veljavni_programi[[programID]],"_2.pdf") - - file.copy("splosnaDoktorska_po_Programih.pdf", novaMapa, overwrite =T) - print(programID) - print(imenaTabel) - } - } - # Delovno pot spremenimo v prvotno. - setwd(owd) -} - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_AG.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_AG.png deleted file mode 100644 index 08167f2a1..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_AG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_AGRFT.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_AGRFT.png deleted file mode 100644 index 0ce636ac9..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_AGRFT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_ALU.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_ALU.png deleted file mode 100644 index ebc2a3376..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_ALU.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_BF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_BF.png deleted file mode 100644 index 18b8aa1a2..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_BF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_EF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_EF.png deleted file mode 100644 index 93a99535b..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_EF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FA.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FA.png deleted file mode 100644 index a1556aa8f..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FA.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FDV.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FDV.png deleted file mode 100644 index cd760790d..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FDV.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FE.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FE.png deleted file mode 100644 index 2004f96c0..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FE.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FF.png deleted file mode 100644 index 9a7853e20..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FFA.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FFA.png deleted file mode 100644 index e3a1ec3f8..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FFA.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FFARM.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FFARM.png deleted file mode 100644 index e3a1ec3f8..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FFARM.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FGG.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FGG.png deleted file mode 100644 index 89ea50719..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FGG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FKKT.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FKKT.png deleted file mode 100644 index e32a5e6b9..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FKKT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FMF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FMF.png deleted file mode 100644 index fbe338733..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FMF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FPP.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FPP.png deleted file mode 100644 index 798ad486b..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FPP.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FRI.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FRI.png deleted file mode 100644 index 541a49607..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FRI.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FS.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FS.png deleted file mode 100644 index 142f68468..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FS.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSD.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSD.png deleted file mode 100644 index 7a77dff35..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSD.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSP.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSP.png deleted file mode 100644 index 142f68468..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSP.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSTR.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSTR.png deleted file mode 100644 index e8e27fed1..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FSTR.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FU.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FU.png deleted file mode 100644 index 3f29baf8b..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FU.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FŠ.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FŠ.png deleted file mode 100644 index 142f68468..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_FŠ.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_MF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_MF.png deleted file mode 100644 index 0c6d4de60..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_MF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_NTF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_NTF.png deleted file mode 100644 index c7122d172..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_NTF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_PEF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_PEF.png deleted file mode 100644 index ef610a1b0..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_PEF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_PF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_PF.png deleted file mode 100644 index 2a394a128..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_PF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_TEOF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_TEOF.png deleted file mode 100644 index 05eb09138..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_TEOF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_UN.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_UN.png deleted file mode 100644 index 672cdff36..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_UN.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_VF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_VF.png deleted file mode 100644 index a08aced59..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_VF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_ZF.png b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_ZF.png deleted file mode 100644 index cc781bc7a..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/logo/logo_ZF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/pomozne_tabele/primerjave_tabel.xlsx b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/pomozne_tabele/primerjave_tabel.xlsx deleted file mode 100644 index 3348c07c1..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/pomozne_tabele/primerjave_tabel.xlsx and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/sloven2e.sty b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/sloven2e.sty deleted file mode 100644 index a25f70321..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/sloven2e.sty +++ /dev/null @@ -1,42 +0,0 @@ -% -% slovene.sty - prilagoditev zvrsti ARTICLE, BOOK in REPORT slovenscini -% -\@ifundefined{slovensko}{\def\slovensko{}}{\endinput} -\typeout{Document Style Option 'Sloven2e' ver 0.1. / 11-Nov-95 / V.B.} - -% naslovi - -\def\abstractname{Povzetek} -\def\appendixname{Dodatek} -\def\bibname{Literatura} -\def\ccname{cc} -\def\chaptername{Poglavje} -\def\contentsname{Kazalo} -\def\enclname{Priloge} -\def\figurename{Slika\ } -\def\headpagename{Stran} -\def\headtoname{Komu} -\def\indexname{Stvarno kazalo} -\def\listfigurename{Slike} -\def\listtablename{Tabele} -\def\partname{Del} -\def\prefacename{Predgovor} -\def\seename{glej} -\def\alsoseename{glej tudi} -\def\refname{Viri} -\def\tablename{Tabela\ } - -% tekoci datum - -\def\today{\number\day. \ifcase\month\or - januar\or februar\or marec\or april\or maj\or junij\or - julij\or avgust\or september\or oktober\or november\or december\fi - \space\number\year} - - -% slovenski narekovaji - -\def\lqlq{\leavevmode\hbox{,\kern-.1em,}} -\def\rqrq{\leavevmode\hbox{`\kern-.1em`}} - -\endinput diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.Rnw b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.Rnw deleted file mode 100644 index 4c85d7657..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.Rnw +++ /dev/null @@ -1,5567 +0,0 @@ -% Skripta 1: po institucijah - -\documentclass[11pt,a4paper]{report} -\usepackage[cm]{fullpage} -\newcommand*\rot{\rotatebox{90}} -%\zmanjša robove dokumenta -%\usepackage{fullpage} -% Spremeni razmik med naslovom kazala vrhom strani -\usepackage{titlesec} -\titleformat{\chapter}[display] - {\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge} -\titlespacing*{\chapter}{0pt}{-15pt}{25pt} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%slovenski napisi -\usepackage{sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -%Hiperlink tabele -% Pomembno, da pravilno prelomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage[breaklinks]{hyperref} -% Times font -\usepackage{times} -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} -\usepackage{breakurl} -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri poglavjih -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -\usepackage{graphicx} -\graphicspath{ {logo/} } -% Uporabimo za prilagajanje glave in noge porocila -\usepackage{fancyhdr} - -<<1, echo = FALSE>>= -############## -# 1. Uvoz pomoznih tabel -# Struktura (stolpci): -# kratkoIme dolgoIme tip id sklop kljucnaBeseda barplot sklopBeseda -# 2. Pripišemo ime fakultete in ime logotipa -########## - -letnik_besedi <- c("Prvi", "Drugi") -pomoznaT <- list(read.csv2("pomozne_tabele/pomoznaT_Doktorska_nova.csv", stringsAsFactors = FALSE)) -pomoznaT[[2]] <- read.csv2("pomozne_tabele/pomoznaT_Doktorska_nova_drugi.csv", stringsAsFactors = FALSE) - -# Izlocimo podatke samo za odgovore zaprtega tipa -vprZ <- list() -vprZ[[1]] <- subset(pomoznaT[[1]], pomoznaT[[1]]$tip==0) -vprZ[[2]] <- subset(pomoznaT[[2]], pomoznaT[[2]]$tip==0) - - -dodatniSklop <- 0 -# Dodatni sklop pripisemo v spodnji kodi - -if (ID == 3000001) { - fakulteta <- "PEF" - fakulteta1 <- "Prakse PEF" - ime.fakultete <- "Pedagoška fakulteta" - logo <- "logo_PEF" -} else if (ID == 3000004){ - fakulteta <- "FU" - fakulteta1 <- "Prakse FU" - ime.fakultete <- "Fakulteta za upravo" - logo <- "logo_FU" -} else if (ID == 3000006){ - fakulteta <- "FSD" - fakulteta1 <- "Prakse FSD" - ime.fakultete <- "Fakulteta za socialno delo" - logo <- "logo_FSD" -} else if (ID == 3000009){ - fakulteta <- "FPP" - fakulteta1 <- "Prakse FPP" - ime.fakultete <- "Fakulteta za pomorstvo in promet" - logo <- "logo_FPP" -} else if (ID == 3000011){ - fakulteta <- "ZF" - fakulteta1 <- "Prakse ZF" - ime.fakultete <- "Zdravstvena fakulteta" - logo <- "logo_ZF" -} else if (ID == 3000018){ - fakulteta <- "FF" - fakulteta1 <- "Prakse FF" - ime.fakultete <- "Filozofska fakulteta" - logo <- "logo_FF" -} else if (ID == 3000019){ - fakulteta <- "EF" - fakulteta1 <- "Prakse EF" - ime.fakultete <- "Ekonomska fakulteta" - logo <- "logo_EF" -} else if (ID == 3000020){ - fakulteta <- "PF" - fakulteta1 <- "Prakse PF" - ime.fakultete <-"Pravna fakulteta" - logo <- "logo_PF" -} else if (ID == 3000021){ - fakulteta <- "FDV" - fakulteta1 <- "Prakse FDV" - ime.fakultete <- "Fakulteta za družbene vede" - logo <- "logo_FDV" -} else if (ID == 3000022){ - fakulteta <- "FŠ" - fakulteta1 <- "Prakse FŠ" - ime.fakultete <- "Fakulteta za šport" - logo <- "logo_FS" -} else if (ID == 3000023){ - fakulteta <- "FSTR" - fakulteta1 <- "Prakse FSTR" - ime.fakultete <- "Fakulteta za strojništvo" - logo <- "logo_FSTR" -} else if (ID == 3000025){ - fakulteta <- "FA" - fakulteta1 <- "Prakse FA" - ime.fakultete <- "Fakulteta za arhitekturo" - logo <- "logo_FA" -} else if (ID == 3000026){ - fakulteta <- "FGG" - fakulteta1 <- "Prakse FGG" - ime.fakultete <- "Fakulteta za gradbeništvo in geodezijo" - logo <- "logo_FGG" -} else if (ID == 3000027){ - fakulteta <- "FMF" - fakulteta1 <- "Prakse FMF" - ime.fakultete <- "Fakulteta za matematiko in fiziko" - logo <- "logo_FMF" -} else if (ID == 3000029){ - fakulteta <- "NTF" - fakulteta1 <- "Prakse NTF" - ime.fakultete <- "Naravoslovnotehniška fakulteta" - logo <- "logo_NTF" -} else if (ID == 3000030){ - fakulteta <- "FKKT" - fakulteta1 <- "Prakse FKKT" - ime.fakultete <- "Fakulteta za kemijo in kemijsko tehnologijo" - logo <- "logo_FKKT" -} else if (ID == 3000031){ - fakulteta <- "FFA" - fakulteta1 <- "Prakse FFA" - ime.fakultete <- "Fakulteta za farmacijo" - logo <- "logo_FFA" -} else if (ID == 3000037){ - fakulteta <- "VF" - fakulteta1 <- "Prakse VF" - ime.fakultete <- "Veterinarska fakulteta" - logo <- "logo_VF" -} else if (ID == 3000041){ - fakulteta <- "MF" - fakulteta1 <- "Prakse MF" - ime.fakultete <- "Medicinska fakulteta" - logo <- "logo_MF" -} else if (ID == 3000042){ - fakulteta <- "ALUO" - fakulteta1 <- "Prakse ALUO" - ime.fakultete <- "Akademija za likovno umetnost in oblikovanje" - logo <- "logo_ALU" -} else if (ID == 3000043){ - fakulteta <- "AG" - fakulteta1 <- "Prakse AG" - ime.fakultete <- "Akademija za glasbo" - logo <- "logo_AG" -} else if (ID == 3000044){ - fakulteta <- "AGRFT" - fakulteta1 <- "Prakse AGRFT" - ime.fakultete <- "Akademija za gledališče, radio, film in televizijo" - logo <- "logo_AGRFT" -} else if (ID == 3000050){ - fakulteta <- "TEOF" - fakulteta1 <- "Prakse TEOF" - ime.fakultete <- "Teološka fakulteta" - logo <- "logo_TEOF" -} else if (ID == 3000063){ - fakulteta <- "FRI" - fakulteta1 <- "Prakse FRI" - ime.fakultete <- "Fakulteta za računalništvo in informatiko" - logo <- "logo_FRI" -} else if (ID == 3000064){ - fakulteta <- "FE" - fakulteta1 <- "Prakse FE" - ime.fakultete <- "Fakulteta za elektrotehniko" - logo <- "logo_FE" -} else if (ID == 3000071){ - fakulteta <- "BF" - fakulteta1 <- "Prakse BF" - ime.fakultete <- "Biotehniška fakulteta" - logo <- "logo_BF" -} else if (ID == 99){ - fakulteta <- "TestniPodatki" - fakulteta1 <- "Prakse TP" - ime.fakultete <- "TestniPodatki" - logo <- "logo_BF" -} else if (ID == 1000000){ - fakulteta <- "Biomedicina" - fakulteta1 <- "Prakse Biomedicina" - ime.fakultete <- "Biomedicina (interdisciplinarni)" - logo <- "logo_UN" -} else { - fakulteta <- "" - fakulteta1 <- "" - ime.fakultete <- "" -} - -############## -#Uvoz podatkov -############## - -# Podatkom odstranimo "=" (nekatere baze imajo pred vsakim vnosom v celici znak =) -podatki_letnik <- c(1,2) -stevec_podatkov <- 0 - -for (i in 1:length(vhodni_podatki)){ - if (length(vhodni_podatki[[i]]) == 0){ - podatki_letnik <- podatki_letnik[podatki_letnik != i] - }else{ - #stevec_podatkov <- stevec_podatkov + 1 - podatki[[i]] <- as.data.frame(lapply(vhodni_podatki[[i]], - function(y) gsub("=", "", y)), - stringsAsFactors = F) - - # izbrisemo prvo vrstico, ki so imena stolpcev - podatki[[i]] <- podatki[[i]][-c(1),] - podatki[[i]] <- subset(podatki[[i]], podatki[[i]]$idprog != "-2") - - # Nekatere baze imajo 2 vrstici z imeni stolpcev (slovenski prevod), zato odstranimo tudi drugo vrstico - if(podatki[[i]]$Q1[1] == "Jezik"){ - podatki[[i]] <- podatki[[i]][-c(1),] - } - podatki[[i]] <- subset(podatki[[i]], - (podatki[[i]]["status"] == 6 & - podatki[[i]]["lurker"] == 0)) - } -} -@ - -<>= -library(knitr) -library(stringi) -library(scales) -library(dplyr) -library(showtext) -library(XML) -library(RCurl) -library(xtable) -library(Hmisc) - -# results='asis' nastavimo globalno -# za vse chunke lahko spreminjamo tudi vidnost opozoril in sporočil -opts_chunk$set(results='asis', - warning=F, - message = F) - -# Če želimo, da pri generiranju skrije napake odkomenitramo spodnji vrstici -#muffleError <- function(x,options) {} -#knit_hooks$set(error=muffleError) - -@ - -<<3, echo=F>>= - -# Uvoz tabele studijski programi - ce je tu kodiranje UTF-8, so v napisih znaki npr.: " -studijskiProgramiT <- read.csv2("pomozne_tabele/studijskiProgrami.csv", - stringsAsFactors = FALSE) - -veljavneEnote <- vector('list', length(podatki)) -odgVeljavni <- vector('list', length(podatki)) -veljavniSklopi <- vector('list', length(podatki)) -leto <- list() -napisiST <- list("\\textbf{Dejavnik}") -stevilo_vpisanih <- vector('list', length(podatki)) - -######################## -#Filter veljavnih podatkov -# Q3a != "1" -######################## - -for(i in c(podatki_letnik)){ - # Stari podatki imajo filter v vrstici Q3a - # ce imajo enote pri tej spremenljivki vrednost 1 jih izkljucimo - if("Q3a" %in% colnames(podatki[[i]])){ - # Izlocimo samo veljavne enote - #veljavneEnote[[i]] <- subset(podatki[[i]], #(podatki[[i]]["status"] == 5 & - #podatki[[i]]["lurker"] == 0) | - - # (podatki[[i]]["status"] == 6 & - # podatki[[i]]["lurker"] == 0)) - - # Izbrisemo prvo vrstico, kjer so imena stolpcev. - #veljavneEnote[[i]] <- veljavneEnote[[i]][-1,] - veljavneEnote[[i]] <- subset(podatki[[i]], podatki[[i]]["Q3a"] == -1) - - # Izlocimo samo veljavne odgovore in odgovore spremenimo nazaj v numeric - # gsub jih spremeni v stringe in drugace povzroca tezave pri izracunih - - odgVeljavni[[i]] <- sapply(vprZ[[i]]$kratkoIme, function(x){ - lapply(veljavneEnote[[i]][x], function(y) { - as.numeric(na.omit(y))}) - }) - - names(odgVeljavni[[i]]) <- vprZ[[i]]$kratkoIme - odgVeljavni[[i]] <-sapply(odgVeljavni[[i]], function(x){ - subset(x, x>0)}) - - - } - # Napisi stolpcev : KATERIH? - # Ce je anketo nekdo izpolnil od oktobra (vkljucno) do decembra potem letnici pristejemo - # Eno leto - if(as.numeric(substr(min(veljavneEnote[[i]]$itime), 4, 5)) %in% c(1:9)){ - leto[i] <- as.numeric(substr(min(veljavneEnote[[i]]$itime), 6, 10)) - }else{ - leto[i] <- as.numeric(substr(min(veljavneEnote[[i]]$itime), 6, 10)) + 1 - } - #celaLetnica[i] <- paste0(20,(leto[[length(leto)]]-1), "/", leto[[length(leto)]]) - #celaLetnica_dolga[i] <- paste0(20,(leto[[length(leto)]]-1), "/20", leto[[length(leto)]]) - - # Popravi - celaLetnica <- "2016/17" - celaLetnica_dolga <- "2016/17" - - #if (nrow(veljavneEnote[[i]]) < 4){ - # podatki_letnik <- podatki_letnik[podatki_letnik != i] - #} -} - -@ -% Naslovnica - -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{\Sexpr{ime.fakultete}}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt - -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\fancypagestyle{prvi}{ - \fancyhead[R]{\small{Prvi letnik}} - -} - -\fancypagestyle{drugi}{ - \fancyhead[R]{\small{Drugi letnik}} -} - -\fancypagestyle{oba}{ - \fancyhead[R]{\small{}} -} - -% Pomembno da so podpoglavja ostevilcena -\setcounter{secnumdepth}{3} -\setcounter{tocdepth}{3} - -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{\Sexpr{logo}} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2in]}}} -\textup{\LARGE \textbf{\Sexpr{ime.fakultete}} \\[0.3in] \textcolor[HTML]{B4162C} {\textbf{Študentska anketa o študiju na III. stopnji}}} \\[0.5in] -{\large Študijsko leto \Sexpr{celaLetnica_dolga[[1]]} \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - -<<4, echo=F>>= -#Funkcija, ki stevila pravilno zaokrozi -round2 = function(x, digits) { - if (is.numeric(x)){ - posneg = sign(x) - z = abs(x)*10^digits - z = z + 0.5 - z = trunc(z) - z = z/10^digits - z*posneg - } -} - -# Funkcija, ki zaokrozi stevila na izbrano stevilo mest -formatC2 <- function(x, digits, format='f'){ - formatC(round2(x, digits), digits=digits, format=format) -} - -# Funkcija, ki izracune, ki temeljijo na majhnem številu enot obda z oklepaji -# Izračune, ki temeljijo na manj, kot 5 enotah obdamo z dvema oklepajema -# Izračune, ki temeljijo na manj kot 10 enotah obdamo z enim oklepajem -# -# Argumeti: -# 1. Tabela: mora biti data.frame -# 2. pozicija_n: dolocimo stolpec tabele v katerem se nahajajo števila enot -# 3. pozicija_oklepajev: dolocimo stolpec tabele v katerem bi radi, da so izračuni (povprečja) obdana z oklepaji -# 4. izbrisi: ce je 1, pomeni, da izračune, ki temeljijo na manj kot štirih enotah nadomestimo s piko -# 5. pozicija_izbrisa: dolocimo stolpec tabele v katerem bi radi, da so izračuni (povprečja), ki temeljijo na manj, kot štirih enotah, nadomeščena s piko - -obdaj_z_oklepaji_f <- function(tabela, pozicija_n, pozicija_oklepajev, izbrisi=0, pozicija_izbrisa){ - for (i in 1:nrow(tabela)){ - if (tabela[i,pozicija_n] != "."){ - if (as.numeric(tabela[i,pozicija_n]) < 4 & izbrisi == 1){ - tabela[i,pozicija_izbrisa] <- "." - } - if (as.numeric(tabela[i,pozicija_n]) < 5){ - tabela[i,pozicija_oklepajev] <- paste0("((", tabela[i,pozicija_oklepajev], "))") - } else if (as.numeric(tabela[i,pozicija_n]) >= 5 & as.numeric(tabela[i,pozicija_n]) < 10){ - tabela[i,pozicija_oklepajev] <- paste0("(", tabela[i,pozicija_oklepajev], ")") - } - } - } - return(tabela) -} - -# Ce ima vektor pod 10 enot mu dodamo oklepaje -oklepajiVektor_f <- function(x, y=5, z=10){ - x <- as.list(x) - for (i in (1:length(x))){ - if (x[[i]] < y ){ - x[[i]] <- paste0("((", formatC2(x[[i]], digits=0, format="f"), "))") - }else if (x[[i]] < z ){ - x[[i]] <- paste0("(", formatC2(x[[i]], digits=0, format="f"), ")") - }else{ - x[[i]] <- formatC2(x[[i]], digits=0, format="f") - } - } -return(unlist(x)) -} - -# Uporabimo pri izpisu tabel z xtable -bold <- function(x) { - paste0('\\bfseries{', x, '}') -} - - - -####################################################### -## Izracuni (povprecij, stevila enot, ) -## Za tabele v sklopu 2 -####################################################### -odgMean <- list() -stEnot <- list() - -# Izracun povprecij in stevilo enot -# Dolocitev imen stolpcev - -for (i in c(podatki_letnik)){ - odgMean[[i]] <- lapply(odgVeljavni[[i]], mean) - stEnot[[i]] <- lengths(odgVeljavni[[i]]) - names(odgMean[[i]]) <- vprZ[[i]]$kratkoIme -} - - -### Izracuni za grafe -# POPRAVI: length(odgMean[i]) -graf_p <- vector('list', length(odgMean)) -izracuniTrendov <- list() - - -# Tu zdruzi stare podatke z novimi -# V primeru FF starih ni torej damo to v pogoj -# Pregleda mapo 'prejsnjiIzracuni' -# Izpise seznam prejsnjihIzracunov: zaenkrat samo pri FDV in FF -# Nato zdruzi prejsnje izracune z zdajsnjimi in jih izpise v grafu (trendi) -# Pripravi se zapisovanje zdajsnjih v isti obliki. (ce se ne obstajajo) -# Izracuna jih iz koncne baze tega leta, ki naj bi jo streznik -# ob koncani anketi = potecen cas resevanja -# poslal v pripadajoco mapo npr. splosna/FDV/koncneBaze - -# Risanje trendov je izklopljeno, dokler ne obstajajo vsaj eni podatki (prejsnja baza) prejsnjih let - -letosnjiTrendi <- cbind(as.numeric(formatC2(unlist(odgMean[[1]]), digits = 2, format = 'f')), leto[1]) -risanjeTrendov <- 0 - -# Preverimo ali obstaja mapa s prejsnjimiIzracuni za izbrano fakulteto -# Ce obstaja preverimo ali vsebuje 'prejsnjeIzracune' : drugace jo ustvarimo -# Ce obstajajo jih preberemo in vklopimo risanje trendov - -if(dir.exists(paste0("podatki/", ID, "/prejsnjiIzracuni"))){ - -# poiscemo vse .csv datoteke v mapi fakulteta/prejsnjiIzracuni -prejsnjiIzracuni = list.files(paste0(getwd(),"/podatki/", ID, "/prejsnjiIzracuni/"), pattern="*.csv") - -# ce datoteka obstaja jo nalozi in vklopi risanje trendov -# in izklopi zapis letosnjih izracunov - -if (file.exists(paste0("podatki/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni))){ -izracuni <- read.table(paste0("podatki/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni), stringsAsFactors = F, sep =',') - - -# Ce so v prejsnjih izracunih tudi letosnji trendi, jih ne zapisemo -# se enkrat (letosnjiIzracuni <- 0) -if (leto %in% izracuni$V2){ - letosnjiIzracuni <- 1 -}else{ - letosnjiIzracuni <- 0} - -if (length(unique(izracuni$V2)) <= 1){ - risanjeTrendov <- 0 -}else{risanjeTrendov <- 1} -# Recursive poskrbi, da ustvari obe mapi: tisto z ID-jem fakultete in znotraj te -# se mapo 'prejsnjiIzracuni' -}else{letosnjiIzracuni <- 0} -}else{dir.create(paste0("podatki/", ID, "/prejsnjiIzracuni"), recursive = T)} - -# Zapisovanje letosnjih povprecij -# povp, leto -# Preverimo ali je v mapi 'koncneBaze' ze letosnja koncana anketa -# To preverimo tako, da pogledamo ce je v tej mapi ze baza, ki ima v imenu letosnjo letnico -# ce letosnjih Izracunov se ni, jih ob pogoju, da ze imamo koncno bazo zapisemo - -if (letosnjiIzracuni == 0){ -if(dir.exists(paste0("podatki/", ID, "/koncneBaze"))){ - -koncneBaze = list.files(paste0(getwd(),"/podatki/", ID, "/koncneBaze/"), pattern="*.csv") -imeLetosnjeBaze <- koncneBaze[grepl(leto, koncneBaze)] - -if (length(imeLetosnjeBaze) != 0){ - #TRENUTNO - - # Ali obstaja baza z letosnjimi izracuni? - # = Ali so podatki letosnje (koncane) ankete ze v mapi? - # Ce obstaja letosnje izracune trendov appenda v tabelo in jim pripise letnico - if (file.exists(paste0("podatki/", ID, "/koncneBaze/", imeLetosnjeBaze))){ - write.table(letosnjiTrendi, - file = paste0("podatki/", ID, "/prejsnjiIzracuni/prejsnjiIzracuni.csv"), - append=T, - row.names = F, - col.names = F, - sep = ',') - -} -} -} -} - -# Testiranje: -# Tu zdruzimo prejsnje izracune (povprecja) z zdajsnjimi -# Samo za testiranje do 2020 -# risanjeTrendov <- 1 - -# Prvi pogoj dodan, da ne javlja napak, ko ne risemo trendov -# Vendar se vedno preveri ce jih zapisujemo -risanjeTrendov <- 0 -if (risanjeTrendov != 0){ -if (risanjeTrendov != 0 & leto %in% izracuni[,2]){ - izracuniTrendov <- izracuni - izracuniTrendov <- arrange(izracuniTrendov, V2) - - }else if(risanjeTrendov != 0 & !(leto %in% izracuni[,2])){ - izracuniTrendov <- rbind(izracuni, - unname(cbind(unlist(odgMean[[1]]), leto))) - izracuniTrendov <- arrange(izracuniTrendov, V2) - -}else{ - izracuniTrendov <- cbind(unlist(odgMean[[1]]), leto) -} - - -# Dejavnikom pripisemo sklope (za kasnejse klicanje pri izrisu trendov) - -sklopi_dff <- c(1,1,1,1,1,1, - 2,2,2,2,2, - 3,3,3,3,3,3, - 4,4,4,4, - 5,5,5,5) - -# Za dodatne sklope -if (dodatniSklop == 1){ - sklopi_dff <- c(sklopi_dff, rep(9,3)) -} - -if (risanjeTrendov !=0){ - if (dodatniSklop == 1){ - dff <- data.frame(Dejavnik=vprZ$grafBeseda[1:30], - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) - }else{ - dff <- data.frame(Dejavnik=vprZ$grafBeseda, - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) - } -} -# napisi za x os (letnice): -# iz podatkov pridobimo vse unikatne letnice -# in jih preoblikujemo v obliko prejsne leto / letosnje leto - -letnice.uq <- unique(dff$leto) -letnice.label <- sapply(letnice.uq, function(x){ - paste0(x-1,'/',x) -}) -} -# Preverimo ali obstaja mapa, kamor bomo shranjevali slike (grafe) -# Ce se ne obstaja, jo ustvarimo. -if(!dir.exists(paste0("rezultati/", ID))){ - dir.create(paste0("rezultati/", ID)) -} - -if(!dir.exists(paste0("rezultati/", ID, "/grafi"))){ - dir.create(paste0("rezultati/", ID, "/grafi")) -} - -trendiGraf <- function(podatki, y, z, izpis=1){ - if(risanjeTrendov != 0){ - letnice.uq <- unique(podatki$leto) - letnice.label <- sapply(letnice.uq, function(x){ - paste0(x,'/',x+1) - }) - podatki$leto <- factor(podatki$leto) - p1 <- ggplot(data = podatki, - aes(x = leto, - y = povprecje, - colour = Dejavnik))+ - # Dodatno avtomatiziraj - scale_x_discrete("Leto", labels=letnice.label)+ - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none, - breaks=c(1:5))+ - geom_line(aes(group = Dejavnik)) + geom_point()+ - - theme_classic()+ - theme(aspect.ratio=1)+ - # \n zaradi dodatnega odmika napisa od osi - xlab("Leto\n")+ylab("Povprečna vrednost\n")+ - - theme(axis.text= element_text(size=16, family="CM Roman"), - axis.title= element_text(size=16, family='CM Roman'), - legend.text= element_text(size=15, family='CM Roman'), - legend.position ="right", - legend.title=element_blank(), - axis.line.x = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, linetype='solid')) - - -stevec <- as.numeric(z) -ime <- paste0("rezultati/", ID,"/grafi/izpisTrendi",stevec,".pdf") -showtext.auto() -ggsave(p1, filename=ime, width=8, height=5, units="in", device=cairo_pdf ) -caption <- as.character(y) - - -if (izpis==1){ -cat(paste0('\\begin{figure}[!ht] -\\vspace*{-6cm} -\\caption{Trendi - ', caption, '} -\\includegraphics[width=\\maxwidth]{../', ime, '} -\\end{figure} -\\clearpage')) -} - -else if(izpis==2){ -cat(paste0('\\begin{figure}[ht] -\\caption{Trendi - ', caption, '} -\\includegraphics[width=\\maxwidth]{../', ime, '} -\\end{figure} -\\clearpage')) -} - -} -} - -@ - -<>= -# Pridobimo veljavne -idprog_uq_vsi <- list() -tip_programa <- list() -tip_programa2 <- list() - -for (i in c(podatki_letnik)){ - idprog_uq_vsi[[i]] <- unique(podatki[[i]]$idprog) - tip_programa[[i]] <- data.frame(idprog_uq_vsi[[i]], stringsAsFactors = F) - tip_programa[[i]]$naziv <- sapply(tip_programa[[i]]$idprog_uq_vsi, function(x){ - unique(podatki[[i]]$program[podatki[[i]]$idprog == x]) - #}}) -}) - -# df uredimo glede na padajoce ime programov - tip_programa[[i]] <- arrange(tip_programa[[i]], naziv) -} - -# Ponovljen postopek, za izracune v prilogi -idprog_uq_veljavni <- list() -tip_programa_veljavni <- list() - -for (i in c(podatki_letnik)){ - idprog_uq_veljavni[[i]] <- unique(veljavneEnote[[i]]$idprog) - -# Tu izlocimo program (ime), idprog, ki jih bomo pripisali, kot tip programa v tabeli 1 - tip_programa_veljavni[[i]] <- data.frame(idprog_uq_veljavni[[i]], stringsAsFactors = F) - tip_programa_veljavni[[i]]$naziv <- sapply(tip_programa_veljavni[[i]][,1], function(x){ - unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog == x]) - }) - - tip_programa_veljavni[[i]] <- arrange(tip_programa_veljavni[[i]], naziv) - colnames(tip_programa[[i]]) <- c("idprog_uq_vsi", "naziv") - colnames(tip_programa_veljavni[[i]]) <- c("idprog_uq_veljavni", "naziv") -} - - -poProgramih_N_veljavni <- vector('list', length(podatki)) -stevilo_vpisanih <- vector('list', length(podatki)) -vsehT1 <- list() -odgovori_pct <- list() -podatki.r <- list() -vektorProgrami <- vector('list', length(podatki)) -odstotkiT1 <- vector('list', length(podatki)) -podatki.r.pct <- list() -programiV1 <- list() -poProgramih_N_veljavni_z_oklepaji <- list() -podatki.r.pct <- list() -odgovorili.n <- list() -podatki_N_vsi <- vector('list', length(podatki)) -podatki.r <- list() -stolpec100 <- list() -struktura_studijski_program <- list() -struktura_studijski_program_po_stolpcih <- list() -hlines <- list() -ni_pristopilo <- list() -ni_pristopilo.pct <- list() -struktura_studijski_program_koncni_2 <- list() -struktura_studijski_program_stolpci_koncni_2 <- list() - -for (i in c(podatki_letnik)){ -# Te podatke shrani v vektor, da jih lahko prestejemo / izpisemo v tabeli -# Stevilo veljavnih enot na program -# Primerjavo z ID-ji vseh enot delamo, ker imajo vse enote lahko razlicen id od veljavnih -# ker ne bi imeli vrednosti bi dobili napacne izracune - - for (j in 1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni)){ - ### Odgovorili - poProgramih_N_veljavni[[i]][j] <- as.numeric(length(veljavneEnote[[i]]$Q3a[veljavneEnote[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) - - stevilo_vpisanih[[i]][j] <- subset(vpisani_tabela[[i]][,4], (vpisani_tabela[[i]][,2] == veljavneEnote[[i]]$siffaks[1] & vpisani_tabela[[i]][,3] == tip_programa[[i]]$idprog_uq_vsi[[j]])) - } - - #Vseh enot za tabelo: 'Struktura študentov glede na študijski program' (n) - ### Pristopili - vsehT1[[i]] <- sum(poProgramih_N_veljavni[[i]]) - #Izpišemo število VSEH enot glede na posamezen program - for (j in 1:length(tip_programa[[i]]$idprog_uq_vsi)){podatki_N_vsi[[i]][j]<-as.numeric( - length(podatki[[i]]$Q3a[podatki[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) - } - - odgovori_pct[[i]] <- formatC2((poProgramih_N_veljavni[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") - odgovori_pct[[i]] <- c(odgovori_pct[[i]], formatC2((sum(poProgramih_N_veljavni[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format="f")) - - #Izracun stevila tistih, ki niso odgovorili (Zavrnili) - podatki.r[[i]] <- podatki_N_vsi[[i]] - poProgramih_N_veljavni[[i]] - #Z lapply poženemo zgornjo funkcijo cez poProgramih_N_veljavni, kjer so shranjene dolžine seznama sodelujoci POPRAVI: GLEDE NA POGOJ_____ in dobimo seznam odstotkov - - odstotkiT1[[i]] <- sapply(poProgramih_N_veljavni[[i]], function(x){ - x <- (x/vsehT1[[i]]*100) - x <- round2(x, digits=0) - }) - podatki.r.pct[[i]] <- formatC2((podatki.r[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") - - #Odstotke iz seznama prenesemo v vektor - for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni))){vektorProgrami[[i]][j]<-odstotkiT1[[i]][j]} - odstotkiT1[[i]] <- c(odstotkiT1[[i]], formatC2(sum(unlist(odstotkiT1[[i]])), digits=0, format="f")) - - #Dodamo vrstico 'skupaj' - programiV1[[i]] <- c(tip_programa[[i]]$naziv, "Skupaj") - poProgramih_N_veljavni[[i]] <- c(poProgramih_N_veljavni[[i]], vsehT1[[i]]) - poProgramih_N_veljavni_z_oklepaji[[i]] <- oklepajiVektor_f(poProgramih_N_veljavni[[i]]) - - #za 'r%' - podatki.r.pct[[i]] <- c(podatki.r.pct[[i]], formatC2((sum(podatki.r[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format ="f")) - #Dodamo vrstico skupaj - podatki_N_vsi[[i]] <- formatC2(c(podatki_N_vsi[[i]], sum(podatki_N_vsi[[i]])), digits=0, format='f') - stevilo_vpisanih[[i]] <- c(stevilo_vpisanih[[i]], sum(stevilo_vpisanih[[i]])) - - # Odebeljena vsota udelezenih, tistih, ki niso odgovorili - podatki.r[[i]] <- formatC2(c(podatki.r[[i]], sum(podatki.r[[i]])), digits=0, format='f') - stolpec100[[i]] <- formatC2(rep(100, length(podatki_N_vsi[[i]])), digits=0, format ='f') - - ni_pristopilo[[i]] <- as.numeric(stevilo_vpisanih[[i]]) - as.numeric(podatki_N_vsi[[i]]) - ni_pristopilo.pct[[i]] <- ni_pristopilo[[i]]/as.numeric(stevilo_vpisanih[[i]])*100 - - stevilo_vpisanih[[i]] <- formatC2(c(stevilo_vpisanih[[i]]), digits=0, format = 'f') - ni_pristopilo[[i]] <- formatC2(c(ni_pristopilo[[i]]), digits=0, format = 'f') - ni_pristopilo.pct[[i]] <- formatC2(c(ni_pristopilo.pct[[i]]), digits=0, format = 'f') - vektorProgrami[[i]] <- c(vektorProgrami[[i]], sum(vektorProgrami[[i]])) - - #Sestavimo podatkovni okvir za prvo tabelo (Popravi: preimenuj tabele v kodi) - struktura_studijski_program[[i]] <- data.frame(programiV1[[i]], stevilo_vpisanih[[i]], stolpec100[[i]], ni_pristopilo[[i]], ni_pristopilo.pct[[i]], podatki_N_vsi[[i]], stolpec100[[i]], poProgramih_N_veljavni[[i]], odgovori_pct[[i]], podatki.r[[i]], podatki.r.pct[[i]]) - struktura_studijski_program[[i]] <- data.frame( - sapply(struktura_studijski_program[[i]], - function(x){as.character(x)}), stringsAsFactors = F) - struktura_studijski_program_temp <- list() - struktura_studijski_program_koncni <- list() - struktura_studijski_program_stolpci_temp <- list() - struktura_studijski_program_stolpci_koncni <- list() - colnames(struktura_studijski_program[[i]]) <- 1:11 - - for (k in 1:nrow(struktura_studijski_program[[i]])){ - struktura_studijski_program_temp[[k]] <- data.frame( - paste0(struktura_studijski_program[[i]][k,1], - " (vpisani)"), - struktura_studijski_program[[i]][k,c(2:5)], - struktura_studijski_program[[i]][k,c(6)], - formatC2(as.numeric(struktura_studijski_program[[i]][k,c(6)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), - struktura_studijski_program[[i]][k,c(8)], - formatC2(as.numeric(struktura_studijski_program[[i]][k,c(8)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f'), - struktura_studijski_program[[i]][k,c(10)], - formatC2(as.numeric(struktura_studijski_program[[i]][k,c(10)])/as.numeric(struktura_studijski_program[[i]][k,c(2)])*100, digits=0, format='f')) - - temp <- data.frame(paste0(struktura_studijski_program[[i]][k,1], - " (pristopili)"), "", "", "", "", struktura_studijski_program[[i]][k,c(6:11)], stringsAsFactors = F) - colnames(temp) <- 1:11 - colnames(struktura_studijski_program_temp[[k]]) <- 1:11 - struktura_studijski_program_koncni[[k]] <- rbind( - struktura_studijski_program_temp[[k]], temp) - } - - struktura_studijski_program_koncni_2[[i]] <- do.call(rbind, struktura_studijski_program_koncni) - struktura_studijski_program_koncni_2[[i]] <- data.frame(sapply(struktura_studijski_program_koncni_2[[i]], as.character), stringsAsFactors=F) - struktura_studijski_program_koncni_2[[i]][,8] <- oklepajiVektor_f(as.numeric(as.character(struktura_studijski_program_koncni_2[[i]][,8]))) - - struktura_studijski_program_koncni_2[[i]][struktura_studijski_program_koncni_2[[i]] == 100] <- "\\textbf{100}" - - colnames(struktura_studijski_program_koncni_2[[i]]) <- c("", "N", "\\%", "N", "\\%", "$n_0$", "\\%", "n", "\\%", "r", "\\%") - hlines[[i]] <- c(nrow(struktura_studijski_program_koncni_2[[i]])-1) -} -@ - -<>= - -vrstaProg <- list() -imena_output <- list() -vrstaProg_T2_output <- list() -vrstaProg_output <- list() - -# Dodal sort, in zdaj oba letnika ne prikaze pravilno -for (i in c(podatki_letnik)){ -vrstaProg[[i]] <- sort(sapply(unique(veljavneEnote[[i]]$idprog), - function(x){unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog == x]) -})) - - -# Iz grafov in tabel odstranimo enote s programom -2 -#vrstaProg[[i]] <- vrstaProg[[i]][vrstaProg[[i]] != -2] - -#Kaj to splog naredi? -#vrstaProg <- sapply(vrstaProg, function(x){ -# x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) -#}) - -#Vsebina prvega stolpca -if (length(vrstaProg[[i]])>1){ - imena_output[[i]] <- c(names(vrstaProg[[i]]), 25) - vrstaProg_T2_output[[i]] <- c(vrstaProg[[i]], "Skupaj") - vrstaProg_output[[i]] <- c(vrstaProg[[i]], "Skupaj") -}else if(length(vrstaProg[[i]])==1){ - # V drugi tabeli, prikazemo "Skupaj", tudi ce je samo en tip programa - # Pri tabelah in grafih po letniku "Skupaj", v primeru enega tipa ne prikazujemo - # to je razvidno iz razlicnih vrstaProg in imen - vrstaProg_output[[i]] <- vrstaProg[[i]] - imena_output[[i]] <- names(vrstaProg[[i]]) - vrstaProg_T2_output[[i]] <- c(vrstaProg[[i]], "Skupaj") -} -} - - -stVrsta.vsi_output <- list() -stVrsta.r_output <- list() - -for (i in c(podatki_letnik)){ - - stVrsta <- as.numeric() - stVrsta.vsi <- as.numeric() - - for (j in 1:length(vrstaProg[[i]])){ - stVrsta[j] <- length(veljavneEnote[[i]]$Q3a[veljavneEnote[[i]]$idprog == names(vrstaProg[[i]])[j]]) - stVrsta.vsi[j] <- length( - podatki[[i]]$Q3a[podatki[[i]]$idprog == names(vrstaProg[[i]])[j]]) - } - - # in dodamo sestevek. - stVrsta[(length(stVrsta)+1)] <- sum(stVrsta) - stVrsta.vsi[(length(stVrsta.vsi)+1)] <- sum(stVrsta.vsi) - stVrsta_oklepaji <- oklepajiVektor_f(stVrsta) - - # Izracun vrstice, ki sesteje stevilo tistih, ki so sodelovanje zavrnili - stVrsta.r <- stVrsta.vsi - stVrsta - stVrsta.vsi_output[[i]] <- stVrsta.vsi - stVrsta.r_output[[i]] <- stVrsta.r -} -@ - -<>= -odgSt <- list() -odgMean <- list() -odgSd <- list() -odgMin <- list() -odgMax <- list() -odgSklop<- list() -odgSklop_R<- list() - -for (i in c(podatki_letnik)){ - #Izracuni iz odgVeljavni (stevilo, povprecje....) - odgSt[[i]] <- lengths(odgVeljavni[[i]]) - odgMean[[i]] <- sapply(odgVeljavni[[i]], mean) - odgSd[[i]] <- sapply(sapply(odgVeljavni[[i]], sd), function(x){ - formatC2(x, digits=1, format='f') - }) - odgMin[[i]] <-sapply(odgVeljavni[[i]], min) - odgMax[[i]] <-sapply(odgVeljavni[[i]], max) - - - - #odgSd[[1]][odgSd[[1]] == "NA"] <- "." - #odgSd[[2]][odgSd[[2]] == "NA"] <- "." - - #Izracuni po sklopih - odgSklop[[i]] <- list(median(odgMean[[i]][1:6]), - median(odgMean[[i]][7:11]), - median(odgMean[[i]][12:17]), - median(odgMean[[i]][18:21]), - median(odgMean[[i]][22:25])) - - - - #Pripravimo stolpec z medianami povprecij sklopa, da lahko t3 razvrcamo znotraj median povprecij sklopov - odgSklop_R[[i]] <- c(rep(odgSklop[[i]][[1]],6), - rep(odgSklop[[i]][[2]],5), - rep(odgSklop[[i]][[3]],6), - rep(odgSklop[[i]][[4]],4), - rep(odgSklop[[i]][[5]],4)) -} - -#if (dodatniSklop == 1){ -# odgSklop <- c(odgSklop, median(odgMean[28:30])) -# odgSklop_R <- c(odgSklop_R, rep(odgSklop[[9]], 3)) -# napisiSklop <- c(napisiSklop, "Zadovoljstvo s programom") -#} - -napisiSklop <- c("Infrastruktura in urniki", - "Zadovoljstvo z izvajanjem programov", - "Pomoč in podpora mentorja", - "Del študija in ostale aktivnosti v tujini", - "Svetovalna pomoč študentom") - -# Nejasno: - -sklop_Z <- list() -povpSklopi_zaIzpis_output <- list() - -for (i in c(podatki_letnik)){ -odgMean_rounded <- as.numeric(formatC2(odgMean[[i]], digits=1, format ='f')) -povpSklopi_zaIzpis <- as.data.frame(cbind(odgMean_rounded, odgSklop_R[[i]]), stringsAsFactors =F) - -idSklopov_zaIzpis <- c(rep(1,6), - rep(2,5), - rep(3,6), - rep(4,4), - rep(5,4)) - -#if (dodatniSklop == 1){ -# idSklopov_zaIzpis <- c(idSklopov_zaIzpis, rep(9,3)) -#} - -povpSklopi_zaIzpis <- cbind(povpSklopi_zaIzpis, idSklopov_zaIzpis) -povpSklopi_zaIzpis <- arrange(povpSklopi_zaIzpis, desc(V2), desc(odgMean_rounded)) -povpSklopi_zaIzpis_output[[i]] <- povpSklopi_zaIzpis - -sklop_Z[[i]] <- cbind(napisiSklop, 1:length(odgSklop[[i]]), as.numeric(formatC2(unlist(odgSklop[[i]]), digits=1, format = 'f')), "id", "tip") - -colnames(sklop_Z[[i]]) <- c("napisiSklop", "id", "odgSklop", "opis", "tip") - -for (j in (1:length(sklop_Z[[i]][,3]))){ - - if (is.na(sklop_Z[[i]][j,3])){ - sklop_Z[[i]][j,4] <- gsub("id", "NA", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 0, sklop_Z[[i]][j,5]) - } - else if (sklop_Z[[i]][j,3] > 4.5){ - sklop_Z[[i]][j,4] <- gsub("id", "nad 4.5", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 1, sklop_Z[[i]][j,5]) - } - else if (sklop_Z[[i]][j,3] > 4 ){ - sklop_Z[[i]][j,4] <- gsub("id", "nad 4", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 2, sklop_Z[[i]][j,5]) - } - - else if (sklop_Z[[i]][j,3] > 3.5){ - sklop_Z[[i]][j,4] <- gsub("id", "3.5do4", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 3, sklop_Z[[i]][j,5]) - } - - else if(sklop_Z[[i]][j,3] >= 3){ - sklop_Z[[i]][j,4] <- gsub("id", "nad 3", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 4, sklop_Z[[i]][j,5]) - } - - else if (sklop_Z[[i]][j,3] < 3){ - sklop_Z[[i]][j,4] <- gsub("id", "pod 3", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 5, sklop_Z[[i]][j,5]) - } - } - -} - -barvanje_f <- function(y){ - sapply(unlist(y, use.names = F), function(x){ - if(!is.nan(x) & !is.na(x) & x != "."){ - x <- formatC2(round2(as.numeric(x),1), digits=1, format='f') - - if(!is.nan(x) & !is.na(x) & x >= 4.8){ - paste0("\\textbf{\\textcolor[HTML]{006666}{", - x, "}}") - }else if (!is.nan(x) & !is.na(x) & x >= 4.5 & x <=4.7){ - paste0("\\textbf{\\textcolor[HTML]{36BF4B}{", - x, "}}") - }else if (!is.nan(x) & !is.na(x) & x >= 4 & x <= 4.4){ - x <- x - }else if (!is.nan(x) & !is.na(x) & x >= 3.5 & x <= 3.9){ - paste0("\\textbf{\\textcolor[HTML]{F58137}{", - x, "}}") - }else if(!is.nan(x) & !is.na(x) & x <= 3.4 & x >=1){ - paste0("\\textbf{\\textcolor[HTML]{B6321C}{", - x, "}}") - }else{paste0(".")} - }else{paste0(".")} - }) - } - - - # Izracuni za barplot, glede na vrsto programa ('prog_r2') - # Koncni rezultat je seznam s stolpci stopnjaMean_v, stopnjaId_v - # ..., iii (napis), stopnjaMeanSkupaj_v - graf_p <- list() - graf_p3 <- list() - - # Za shranjevanje zacasnih rezultatov - graf_p_temp <- list() - graf_p_temp3 <- list() - - # Pri tabelah ne izlocimo povp., glede na letnik / stopnjo, ki imajo - # st. enot manjse od 4, tam povprecju dodamo dva oklepaja oz. enega - # za st. enot manjse od 10 - - tabela_p <- list() - tabela_p3 <- list() - - stopnjaMean_v <- list() - stopnjaId_v <- list() - stevilo_PoStopnjah <- list() - graf_vrstica <- list() - stopnjaMeanSkupaj_v <- list() - tabela_p_temp <- list() - - - graf_p_drugi <- list() - tabela_p_drugi <- list() - vklop <- as.character() -for (i in c(podatki_letnik)){ - for (j in (1:length(vprZ[[i]]$kratkoIme))){ - ii <- vprZ[[i]]$kratkoIme[j] - iii <- vprZ[[i]]$kljucnaBeseda[j] - iii2 <- vprZ[[i]]$grafBeseda[j] - - - - # NOVO - # Izracun povprecij po programih - - - stopnjaMean_v[[i]] <- as.numeric(subset(veljavneEnote[[i]][[ii]], veljavneEnote[[i]][[ii]]>0)) - - stopnjaId_v[[i]] <- as.numeric(subset(veljavneEnote[[i]][["idprog"]], veljavneEnote[[i]][ii]>0)) - - - - if (length(stopnjaMean_v[[i]]) >= 1){ - graf_p_temp[[i]] <- cbind(Hmisc::summarize(stopnjaMean_v[[i]], - by = stopnjaId_v[[i]], - FUN = mean), iii) - # vklop[i] <- 0 - }else { - graf_p_temp[[i]] <- data.frame(stopnjaMean_v = 099, - stopnjaId_v = 099, - iii = iii, - stringsAsFactors =F) - colnames(graf_p_temp[[i]]) <- c("stopnjaMean_v[[i]]", "stopnjaId_v[[i]]", "iii") - # vklop[i] <- 1 - } - - # Povprecja glede na stopnjo / letnik, ki jih bomo prikazali v tabelah zaokrozimo na 1 dec. - tabela_p_temp <- graf_p_temp[[i]] - tabela_p_temp[,2] <- barvanje_f(tabela_p_temp[,2]) - colnames(tabela_p_temp) <-c("stopnjaId_v", "stopnjaMean_v", "iii") - - # NOVO: - stevilo_PoStopnjah[[i]] <- table(graf_p_temp[[i]][,1]) - - for (k in 1:length(stevilo_PoStopnjah[[i]])){ - if (stevilo_PoStopnjah[[i]][k] < 5 ){ - # Izkljucimo prikaz povprecij, ki imajo manj, kot stiri enote - #graf_p_temp$stopnjaMean_v[i] <- NA - #graf_p_temp2$stopnjaMean_v[i] <- NA - tabela_p_temp$stopnjaMean_v[k] <- paste0("((", tabela_p_temp$stopnjaMean_v[k], "))") - } - else if (stevilo_PoStopnjah[[i]][k] >=5 & stevilo_PoStopnjah[[i]][k] < 10){ - tabela_p_temp$stopnjaMean_v[k] <- paste0("(", tabela_p_temp$stopnjaMean_v[k], ")") - } - } - - #Vrstica s povprecji fakultete (25 je nek umeten ID) - graf_vrstica[[i]] <- c(25, formatC2(odgMean[[i]][ii], digits=1, format='f'), iii) - graf_p_temp[[i]] <- rbind(graf_p_temp[[i]], graf_vrstica[[i]]) - - barve <- c("#FFE4E1", "#468fd7", "#CD2626", "#D9E2E1", "#B7AFA3") - names(barve) <- c("1", "7", "9", "25", "30") - - - tabela_p_temp <- rbind(tabela_p_temp, graf_vrstica[[i]]) - - # Pripisemo stolpec s poprecji za vse stopnje / letnike - # z namenom razvrscanja sklopov glede na to povprecje - stopnjaMeanSkupaj_v[[i]] <- odgMean[[i]][ii] - - if (i == 1){ - graf_p[[ii]] <- cbind(graf_p_temp[[i]], stopnjaMeanSkupaj_v[[i]]) - tabela_p[[ii]] <- cbind(tabela_p_temp, stopnjaMeanSkupaj_v[[i]]) - }else{ - graf_p_drugi[[ii]] <- cbind(graf_p_temp[[i]], stopnjaMeanSkupaj_v[[i]]) - tabela_p_drugi[[ii]] <- cbind(tabela_p_temp, stopnjaMeanSkupaj_v[[i]]) - } - } -} - -graf_p_skupni <- list(graf_p, graf_p_drugi) -tabela_p_skupna <- list(tabela_p, tabela_p_drugi) - -# Privzete barve naj se ujemajo tudi pri izlocenih dejavnikih -barveOriginal <- c("#FFE4E1", "#1874CD", "#CD2626", "#CDB599") -barve <- c("#FFE4E1", "#1874CD", "#CD2626", "#D9E2E1", "#B7AFA3") -barva_font = "black" - -#Funkcija za risanje barchartov glede na 'prog_r2' -font.add("CM Roman", regular = paste0("cmunrm.ttf")) - -graf_program_f <- function(x, y, z, letnik){ - # x = podatki_trenutni - # y = caption - # z = zaporedna stevilka - # Izbrisemo dejavnike, ki imajo manj, kot 4 enote - dejavniki <- subset(dejavniki, !is.na(dejavniki$meanGraf)) - # Podatke uredimo glede na skupno povprecje dejavnikov - dejavniki <- arrange(dejavniki, desc(dejavniki[,15])) - dejavniki$iii2 <- factor(dejavniki$iii2, levels=rev((unique(dejavniki$iii2)))) - - nivojiFaktorjev <- factor(dejavniki$stopnjaId_v) - vrstniRedNivojev <- sort(unique(as.numeric((dejavniki$stopnjaId_v)))) - nivojiFaktorjev <- factor(nivojiFaktorjev, levels=(vrstniRedNivojev)) - - manjsi.font <- 0 - manjsi.kvadrat <- 0 - manjsi.height <- 0 - manjsi.width <- 0 - - if(nrow(dejavniki)==2){ - asp.ratio <- 0.75 - manjsi.height <- 3 - }else if (nrow(dejavniki)==3){ - asp.ratio <- 0.95 - manjsi.height <- 1.5 - }else if(nrow(dejavniki)==4){ - asp.ratio <- 1.5 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - }else if(nrow(dejavniki)==5){ - asp.ratio <- 1.4 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - }else if(nrow(dejavniki)==6){ - asp.ratio <- 1.55 - manjsi.font <- 3.5 - manjsi.kvadrat <- 0.3 - manjsi.width <- 1.3 - manjsi.height <- 0.8 - }else{ - asp.ratio <- 0.55 - manjsi.height <- 3.5 - } - - asp.ratio <- 1.5 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - - izpis <- ggplot(dejavniki, - aes(x=iii2,y=round2(as.numeric(meanGraf), digits=1), - fill=nivojiFaktorjev, - label = meanGraf))+ - geom_bar(stat="identity", position="dodge")+ #Pozicija value label-ov - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = barva_font, - size = 5.5)+ - - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none) + - - scale_fill_manual(name = "", breaks=(nivojiFaktorjev), - values= (dejavniki$barve), - labels= dejavniki$napis, - guide= guide_legend())+ - - #xlab("Dejavniki\n")+ - xlab("")+ - ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(aspect.ratio=asp.ratio)+ - - theme(axis.text=element_text(size=18-manjsi.font, - family='CM Roman'), - axis.title=element_text(size=18-manjsi.font, - family='CM Roman'), - legend.position="right", - #Velikost, barva kvaratov - #legend.key=element_rect(size=10, color="white"), - - legend.key.size = unit(1.6-manjsi.kvadrat, "lines"), - #barva / velikost / naklon legende - legend.text = element_text(size = 18-manjsi.font), - # Dodamo crto pri x in y osi, ki je drugace pri tej temi ni - axis.line.x = element_line(colour = 'black', - size=0.5, - linetype='solid'), - axis.line.y = element_line(colour = 'black', - size=0.5, - linetype='solid'))+ - - #coord_flip(ylim=c(1,5)) - coord_flip() - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/izpis", stevec,"_",letnik, "letnik.pdf") - - ggsave(izpis, filename=ime, width=12-manjsi.width, height=8.5-manjsi.height, units="in", device=cairo_pdf ) - caption <- as.character(y) - cat(paste0('\\begin{figure}[!ht] - \\flushleft \\caption{', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} - -# Ustvarimo prazna df-ja -# da tam nadomescamo povprecja glede na dejavnik -# to prikazujemo pri tabelah po študijskem programu / letniku - -sklopi_po_programih <- list() -sklopi_po_programih_oba <- list() -prazen_df_output <- list() - -for (i in c(podatki_letnik)){ - odgMax[[i]][odgMax[[i]] == "Inf" | odgMax[[i]] == "-Inf"] <- "." - odgMin[[i]][odgMin[[i]] == "Inf" | odgMin[[i]] == "-Inf"] <- "." - stID_v <- as.matrix(rep(c(as.numeric(imena_output[[i]])), nrow(vprZ[[i]])), ncol=1) - stMean_v <- as.matrix(rep("0", length(vrstaProg_output[[i]])*nrow(vprZ[[i]])), ncol=1) - stMean_v_graf <- as.matrix(rep("0", length(vrstaProg_output[[i]])*nrow(vprZ[[i]])), ncol=1) - iii3 <- sapply(vprZ[[i]]$kljucnaBeseda, function(x){rep(x,length(vrstaProg_output[[i]]))}) - iii3 <- matrix(iii3, ncol=1) - - nap <- as.character() - - for (j in 1:length(vrstaProg_output[[i]])){ - if (nchar(as.character(vrstaProg_output[[i]][j])) >20){ - nap[j] <- paste0(strtrim(as.character(vrstaProg_output[[i]][j]), 20), ".") - }else if (nchar(as.character(vrstaProg_output[[i]][j])) <= 20){ - nap[j] <- as.character(vrstaProg_output[[i]][j]) - } - } - - nap <- as.matrix(rep(nap, nrow(vprZ[[i]])), ncol=1) - - -# B7 - siva, D9 - sivomodra, CD - rdeca, 1874-modra, ffe - roza -# c7 - sivoroza - barve1 <- c("#468fd7", "#CD2626", "#C7AFA3", "#D9E2E1", "#B7AFA3", "#AD571D", "#FF8200") - # Pomembno, da je skupaj tako v grafih po programih, kot v grafih - # po letnikih, prikazan z isto barvo - # samo ob pogoju, da nastopa vec tipov programov, drugace dejavnike prikazemo z rdeco - - barveStopnja <- barve1 - barveStopnja[length(vrstaProg_output[[i]])] <- "#FFE4E1" - bar <- as.matrix(rep(c(barveStopnja[1:length(vrstaProg_output[[i]])]), nrow(vprZ[[i]])), ncol=1) - stMeanSk_v <- as.matrix(rep("0", length(vrstaProg_output[[i]])*nrow(vprZ[[i]])), ncol=1) - odgSklopR_2 <- as.vector(sapply(odgSklop_R[[i]], function(x){rep(x, length(vrstaProg_output[[i]]))})) - vprZsklop2 <- as.vector(sapply(vprZ[[i]]$sklop, function(x){rep(x, length(vrstaProg_output[[i]]))})) - - # Grafom po letnikih pripisemo napise za v legendo - napisiLetnik <- c("Prvi letnik", "Drugi letnik", "Tretji letnik", - "Četrti letnik", "Skupaj") - - idLetnik <- c(1, 2, 3, 4, 25) - napisiLetnik <- data.frame(napisi = napisiLetnik, - id = idLetnik, stringsAsFactors =F) - - odgMeanSkupaj <- as.vector(sapply(odgMean[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - kratkoIme <- as.vector(sapply(vprZ[[i]]$kratkoIme, function(x){rep(x,length(vrstaProg_output[[i]]))})) - prazen_n <- as.vector(sapply(odgSt[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - prazen_min <- as.vector(sapply(odgMin[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - prazen_max <- as.vector(sapply(odgMax[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - prazen_sd <- as.vector(sapply(odgSd[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - - # Row names dodamo, ker drugace javi opozorilo - prazen_df <- data.frame(kratkoIme, stID_v, prazen_n, prazen_min, prazen_max, prazen_sd, stMean_v, stMean_v_graf, iii3, nap, bar, stMeanSk_v, odgSklopR_2, vprZsklop2, odgMeanSkupaj, row.names = 1:length(kratkoIme), stringsAsFactors = F) - - - - # Imena dejavnikov shranimo, da lahko poimenujemo posamezne kose, tega - # df, potem ko ga razdelimo glede na dejavnike - - vrstiRedImen <- prazen_df$kratkoIme[seq(1, length(prazen_df$kratkoIme), by=length(vrstaProg_output[[i]]))] - - prazen_df$prazen_sd[prazen_df$prazen_sd == "NA"] <- "." - # prvotni prazen_df, razbijemo na posamezna vprasanja - prazen_df <- split(prazen_df, rep(1:nrow(vprZ[[i]]),each=length(imena_output[[i]]))) - - - for (j in (1:length(vrstaProg_output[[i]]))){ - ii <- imena_output[[i]][j] - for (k in 1:length(tabela_p_skupna[[i]])){ - - colnames(prazen_df[[k]]) <- c("imeKratko","stopnjaId_v", "n", "min", "max", "sd", - "stopnjaMean_v", "meanGraf", "iii2", "napis", "barve", - "stopnjaMeanSkupaj_v", "odgSklop_R", "vprZ_sklop", "odgMeanSkupaj") - - if (ii %in% tabela_p_skupna[[i]][[k]][,1]){ - - if (length(tabela_p_skupna[[i]][[k]]['stopnjaMean_v'][tabela_p_skupna[[i]][[k]]['stopnjaId_v']==ii])!= 0){ - prazen_df[[k]]$stopnjaMean_v[[j]] <- tabela_p_skupna[[i]][[k]]['stopnjaMean_v'][tabela_p_skupna[[i]][[k]]['stopnjaId_v']==ii] - } - }else {prazen_df[[k]]$stopnjaMean_v[[j]] <- "0"} - - if (ii %in% graf_p_skupni[[i]][[k]][,1]){ - if (length(graf_p_skupni[[i]][[k]]['stopnjaMean_v[[i]]'][graf_p_skupni[[i]][[k]]['stopnjaId_v[[i]]']==ii])!= 0){ - if (prazen_df[[k]]$n[[j]] > 3){ - prazen_df[[k]]$meanGraf[[j]] <- formatC2(round2(as.numeric(graf_p_skupni[[i]][[k]]['stopnjaMean_v[[i]]'][graf_p_skupni[[i]][[k]]['stopnjaId_v[[i]]']==ii]), digits = 1), digits = 1, format = 'f') - }else{prazen_df[[k]]$meanGraf[[j]] <- NA} - - } - }else{prazen_df[[k]]$meanGraf[[j]] <- 000} - } - } - - - ### Podatke primerne za izris grafov transformiramo v obliko za tabele - ### Povprecja, ki so prvotno v enem stoplcu, razdelimo v vec stolpcev - ### Odvisno od stevila prisotnih stopenj. - - for (j in (1:length(prazen_df))){ - for (k in (1:nrow(prazen_df[[j]]))){ - prazen_df[[j]][paste0("povp",k)] <- barvanje_f(prazen_df[[j]]$meanGraf[[k]]) - } - # Izlocimo samo eno vrstico - # in potrebne stolpce za izpis tabele - # 14 - idSklopa; 9 - ime; 3:6 - n min max sd, 16... uni, mag... - sklopi_po_programih[[j]] <- prazen_df[[j]][1, c(14, 9, 3:6, 15:(16+length(vrstaProg_output[[i]])-1))] - } - - sklopi_po_programih_oba[[i]] <- sklopi_po_programih - names(prazen_df) <- vrstiRedImen - prazen_df_output[[i]] <- prazen_df - - names(sklopi_po_programih_oba[[i]]) <- vrstiRedImen - - # data.frame zdruzimo v enega - sklopi_po_programih_oba[[i]] <- do.call(rbind, sklopi_po_programih_oba[[i]]) - # podatke uredimo glede na id sklopa in padajoce povprecje za vse sklope - sklopi_po_programih_oba[[i]] <- arrange(sklopi_po_programih_oba[[i]], vprZ_sklop, desc(sklopi_po_programih_oba[[i]][,7])) - - # Izlocimo stolpec z id-jem sklopa - sklopi_po_programih_oba[[i]] <- sklopi_po_programih_oba[[i]][,-c(1, 7)] - - # Dolocimo napise za tabele po studijskih stopnjah: - if (length(vrstaProg_output[[i]]) > 1){ - napisiT5 <- lapply(imena_output[[i]][-length(imena_output[[i]])], function(x){ - if (nchar(unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x])) >6){ - paste0(strtrim(unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x]), 6), ".") - }else{ - unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x]) - } - }) - colnames(sklopi_po_programih_oba[[i]]) <- c("\\textbf{Dejavnik}", "n", "min", "max", "sd", unlist(napisiT5), "Skupaj") - }else if (length(vrstaProg_output[[i]]) == 1){ - napisiT5 <- lapply(imena_output[[i]], function(x){ - if (nchar(unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x])) > 15){ - if(substr(unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x]),15,15) == " "){ - paste0(strtrim(unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x]), 14), ".") - }else{ - paste0(strtrim(unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x]), 15), ".")} - }else{ - unique(veljavneEnote[[i]]$program[veljavneEnote[[i]]$idprog==x]) - } - }) - colnames(sklopi_po_programih_oba[[i]]) <- c("\\textbf{Dejavnik}", "n", "min", "max", "sd", unlist(napisiT5)) - } - - sklopi_po_programih_oba[[i]][sklopi_po_programih_oba[[i]] == 0] <- "." - sklopi_po_programih_oba[[i]] <- obdaj_z_oklepaji_f(sklopi_po_programih_oba[[i]],2,2,1,c(5:6)) -} - - -d3 <- list() -poSklopih <- list() -for (i in c(podatki_letnik)){ - odgSd[[i]][odgSd[[i]] == "NA"] <- "." - odgSd[[i]][odgSd[[i]] == "NA"] <- "." - # Tabela: Povprečne vrednosti za vse dejavnike (kasneje urejena) - d3[[i]] <- data.frame(vprZ[[i]]$dolgoIme, - vprZ[[i]]$kljucnaBeseda, - odgSt[[i]], - odgMin[[i]], - odgMax[[i]], - odgMean[[i]], - odgSd[[i]], - vprZ[[i]]$sklop, - odgSklop_R[[i]], - stringsAsFactors = FALSE) - -colnames(d3[[i]]) <- c("vprZ_dolgoIme", "vprZ_kljucnaBeseda", "odgSt", - "odgMin", "odgMax", "odgMean", "odgSd", - "vprZ_sklop", "odgSklop_R") - -# Tabela vseh dejavnikov glede na njihovo padajoce povprecje tabela: -poSklopih[[i]] <- arrange(d3[[i]][,c(1, 3, 6, 7)], desc(odgMean)) - -# Manjsim n-jem dodamo oklepaje in obarvamo povprecja -# poSklopih[[i]]$odgSt <- oklepajiVektor_f(as.numeric(unlist(poSklopih[[i]][2]))) -poSklopih[[i]] <- obdaj_z_oklepaji_f(poSklopih[[i]], 2, 2, 1, 3:4) - -poSklopih[[i]]$povp <- unname(poSklopih[[i]][3]) -poSklopih[[i]]$odgMean <- barvanje_f(poSklopih[[i]][3]) -#poSklopih[[i]][,5] <- round2(unlist(poSklopih[[i]][,5]), digits=1) - -colnames(poSklopih[[i]]) <- c("Dejavniki", "n", "povprečje", "sd") -} - -povzetek_kratek <- function(letnik){ - # Za povzetek, odstranimo tiste dejavnike, ki nimajo povp. - poSklopih_output <- poSklopih[[letnik]][!is.nan(unlist(poSklopih[[letnik]][,5])),] - poSklopih_output <- subset(poSklopih_output, poSklopih_output[,3] != ".") - - povzetek_najboljsi <- poSklopih_output[,5][unlist(poSklopih_output[,5]) == max(unlist(poSklopih_output[,5]))] - stNajboljsih <- length(povzetek_najboljsi) - povzetek_najslabsi <- poSklopih_output[,5][unlist(poSklopih_output[,5]) == min(unlist(poSklopih_output[,5]))] - stNajslabsih <- length(povzetek_najslabsi) - - for(i in (1:length(stNajboljsih))){ - if (stNajboljsih == 1){ - text <- paste0('Najboljše je ocenjen dejavnik "', poSklopih_output[i, 1], '" (', - poSklopih_output[i, 3], ')') - }else if (stNajboljsih == 2){ - text <- paste0('Najbolje sta ocenjena dejavnika "', poSklopih_output[1, 1], '" (', - poSklopih_output[1, 3], ') in "', poSklopih_output[2, 1], '" (', - poSklopih_output[2, 3], ')') - }else if (stNajboljsih > 2){ - krajsi_vseh <- stNajboljsih - text <- ('Najboljše so ocenjeni dejavniki ') - for ( j in 1:stNajboljsih){ - #krajsi_sledijo <- length(izbraniDejavniki) - i - if(j == krajsi_vseh){ - locilo <- ". " - }else if(j== krajsi_vseh - 1){ - locilo <- " in " - }else{ - locilo <- ", " - } - text <- paste0(text, '"',poSklopih_output[j, 1], - '" (', poSklopih_output[j, 3], - ')', locilo) - - } - } - } - - cat(paste0(text, " \\\\ \\\\")) - - for(i in (1:length(stNajslabsih))){ - if (stNajslabsih == 1){ - text <- paste0('Najslabše je ocenjen dejavnik "', - poSklopih_output[nrow(poSklopih_output), 1], '" (', - poSklopih_output[nrow(poSklopih_output), 3], ')') - }else if (stNajslabsih == 2){ - text <- paste0('Najslabše sta ocenjena dejavnika "', poSklopih_output[nrow(poSklopih_output), 1], '" (', - poSklopih_output[nrow(poSklopih_output), 3], ') in "', poSklopih_output[nrow(poSklopih_output)-1, 1], '" (', - poSklopih_output[nrow(poSklopih_output)-1, 3], ')') - }else if (stNajslabsih > 2){ - krajsi_vseh <- stNajslabsih - text <- ('Najslabše so ocenjeni dejavniki ') - for ( j in 1:stNajslabsih){ - #krajsi_sledijo <- length(izbraniDejavniki) - i - if(j == krajsi_vseh){ - locilo <- ". " - }else if(j== krajsi_vseh - 1){ - locilo <- " in " - }else{ - locilo <- ", " - } - text <- paste0(text, '"', - poSklopih_output[nrow(poSklopih_output)-(j-1), 1], - '" (', poSklopih_output[nrow(poSklopih_output)-(j-1), 3],')', locilo) - - } - } - } - - cat(text) -} - -# Spremenljivka, ki nastopa v grafu vseh dejavnikov -# Izberemo samo imena dejavnikov in odgMean -poSklopih_graf <- list() -poSklopih_urejena <- list() -#stVprasanj <- list() -napisiSklopov_addtorow <- list() -napisiSklopov_addtorow_frekvencna <- list() -d4_R2_output <- list() -mesta_addtorow <- list() -for (i in c(podatki_letnik)){ - poSklopih_graf[[i]] <- d3[[i]][,c(1, 3, 6)] - poSklopih_graf[[i]][1] <- vprZ[[i]]$grafBeseda - - # Izbris enot, ki imajo manj, kot 4 enote - poSklopih_graf[[i]] <- subset(poSklopih_graf[[i]], poSklopih_graf[[i]][,2] > 3) - poSklopih_graf[[i]] <- poSklopih_graf[[i]][,c(1,3)] - poSklopih_graf[[i]] <- arrange(poSklopih_graf[[i]], desc(odgMean)) - poSklopih_graf[[i]]$odgMean <- round2(poSklopih_graf[[i]]$odgMean, digits=1) - colnames(poSklopih_graf[[i]]) <- c("grafBeseda", "odgMean") - - # Zakaj? - if (nrow(poSklopih_graf[[i]]) != 0){ - poSklopih_graf[[i]]$id <- rev(1:nrow(poSklopih_graf[[i]])) - } - - # Po Sklopih urejena - # V poSklopih_urejena so povprecja glede na dejavnik urejena po sklopih in padajocem povprecju sklopa - # in padajocem povp dejavnikov - poSklopih_urejena[[i]] <- arrange(d3[[i]], desc(odgSklop_R), vprZ_sklop, desc(odgMean)) - - #Za barvanje vrstic - stVprasanj <- as.numeric() - stVprasanj.uQ <- unique(poSklopih_urejena[[i]]$vprZ_sklop) - for (j in stVprasanj.uQ){ - stVprasanj <- c(stVprasanj, length(poSklopih_urejena[[i]]$odgSt[poSklopih_urejena[[i]]$vprZ_sklop == j])) - } - - # Pridobimo unikatne ID-je sklopov, ki jih bomo nato povezali z napisi sklopov - idSklopov <- unique(poSklopih_urejena[[i]]$vprZ_sklop) - # Napise sklopov uredimo glede na pripadajoce urejene dejavnike - napisiSklopov_addtorow[[i]] <- sapply(idSklopov, function(x){napisiSklop[x]}) - # Pomembno, da so v tabeli s frekvencno porazdelitvijo odg, napisi sklopov prikazani v eni vrstici - napisiSklopov_addtorow_frekvencna[[i]] <- paste0("\\multicolumn{11}{l}{\\textbf{", napisiSklopov_addtorow[[i]], "}}\\\\ ") - # Pomembno, da so v tabeli, kjer so dejavniki grupirani po sklopih, napisi sklopov - # prikazani v eni vrstici - napisiSklopov_addtorow[[i]] <- paste0("\\multicolumn{6}{l}{\\textbf{", napisiSklopov_addtorow[[i]], "}}\\\\ ") - - napisiSklopov_addtorow[[i]][seq(2,length(napisiSklopov_addtorow[[i]]), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow[[i]][seq(2,length(napisiSklopov_addtorow[[i]]), by=2)]) - - napisiSklopov_addtorow_frekvencna[[i]][seq(2,length(napisiSklopov_addtorow_frekvencna[[i]]), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow_frekvencna[[i]][seq(2,length(napisiSklopov_addtorow_frekvencna[[i]]), by=2)]) - # Za vrstico z imeni stoplcev pri tabeli s frekvencno porazdelitvijo narisemo crto - napisiSklopov_addtorow_frekvencna[[i]][1] <- paste0("\\hline ", napisiSklopov_addtorow_frekvencna[[i]][1]) - - # Mesta na katera bomo z addtorow v xtable izpisali sklope - mesta_addtorow[[i]] <- c(1, cumsum(stVprasanj)[-length(stVprasanj)]) - - - # Indeksi - poSklopih_urejena[[i]] <- poSklopih_urejena[[i]][,2:7] - poSklopih_urejena[[i]][,5] <- barvanje_f(poSklopih_urejena[[i]][,5]) - - # in poimenujemo stolpce - colnames(poSklopih_urejena[[i]]) <- c("\\textbf{Dejavnik}", "n", "min", "max", "povprečje", "sd") - - - #### katere vrstice naj bodo obarvane: - d4_temp <- 0 - d4_R2 <- as.numeric() - for (j in (1:length(stVprasanj))){ - if (j %% 2 == 0){ - for(k in(1:stVprasanj[j])){ - d4_R2 <- c(d4_R2, k+d4_temp) - } - d4_temp <- d4_temp + stVprasanj[j] - } - else{ - d4_temp <- d4_temp + stVprasanj[j] - } - } - - #Drugace obarvanje zamakne za eno vrstico - d4_R2_output[[i]] <- d4_R2 - 1 - -} - - - -#Data frame z arrange iz dplyr uredimo glede na mean narascajoce -#z digits dolocamo st. decimalnih mest po stolpcih -#align povravnava in sirina stolpcev -#add.to.row: alternirajoce baravanje vrstic -#'longtable', zato, da se tabela nadaljuje -#floating = false, mora biti pri longtable drugace lahko vrne opozorilo - -cat('\\section{Povzetek}') -cat(paste0('Povzemamo glavne ugotovitve evalvacijske ankete zadovoljstva študentov tretje stopnje "', fakulteta, ' (', celaLetnica_dolga[[1]], ')".')) -if (length(podatki_letnik) > 1){ - cat(paste0(' V anketi je odgovarjalo ', poProgramih_N_veljavni[[1]][1], ' študentov prvega letnika (od ', stevilo_vpisanih[[1]][1], ' vpisanih) in ', poProgramih_N_veljavni[[2]][1], ' študentov drugega letnika (od ', stevilo_vpisanih[[2]][1], ' vpisanih).')) -}else{ - cat(paste0(' V anketi je odgovarjalo ', poProgramih_N_veljavni[[podatki_letnik]][1], ' študentov prvega letnika (od ', stevilo_vpisanih[[podatki_letnik]][1], ' vpisanih). ')) -} - -@ -V povzetku se omejujemo predvsem na prikaz ocen za dejavnike splošnega zadovoljstva na lestvici 1 - 5. Povprečja, ki izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji). \\ \\ - -<>= - -##### -### POVZETEK -####### -########## - -# Splosna struktura: 1) funkcija z argumenti 'stVecjih', 'stManjsih', 'stSledijo', -# 'izhodisce' - -# 2) Sestavimo okvir z urejenimi sklopi GLEDE NA, tipa 1-5 -# Poklicemo funkcijo, ki izpise text za sklope v okviru tipa 1-5 -# tip 1: >4.5; tip2: vecje ali enako 4 in manjse od 4.5; tip 1: <3 - -# Dolocimo napise izhodisca, ki jih poklicemo v funkciji povzetek_f - -napisiIzhodisce <- list() - -#Za povprečja manjsa od 3 -napisiIzhodisce[[1]] <- c("Kritično je ocenjen dejavnik:", - "Kritično sta ocenjena dejavnika:", - "Kritično so ocenjeni dejavniki:", - "") - -# Za povprečja manjsa od 3.5 in vecja od 3 -napisiIzhodisce[[2]] <- c("Zelo veliko prostora za izboljšave ima dejavnik:", - "Zelo veliko prostora za izboljšave imata dejavnika:", - "Zelo veliko prostora za izboljšave je pri dejavnikih:", - "") - -# Za povprečja manjsa od 4 in vecja od 3.5 -napisiIzhodisce[[3]] <- c("Dobro je ocenjen dejavnik:", - "Dobro sta ocenjena dejavnika:", - "Dobro so ocenjeni naslednji dejavniki:", - "") - -# Za povprečja manjsa od 4.5 in vecja od 4 -napisiIzhodisce[[4]] <- c("Zelo dobro je ocenjen dejavnik:", - "Zelo dobro sta ocenjena dejavnika:", - "Zelo dobro so ocenjeni naslednji dejavniki:", - "") - -#Napisi za povprečja večja od 4.5 -napisiIzhodisce[[5]] <- c("Odlično je ocenjen dejavnik:", - "Odlično sta ocenjena dejavnika:", - "Odlično so ocenjeni naslednji dejavniki:", - "") - - -#Funkcija, ki določi napis in ločilo za izpis 'stSledijo' -# 'stSledijo' so tisti, ki spadajo v ta (izhodiscni) sklop - -# Funkcija, ki določi napis in ločilo za izpis pri tistih sklopih, ki nimajo -# vecjih ali manjsih - -napisLocilo <- function(k){ - if((stSledijo==1 & k == 1) | k == stSledijo){ - locilo <- "." - y <- 1 - } - else if (stSledijo >= 2 & k == stSledijo-1) { - locilo <- " in" - y <- 2 - } - else if ((stSledijo>2 & k!= 1) & k!= stSledijo ){ - locilo <- "," - y <- 3 - } - else if (stSledijo > 2 & k == 1){ - #locilo <- ", sledi" - locilo <- "," - y <- 3 - } - return(list(locilo, y)) -} - -# To Do: zamenjaj vrstni red, da bo pri klicanju enako kot tu -# (stVecjih, stSledijo, stManjsih) - -# Funkcija, ki izpise povzetek glede na -# x - stVecjih, x2 - stManjsih, x3 - stSledijo, x4 - izhodisce -# glede na izhodisce dolocimo napise glede na razdaljo povprecja -# od povprecja sklopa -# Izhodisca: > 4.5 = 5; vecje ali enako 4 in manjse od 4.5 = 4;... <3 = 1 - -povzetek_f <- function(x, x2, x3, x4){ - - # ki nam pomaga dolociti napise (npr. neprimerno boljse / slabse, izrazito...) - izhodisce <- x4 - - - # Ce obstaja kaksen dejavnik, ki je vecji od sklopa v katerega je umescen - if (x > 0){ - - #S krepko pisavo izpise ime sklopa - text <- paste0(text, "\\item \\textbf{", dfX[,1][[i]], ":} ") - - # Padajoce urejena povprecja dejavnikov za i-ti sklop v dfX - # V dfX so sklopi izbranega tipa - povp_zaIzpis <- povpSklopi_zaIzpis_output[[i]]$odgMean_rounded[povpSklopi_zaIzpis_output[[i]]$idSklzzev_zaIzpis==dfX[i,2]] - - # Izlocimo samo vecja povprecja od sklopa, da jim lahko dolocimo razdaljo - # od izhodisca - vecji <- povp_zaIzpis[c(1:stVecjih)] - vecji_opis <- list() - razdalja <- list() - - # Vsakemu povprecju doloci razdaljo od izhodisca - # Mozne razdalje so od 3 - 0 - # 3 izraza neprimerno boljse; 0 pa nekoliko boljse - for (ix in 1:length(vecji)){ - - if (vecji[[ix]] > 4.5) { - vecji_opis[[ix]] <- 4 - }else if(vecji[[ix]] > 4 ) { - vecji_opis[[ix]] <- 3 - }else if (vecji[[ix]] > 3.5) { - vecji_opis[[ix]] <- 2 - }else if (vecji[[ix]] > 3) { - vecji_opis[[ix]] <- 1 - } - razdalja[[ix]] <- vecji_opis[[ix]] - izhodisce - - } - - # Dolocimo napise glede na razdaljo - - vecji.napis_tip0 <- c("Nekoliko bolje ") - vecji.napis_tip1 <- c("Precej bolje ") - vecji.napis_tip2 <- c("Izrazito bolje ") - vecji.napis_tip3 <- c("Neprimerno bolje ") - - - st_razdalja_stiri <- length(unlist(razdalja)[razdalja==3]) - - if(st_razdalja_stiri > 0){ - # Dolocimo locila in napis glede na stevilo dejavnikov razdalje 3 - # locilo pripisemo vsakemu dejavniku posebej - # napisiText upostevamo samo pri prvem dejavniku - for (j in (1: st_razdalja_stiri)){ - - if(st_razdalja_stiri==1 | j == st_razdalja_stiri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_stiri==2 | j == st_razdalja_stiri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 3 - # npr. vecji.napis_tip3 = "Neprimerno boljše " - # napisiText = "sta ocenjena dejavnika" - # vprZ3... = Dolgo ime vidika - # odgMean.. = povprecje vidika - - if (j==1){ text <- paste0(text, vecji.napis_tip3, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - - if(st_razdalja_tri > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 2 - for (j in (1: st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 2 - if (j==1){ text <- paste0(text, vecji.napis_tip2, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - - if(st_razdalja_dve > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 1 - for (j in (1: st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 1 - if (j==1){ text <- paste0(text, vecji.napis_tip1, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_ena <- length(unlist(razdalja)[razdalja == 0]) - - if(st_razdalja_ena > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 0 - for (j in (1: st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 0 - # Sprememba - if (j==1){ text <- paste0(text, vecji.napis_tip0, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - # 2. Sledijo: to so tisti dejavniki, katerih povprecje spada v povprecje sklopa - # Kljub temu imajo vsaj en dejavnik, ki ima povp vecjo od intervala mediane - # kamor je uvrscen sklop. - if (x3 > 0){ - for (k in ((stVecjih+1):(stVecjih+stSledijo))){ - # k- stvecjih - # pomembno, da pravilno doloci locilo - locilo <- napisLocilo(k-stVecjih)[[1]] - - # Dolocimo 'je / sta / so' za napisiIzhodisce - if (stSledijo == 1){ - y2 <- 1 - napisSledijo <- " Sledi " - }else if(stSledijo == 2){ - y2 <- 2 - napisSledijo <- " Sledita " - }else if(stSledijo > 2){ - y2 <- 3 - napisSledijo <- " Sledijo " - ### ???? - }else if(stSledijo+stVecjih == 0){ - y2 <- 4 - } - - if (k == stVecjih+1){text <- paste0(text, napisSledijo)} - text <- paste0(text, - " \\textit{'", - vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - } - } - } - - # Izpis povzetka za sklop, katerega dejavniki glede na povprecja v celoti pasejo vanj - else { - text <- paste0(text, "\\item \\textbf{", dfX[,1][i], ":} ") - for (k in (1:(x3))){ - izhodisce <- x4 - # x3 - stevilo dejavnikov, ki pasejo v ta sklop - # izberemo obliko je / sta / so - # glede na stevilo vidikov - - if(x3==1){ - st <- 1 - }else if(x3==2){ - st <- 2 - }else if(x3>2){ - st <- 3 - } - - if(k==1){text <- paste0(text)} - locilo <- napisLocilo(k)[[1]] - x <- napisLocilo(k)[[2]] - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - - } - } - - ############################################## - # 3. stManjsih - # Glej opis za 1.) stVecjih - - #Ce je v sklopu kaksen dejavnik s povprecjem manjsim od povp. skopa - if (x2>0){ - izhodisce <- x4 - - povp_zaIzpis <- povpSklopi_zaIzpis_output[[i]]$odgMean_rounded[povpSklopi_zaIzpis_output[[i]]$idSklopov_zaIzpis==dfX[i,2]] - - manjsi <- povp_zaIzpis[c((stVecjih+stSledijo+1):length(povp_zaIzpis))] - manjsi_opis <- list() - razdalja <- list() - - - for (ix in 1:length(manjsi)){ - - if (manjsi[[ix]] <= 4.5 & manjsi[[ix]]>4) { - manjsi_opis[[ix]] <- 5 - }else if(manjsi[[ix]] <= 4 & manjsi[[ix]]>3.5) { - manjsi_opis[[ix]] <- 4 - }else if (manjsi[[ix]] <= 3.5 & manjsi[[ix]]>3) { - manjsi_opis[[ix]] <- 3 - }else if (manjsi[[ix]] <= 3) { - manjsi_opis[[ix]] <- 2 - } - # Pri vecjih dodamo +11 - razdalja[[ix]] <- manjsi_opis[[ix]] - izhodisce - - } - manjsi.napis_tip0 <- c(" Nekoliko slabše ") - manjsi.napis_tip1 <- c(" Precej slabše ") - manjsi.napis_tip2 <- c(" Izrazito slabše ") - manjsi.napis_tip3 <- c(" Neprimerno slabše ") - - - st_razdalja_ena <- length(unlist(razdalja)[razdalja==0]) - - # Ce obstaja vsaj eno povprecje, ki je za eno razdaljo manjse od sklopa - if (st_razdalja_ena > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_ena){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip0, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - if(st_razdalja_dve > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_dve){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip1, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip2, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==3]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip3, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - } - return(text) -} - -# Funkcija, ki doloci napise pri n ????????? -auto.NapisSklop_f <- function(x=0){ - # Pri tem napisu je struktura nekoliko drugacna - if (x==1){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pri naslednjem sklopu " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "je pri naslednjih dveh sklopih " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "je pri naslednjih sklopih " - } - }else if(x==2){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pozitivno ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta pozitivno ocenjena naslednja sklopa, ki pa imata še precej prostora za izboljšave " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so pozitivno ocenjeni naslednji sklopi, ki pa imajo še precej prostora za izboljšave " - } - # Pri teh napisih ne potrebujemo presledka - }else if (x==5){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pri naslednjem sklopu" - }else if (nrow(dfX)==2){ - auto.napis_NS <- "je pri naslednjih dveh sklopih" - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "je pri naslednjih sklopih" - } - - }else{ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je ocenjen naslednji sklop " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta ocenjena naslednja sklopa " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so ocenjeni naslednji sklopi " - } - } - return(auto.napis_NS) -} - - - -# Sestavimo okvir za vsak tip (1-5) -# Za vse sklope s povprečjem >=4.5 & <5 -# Znotraj dolocimo argumente funkcije povzetek_f -# in jo poklicemo znotraj vsakega tipa -# tipe smo dolocili pri z zanko, ki gre cez sklop_Z (povprecja sklopov) -# *podroben opis samo pri prvem pri ostalih se ponovi -# Pomoznim podatkom dejavnikov pripisemo povprecja, da jih lahko razvrscamo / klicemo -# po padajocem povprecju znotraj posameznega sklopa - -text <- as.character() -text_povzetek_output <- list() -for (letnik in c(podatki_letnik)){ - - odgMean_povzetek <- unlist(odgMean[[letnik]]) - vprZ3 <- cbind(vprZ[[letnik]], odgMean_povzetek) - vprZ3 <- arrange(vprZ3, sklop, desc(odgMean_povzetek)) - - odgMean1 <- round2(odgMean_povzetek, digits=1) - #odgMean1[odgMean1 == "NaN"] <- 0 - odgMean1 <- c(sort(odgMean1[1:6], decreasing=TRUE), - sort(odgMean1[7:11], decreasing=TRUE), - sort(odgMean1[12:17], decreasing=TRUE), - sort(odgMean1[18:21], decreasing=TRUE), - sort(odgMean1[22:25], decreasing=TRUE)) - - #Barvanje povprecij dejavnikov (pod 3 je rdeca, pod 4 oranzna, nad 4.5 zelena) - #Zaokrozimo na eno decimalko - odgMean1 <- lapply(odgMean1, function(x){ - - if(x >= 4.5){ - paste0("\\textcolor[HTML]{006666}{\\textbf{", - formatC2(x, digits=1, format='f'), "}}") - } - else if (x >= 4){ - paste0("\\textbf{\\textcolor[HTML]{36BF4B}{", - formatC2(x, digits=1, format='f'), "}}") - } - else if (x >= 3.5 & x < 4){ - paste0("", - formatC2(x, digits=1, format='f'), "") - } - else if (x >= 3 & x < 3.5){ - paste0("\\textcolor[HTML]{F58137}{\\textbf{", - formatC2(x, digits=1, format='f'), "}}") - } - else if(x < 3 & x >= 1){ - paste0("\\textcolor[HTML]{B6321C}{\\textbf{", - formatC2(x, digits=1, format='f'), "}}") - }else{ - "/" - } - - }) - - #Zaradi kasnejsega urejanja po velikosti glede na povp. seznam pretvorimo v df. - dfZ <- as.data.frame(sklop_Z[[letnik]], stringsAsFactors = FALSE) - dfZ <- as.data.frame(lapply(dfZ, unlist), stringsAsFactors = FALSE) - #Dodamo stevilo vprasanj glede na sklop - #if (dodatniSklop == 1){ - # dfZ$stVprasanj <- c(3, 4, 4, 6, 5, 2, 2, 1, 3) - #}else{ - dfZ$stVprasanj <- c(6, 5, 6, 4, 4) - #} - - #Uredimo po velikosti glede na odgSklop (povp. sklopa) - dfZ <- dfZ[with(dfZ, order(dfZ$odgSklop, decreasing = TRUE)), ] - - dfX <- subset(dfZ, dfZ$tip == 1) - if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, "Odlično ", auto.napis_NS, - "(mediana dejavnikov je v intervalu 4.5 - 5.0): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - # Dolocimo kratkoIme vprasanj v tem sklopu - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - # V tem sklopu ne more biti dejavnikov z vecjim povprecjem od njega - stVecjih <- 0 - - # Povprecje tega sklopa je vecje od 4.5 (tip = 1) - # prestejemo dejavnike, ki imajo sklop enak i-temu elementu dfX-a - # in so manjsi od 4.5 - - # Izklopimo opisne ocene. - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean <= 4.5]) - - stManjsih <- 0 - stSledijo <- stDejavnikov - stManjsih - - # zadnji argument je izhodisce od katerega v funkciji povzetek_f - # racunamo razdaljo in dolocamo napise za dejavnike, ki imajo povp. - # vecje ali manjse od svojega sklopa - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 5) - - } - text <- paste0(text," \\end{itemize}") - } - - # Izpis texta za ocene med 4 in 4.5 - dfX <- subset(dfZ, dfZ$tip == 2) - if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, "Zelo dobro ", auto.napis_NS, - "(mediana dejavnikov je v intervalu 4.0 - 4.5): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 4.5]) - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean < 4]) - stVecjih <- 0 - stManjsih <- 0 - - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 4) - - } - text <- paste0(text," \\end{itemize}") - } - - - #Ocene med 3.5 in 4 - dfX <- subset(dfZ, dfZ$tip == 3) - - if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f(2) - text <- paste0(text, "V celoti gledano ", auto.napis_NS, "(mediana dejavnikov je v intervalu 3.5 - 4.0): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] & vprZ3$odgMean > 4]) - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] & vprZ3$odgMean <3.5]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 3) - } - - text <- paste0(text," \\end{itemize}") - } - - #Ocene nad 3 in manj kot 3.5 - dfX <- subset(dfZ, dfZ$tip == 4) - if (nrow(dfX) != 0){ - # 5, zato, ker so tu napisi nekoliko drugacni (ne potrebujemo presledka) - auto.napis_NS <- auto.NapisSklop_f(5) - - text <- paste0(text, "Veliko prostora za izboljšave ", - auto.napis_NS, ", kjer je pozitivno oceno (4 ali 5) podala manj kot polovica študentov", - " (mediana dejavnikov je v intervalu 3.0 - 3.5): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 2) - - } - text <- paste0(text," \\end{itemize}") - } - - #Ocene pod 3 - dfX <- subset(dfZ, dfZ$tip == 5) - if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, - "Kritično nizko ", auto.napis_NS, - "(mediana dejavnikov je manjša od 3.0): \\begin{itemize}") - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 3.5]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] ) -stVecjih - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 1) - - } - text <- paste0(text," \\end{itemize}") - } - text_povzetek_output[[letnik]] <- text - text <- as.character() -} - -letnik_beseda <- c("Prvi letnik", "Drugi letnik") -cat("\\vspace*{-1cm}") -for (i in podatki_letnik){ - cat(paste0("\\subsection{ ", letnik_beseda[i], "} ")) - cat(gsub("\\[BR\\]", "\\\\\\\\", text_povzetek_output[[i]])) - cat(" Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana. \\newline \\newline Podrobna primerjava rezultatov z drugimi članicami UL je na povezavi \\url{http://ul.1ka.si}.") - - cat("\\newpage") -} - - -@ -%\vfill \hyperlink{thesentence}{*Način avtomatskega generiranja povzetka je opisan v prilogi 2.} -\tableofcontents -\newpage -\section{Metodologija} -<>= -library(rvest) -page <- read_html("http://ul.1ka.si/c/6/") -plain.text <- page %>% html_nodes ("#main p") %>% html_text()%>%as.character() - -text <- gsub("\\[seznam\\]", "\\\\begin{itemize} ", plain.text) -text <- gsub("\\[\\\\seznam\\]", "\\\\end{itemize} ", text) -text <- gsub("• ", "\\\\item ", text) -text <- gsub("%", "\\\\% ", text) -#plain.text <- gsub("[\r\n]", "", plain.text) -#text <- gsub("\\[P\\]", stVrsta.vsi[length(stVrsta.vsi)], text) -#text <- gsub("\\[Z\\]", stVrsta.r[length(stVrsta.r)], text) -#text <- gsub("\\[I\\]", vsehT1, text) - -# text <- gsub("\\[P\\]", stVrsta.vsi_output[[1]][length(stVrsta.vsi_output[[1]])], text) -# text <- gsub("\\[Z\\]", stVrsta.r_output[[1]][length(stVrsta.r_output[[1]])], text) -# text <- gsub("\\[I\\]", vsehT1[[1]], text) -# -# text <- gsub("\\[P2\\]", stVrsta.vsi_output[[2]][length(stVrsta.vsi_output[[2]])], text) -# text <- gsub("\\[Z2\\]", stVrsta.r_output[[2]][length(stVrsta.r_output[[2]])], text) -# text <- gsub("\\[I2\\]", vsehT1[[2]], text) - -#text <- gsub("\\[\\]", stVrsta.vsi_output[[2]][length(stVrsta.vsi_output[[2]])], text) - - -text <- gsub("\\[br\\]", "\\\\\\\\", text) -text <- gsub("\\[link\\]", "{\\\\url{", text) -text <- gsub("\\[\\\\link\\]", "}}", text) -text <- gsub("\\[koren\\]", "$\\\\sqrt{", text) -text <- gsub("\\[\\\\koren\\]", "}$", text) -text <- gsub("\\[rdeca\\]", "\\\\textcolor[HTML]{B6321C}{\\\\textbf{", text) -text <- gsub("\\[\\\\rdeca\\]", "}}", text) -text <- gsub("\\[oranzna\\]", "\\\\textcolor[HTML]{F58137}{\\\\textbf{", text) -text <- gsub("\\[\\\\oranzna\\]", "}}", text) -text <- gsub("\\[zelena\\]", "\\\\textcolor[HTML]{36BF4B}{\\\\textbf{", text) -text <- gsub("\\[\\\\zelena\\]", "}}", text) -text <- gsub("\\[temnoZelena\\]", "\\\\textcolor[HTML]{006666}{\\\\textbf{", text) -text <- gsub("\\[\\\\temnoZelena\\]", "}}", text) -text <- gsub("\\[it\\]", "\\\\textit{", text) -text <- gsub("\\[\\\\it\\]", "}", text) - -cat(text) - -cat('Povzemimo še odziv študentov: - \\begin{itemize}') -letnik_beseda_metodologija <- c("prvega", "drugega") -letnik_beseda_metodologija2 <- c("prvi", "drugi") - -if (length(podatki_letnik)>1){ - nova_vrstica_metodologija <- c(" ", " \\end{itemize} ") -}else{ nova_vrstica_metodologija <- c(" \\end{itemize} ", "\\end{itemize}" ) -} - -for (i in podatki_letnik){ - #pristopili_fun <- function(x){ -vpisanih_text <- paste0("V ", letnik_beseda_metodologija2[[i]], " letnik je vpisanih ", stevilo_vpisanih[[i]][length(stevilo_vpisanih[[i]])], " študentov, od tega ") - - if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] == 1){ - pristopili_text <- paste0("je k anketi pristopil 1 študent, ") - }else if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] == 2){ - pristopili_text <- paste0("sta k anketi pristopila 2 študenta, ") - }else if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] > 2 & stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] < 5){ - pristopili_text <- paste0("so k anketi pristopili ", stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])], " študenti, ") - }else if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] > 4){ - pristopili_text <- paste0("je k anketi pristopilo ", stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])], " študentov, ") - } - - - if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] == 1){ - zavrnili_text <- paste0("1 študent je nato sodelovanje izrecno zavrnil,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] == 2){ - zavrnili_text <- paste0("2 študenta sta nato sodelovanje izrecno zavrnila,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] > 2 & stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] < 5){ - zavrnili_text <- paste0(stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] ," študenti so nato sodelovanje izrecno zavrnili,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] > 4){ - zavrnili_text <- paste0(stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] ," študentov je nato sodelovanje izrecno zavrnilo,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] == 0){ - zavrnili_text <- paste0("sodelovanja ni zavrnil nihče izmed študentov,") - } - - if (vsehT1[[i]] == 1){ - izpolnili_text <- paste0(" anketo je tako izpolnjeval 1 študent.") - }else if (vsehT1[[i]] == 2){ - izpolnili_text <- paste0(" preostala 2 študenta pa sta na anketo odgovorila.") - }else if (vsehT1[[i]] > 2 & vsehT1[[i]] < 5){ - izpolnili_text <- paste0(" preostali ", vsehT1[[i]] ," študenti pa so na anketo odgovorili.") - }else if (vsehT1[[i]] > 4){ - izpolnili_text <- paste0(" preostalih ", vsehT1[[i]] ," študentov pa je na anketo odgovorilo.") - } - #cat(" K anketi ", pristopili_text, " ", zavrnili_text, - # " Anketo ", izpolnili_text, nova_vrstica_metodologija[i]) - cat(" \\item ", vpisanih_text, pristopili_text, zavrnili_text, izpolnili_text, nova_vrstica_metodologija[i]) -} -@ -%\vfill -%*Besedilo je zajeto s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/} -\newpage -\section{Sodelovanje študentov v anketi} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov "\Sexpr{fakulteta}" po letnikih in po programih. - -V koloni "odgovoril" je z enojnimi (<10) ali dvojnimi ((<5)) oklepaji označeno morebitno nižje število odgovorov "n" (glej poglavje Metodologija), ki v analizah zahteva več previdnosti pri interpretacijah. - -<>= -if (1 %in% podatki_letnik){ - - #Dodamo multicolumns in črto nad njimi - # \\multicolumn{2}{r|}{\\textbf{zavrnili}} Za r, moramo ponoviti crto (|) iz align - # Drugace se pri multicolumn konca - # Vse vrstice nad \endhead se ponovijo na vsaki strani - # Pomembno, da ponovi glavo tudi pri naslednjih straneh pri longtable - # /toprule /hline, namesto dvakrat /hline, ker drugace - # longtable izpise samo eno odebeljeno crto - - addtorow <- list() - addtorow$pos <- list(-1, -1, 0) - addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{2}{r|}{\\textbf{vpisanih}} & \\multicolumn{2}{r|}{\\textbf{ni pristopil}} & \\multicolumn{2}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{2}{|r|}{\\textbf{vpisanih}} & - \\multicolumn{2}{|r|}{\\textbf{ni prostopil}} & - \\multicolumn{2}{r|}{\\textbf{pristopili}} & - \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & N & \\% & $n_0$ & \\% & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - print(xtable(struktura_studijski_program_koncni_2[[1]], - align=c("l", "p{7.4cm}", "|c", "c|", "c", "c|", "c", "c|", "c", "c|", "c", "c|"), - caption = "Sodelovanje študentov glede na študijski program - prvi letnik"), - caption.placement="top", - include.rownames = FALSE, - add.to.row = addtorow, - floating = FALSE, - tabular.environment = "longtable", - sanitize.colnames.function = function(x){x}, - # Pomembno, da delujejo latex ukazi v textu znotraj vrstic - sanitize.text.function = function(x){x}, - hline.after = c(hlines[[1]]-1)) #aktiviramo dolocene crte - -# Po stolpcih -addtorow <- list() -addtorow$pos <- list(-1, -1, 0) - -# isti opis kot zgoraj -addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{2}{r|}{\\textbf{vpisanih}} & \\multicolumn{2}{r|}{\\textbf{ni pristopil}} & \\multicolumn{2}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov glede na sodelovanje po programih - - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{2}{|r|}{\\textbf{vpisanih}} & - \\multicolumn{2}{r|}{\\textbf{ni prostopil}} & - \\multicolumn{2}{r|}{\\textbf{pristopili}} & - \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & N & \\% & N & \\% & $n_0$ & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -} - -if (2 %in% podatki_letnik){ -# Drugi letnik - addtorow <- list() - addtorow$pos <- list(-1, -1, 0) - - #Dodamo multicolumns in črto nad njimi - # \\multicolumn{2}{r|}{\\textbf{zavrnili}} Za r, moramo ponoviti crto (|) iz align - # Drugace se pri multicolumn konca - # Vse vrstice nad \endhead se ponovijo na vsaki strani - # Pomembno, da ponovi glavo tudi pri naslednjih straneh pri longtable - # /toprule /hline, namesto dvakrat /hline, ker drugace - # longtable izpise samo eno odebeljeno crto - - addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{2}{r|}{\\textbf{vpisanih}} & \\multicolumn{2}{r|}{\\textbf{ni pristopil}} & \\multicolumn{2}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{2}{|r|}{\\textbf{vpisanih}} & - \\multicolumn{2}{|r|}{\\textbf{ni pristopil}} & - \\multicolumn{2}{r|}{\\textbf{pristopili}} & - \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & N & \\% & $n_0$ & \\% & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - print(xtable(struktura_studijski_program_koncni_2[[2]], - align=c("l", "p{7.4cm}", "|c", "c", "|c", "c|", "c", "c|", "c", "c|", "c", "c|"), - caption = "Sodelovanje študentov glede na študijski program - drugi letnik"), - caption.placement="top", - include.rownames = FALSE, - add.to.row = addtorow, - floating = FALSE, - tabular.environment = "longtable", - sanitize.colnames.function = function(x){x}, - # Pomembno, da delujejo latex ukazi v textu znotraj vrstic - sanitize.text.function = function(x){x}, - hline.after = c(hlines[[2]]-1)) #aktiviramo dolocene crte -# Po stolpcih -addtorow <- list() -addtorow$pos <- list(-1, -1, 0) -# isti opis, kot zgoraj -addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{2}{r|}{\\textbf{vpisanih}} & \\multicolumn{2}{r|}{\\textbf{ni pristopil}} & \\multicolumn{2}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov glede na sodelovanje po programih - - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{2}{|r|}{\\textbf{vpisanih}} & - \\multicolumn{2}{r|}{\\textbf{ni prostopil}} & - \\multicolumn{2}{r|}{\\textbf{pristopili}} & - \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & N & \\% & N & \\% & $n_0$ & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - -} - -grafDejavnikov <- function(data, letnik){ - data <- data[!is.nan(data$odgMean),] - data <- data[data$odgMean != 0, ] - p2 <- ggplot(data, aes(x=reorder(grafBeseda, id), y=odgMean) ) + - geom_bar(stat="identity", fill="#468fd7")+ - geom_hline(yintercept = c(3), linetype="dotted", colour="#B6321C") + - geom_hline(yintercept = c(3.5), linetype="dotted", colour="#F58137") + - geom_hline(yintercept = c(4, 4.5), linetype="dotted") + - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = "white", - #fontface = "bold", - size = 4.2, - label = formatC2(sort(data$odgMean), - digits=1, format='f'))+ - coord_flip(ylim=c(1,5))+ - xlab("")+ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(axis.line.x = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.text= element_text(size=11, family="CM Roman"), - axis.title= element_text(size=11, family='CM Roman')) - - -ime <- paste0("rezultati/", ID,"/grafi/grafVsehDejavnikov","_",letnik,".pdf") -showtext.auto() -ggsave(p2, filename=ime, units="in", device=cairo_pdf ) - -cat(paste0('\\begin{figure}[ht] -\\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\\includegraphics[width=\\maxwidth]{../', ime, '} -\\end{figure}')) -} - -@ - -<>= -if (length(podatki_letnik) == 2 || podatki_letnik == 1){ - cat('\\newpage') - cat('\\pagestyle{prvi}') - cat('\\section{Podrobne analize: Prvi letnik}') - cat('\\subsection{Analiza dejavnikov}') - cat('V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so sicer vključene v agregatne analize tudi v poglavju 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.') - - - # Opisne statistike za vse dejavnike urejene po povprecjih - rws3 <- seq(1, (nrow(poSklopih_urejena[[1]])-1), by = 2) - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - colnames(poSklopih[[1]]) <- c("Dejavniki", "n", "povprečje", "sd") - poSklopih[[1]][,3][poSklopih[[1]][,3] == "NaN"] <- "." - - print(xtable(poSklopih[[1]][-5], - digits=c(0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po povprečjih", - align = c("l", "p{12cm}", "c", "c", "c")), - caption.placement="top", - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE, - table.placement= ("!ht"), - add.to.row = list(pos = list(-1, rws3), - command = c("\\hline","\\rowcolor[gray]{0.95}"))) - cat('\\newpage') - - - # graficen prikaz zgornje tabele - grafDejavnikov(poSklopih_graf[[1]], "prvi") - povzetek_kratek(1) - cat('\\clearpage') - - print(xtable(obdaj_z_oklepaji_f(poSklopih_urejena[[1]],2,2,1, c(5:6)), - digits=c(0,0,0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih", - align = c("l", "p{8.2cm}", "C{0.8cm}", "C{1cm}", - "C{1cm}", "C{2.2cm}", "C{1cm}")), - - caption.placement="top", - sanitize.colnames.function = bold, - #include.colnames = F, - include.rownames = FALSE, - table.placement= ("!ht"), - sanitize.text.function = function(x){x}, - #only.contents = T, - hline.after = c(-1, nrow(poSklopih_urejena[[1]])), - #booktabs = TRUE, - add.to.row = list(pos = list(-1, 0, 0, - mesta_addtorow[[1]][2], - mesta_addtorow[[1]][3], - mesta_addtorow[[1]][4], - mesta_addtorow[[1]][5], - d4_R2_output[[1]]), - command = c("\\hline", "\\hline", napisiSklopov_addtorow[[1]], "\\rowcolor[gray]{0.95}"))) - - cat('\\clearpage') -} -@ - -<>= -########## -##Tabela 4 -########## - -#V 5 seznamov shrani posamezne odg glede na vprasanje -odstVeljavni <- function(n, y){ - n <- as.vector((n / y)*100) - return (n) -} - -odgVeljavni2.L <- list() -odgVeljavni_skupaj <- list() -d4 <- list() -for (i in podatki_letnik){ - for (j in 1:5){ - odgVeljavni2.L[j] <- list(as.vector(sapply(odgVeljavni[[i]], function(x){ - length(x[x==j])}))) - } - odgSt[[i]] <- as.vector(odgSt[[i]]) - - #V 5 seznamov shrani odstotke glede na posamezno vprasanje - odgVeljavni2odst.L <- lapply(odgVeljavni2.L, function(x) odstVeljavni(x, y=odgSt[[i]])) - - for( k in 1:5){ - odgVeljavni2odst.L[[k]][odgVeljavni2odst.L[[k]] == "NaN"] <- 0 - } - - #Odstotke in stevilo repondentov glede na posamezno vprasanje zdruzimo z MAP - odgVeljavni2.Zd <- Map(cbind, odgVeljavni2.L, odgVeljavni2odst.L) - odgVeljavni_skupaj[[i]] <- odgVeljavni2.Zd - - kljucnaBeseda_d4 <- strtrim(vprZ[[i]]$kljucnaBeseda, 55) - d4[[i]] <- data.frame(kljucnaBeseda_d4, - st1=odgVeljavni_skupaj[[i]][[1]], - st2=odgVeljavni_skupaj[[i]][[2]], - st3=odgVeljavni_skupaj[[i]][[3]], - st4=odgVeljavni_skupaj[[i]][[4]], - st5=odgVeljavni_skupaj[[i]][[5]], - #odgVeljavni3.n.sk, - #odgVeljavni3.pct.sk, - vprZ[[i]]$sklop, - odgSklop_R[[i]], - odgMean[[i]], - stringsAsFactors = F) - - colnames(d4[[i]]) <- c("kljucnaBeseda","Prvi", "Prvi_odst", "Drugi", - "Drugi_odst", "Tretji", "Tretji_odst", - "Cetrti", "Cetrti_odst", "Peti", "Peti_odst", - "vprZ_sklop", "odgSklop_R", "odgMean") - d4[[i]] <- arrange(d4[[i]], desc(odgSklop_R), vprZ_sklop, desc(odgMean)) - d4[[i]] <- d4[[i]][,1:11] - colnames(d4[[i]]) <- c("\\textbf{Dejavniki po sklopih}", rep(c("n", "\\%"), 5)) -} - -# Odstotki in stevilo respondentov za 'Skupaj', cesar zaradi pomanjkanja prstora ne prikazemo -odgVeljavni3.n <- as.numeric() -odgVeljavni3.n.sk <- as.numeric() -odgVeljavni3.pct <- as.numeric() -odgVeljavni3.pct.sk <- as.numeric() - -for (i in (1:length(odgVeljavni))){ - for (j in 1:5){odgVeljavni3.n[j] <- odgVeljavni2.L[[j]][i]} - for (k in 1:5){odgVeljavni3.pct[k] <- odgVeljavni2odst.L[[k]][i]} - odgVeljavni3.n.sk[[i]] <- sum(odgVeljavni3.n) - odgVeljavni3.pct.sk[[i]] <- sum(odgVeljavni3.pct) -} - -# Funkcija kateri kot argument podamo kratko ime dejavnika -# Izpise alternirajoce (vsako drugo vrstico) obarvane odprte odgovore -odprtiOdg_f <- function(l, x, y, newpage=0, izpis=1, izpis_stavka=0){ - if (izpis == 1){ - #Filter neveljavnih odgovorov - pw1 <- veljavneEnote[[l]][x][veljavneEnote[[l]][x] != "-1: Ni odgovoril" & - veljavneEnote[[l]][x] != "-1" & - veljavneEnote[[l]][x] != "-3: Prekinjeno" & - veljavneEnote[[l]][x] != "-3" & - veljavneEnote[[l]][x] != "/" & - veljavneEnote[[l]][x] != "" & - veljavneEnote[[l]][x] != "" & - veljavneEnote[[l]][x] != "Ne" & - veljavneEnote[[l]][x] != "¸/" & - veljavneEnote[[l]][x] != "-" & - veljavneEnote[[l]][x] != "ne" & - veljavneEnote[[l]][x] != "#ERROR!"] - - # Preveri ali je za izbran dejavnik sploh kaksen odgovor - # Izkljucimo odprte odg. krajse od 4 mest. - if (length(pw1) != 0){ - pw1 <- pw1[nchar(pw1)> 4] - - - # nato se spet lahko zgodi, da ni odgovorov - if (length(pw1) != 0){ - #Pomembno za delovanje komentarjev z narekovaji - pw1 <- stri_unescape_unicode(pw1) - pw2 <- sapply(latexTranslate(na.omit(pw1)), function(x){paste0("\\textit{",x,"}")}) - # Za vsakim (razen za zadnjim) odgovorom doda novo vrstico - # Drugace novo crto v primeru polne strani narise na naslednji strani - # Pred vsakim odg. doda piko (\\tabitem): Izkljuceno - # pw2 <- paste0("\\tabitem ",pw2, "\\\\") - pw2 <- gsub("", "", pw2) - #pw2 <- c(paste0(pw2[1:(length(pw2)-1)], "\\\\"), pw2[[length(pw2)]]) - pw2 <- data.frame(pw2) - - - - # Nastavimo alternirajoce barvanje vrstic (ce je dolzina vsaj 2) - addtorow <- list() - if (nrow(pw2) > 1){ - addtorow$pos <- list(0, seq(1, (nrow(pw2)-1), by = 2)) - addtorow$command <- c("\\\\[-0.4cm] ","\\rowcolor[gray]{0.95}") - - }else if (nrow(pw2) == 1){ - # Ce je tocno en odprti odgovor za izbran dejavnik - addtorow$pos <- list(0, 1) - addtorow$command <- c("\\\\[-0.4cm] ", "") - } - # Izbrisemo ime stolpca - colnames(pw2) <- "" - - print(xtable(pw2, align=c("p", "p{0.95\\textwidth}"), caption=y), - include.rownames = FALSE, - add.to.row = addtorow, - tabular.environment = "longtable", - floating = FALSE, - caption.placement = 'top', - sanitize.text.function = function (x){x}) - if (newpage ==1){ - cat('\\newpage') - } - }else{ - if (izpis_stavka ==1){ - cat('Študenti na to vprašanje niso podali odgovorov.') - } - } - } - } -} - -labT4 <- c("\\small \\makecell{Sploh\\\\se ne\\\\strinjam\\\\(1)}", - "\\small \\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam\\\\(2)}", - "\\small \\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam\\\\(3)}", - "\\small \\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam\\\\(4)}", - "\\small \\makecell{Popolnoma\\\\se\\\\strinjam\\\\(5)}") - -if (length(podatki_letnik) == 2 || podatki_letnik == 1){ - addtorow_frek <- list() - addtorow_frek$pos <- list(-1, -1, d4_R2_output[[1]]) - - #Dodamo multicolumns in črto nad njimi - addtorow_frek$command <- c("\\hline", paste0(paste0('& \\multicolumn{2}{c}{ \\textbf{', labT4, '}}', collapse=''), - - "\\\\ - \\hline - \\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% - \\endfirsthead - - \\caption{Frekvenčna porazdelitev enot za dejavnike po sklopih (nadaljevanje)} \\\\ \\hline - - & \\multicolumn{2}{c}{ \\textbf{\\makecell{Sploh\\\\se ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Popolnoma\\\\se\\\\strinjam}}} \\\\ \\hline - - \\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% \\\\ \\hline - \\endhead"), - - "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - addtorow2_frek <- list() - addtorow2_frek$pos <- list(0, - mesta_addtorow[[1]][2], - mesta_addtorow[[1]][3], - mesta_addtorow[[1]][4], - mesta_addtorow[[1]][5], - d4_R2_output[[1]]) - addtorow2_frek$command <- c(napisiSklopov_addtorow_frekvencna[[1]], "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - - cat(paste0('\\newpage \\begin{longtable}{p{5.5cm}cccccccccc} - \\caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\\\ ')) - cat(c("\\hline", addtorow_frek$command[2])) - - print(xtable(d4[[1]], - align=c("l", "p{5.5cm}", rep("c", 10)), - caption = paste0("Frekvenčna porazdelitev enot za dejavnike po sklopih"), - digits=0), - include.rownames=FALSE, - include.colnames=F, - only.contents = T, - sanitize.text.function = function (x){x}, - add.to.row = addtorow2_frek, - hline.after = NULL - ) - cat("\\hline \\end{longtable} \\newpage") - -} -@ - -<>= -# Izracuni odgovorov tipa - 4 (Da / Ne) -# Vprasanja tipa 4 - Q8, Q9, Q14, Q17, Q22, Q36a-Q36g - -########## Z BRISANJEM ODVEČNEGA KONČAL TU ###################### -odg.tip4.ls_output <- list() -odg.tip4.pie_ls_output <- list() - -for (i in podatki_letnik){ -vprZ.tip4 <- subset(pomoznaT[[i]], pomoznaT[[i]]$tip==4) - -odg.tip4.ls <- list() -odg.tip4.pie_ls <- list() - -for (j in 1:(nrow(vprZ.tip4))){ - kratkoIme.tip4 <- vprZ.tip4$kratkoIme[[j]] - dolgoIme.tip4 <- vprZ.tip4$dolgoIme[[j]] - odg.tip4 <- veljavneEnote[[i]][kratkoIme.tip4] - - # Zajamemo in prestejemo samo veljavne odgovore, torej da in ne - odg.Da.len <- length(odg.tip4[odg.tip4==1]) - odg.Ne.len <- length(odg.tip4[odg.tip4==2]) - odg.Sk.len <- odg.Da.len + odg.Ne.len - - # Izracun odstotkov. - odg.Da.pct <- (odg.Da.len / odg.Sk.len) * 100 - odg.Ne.pct <- (odg.Ne.len / odg.Sk.len) * 100 - odg.Sk.pct <- (odg.Da.pct + odg.Ne.pct) - - # Podatke shranjujemo v seznam - odg.tip4.ls[[j]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, odg.Da.len, - odg.Da.pct, odg.Ne.len, odg.Ne.pct, - odg.Sk.len, odg.Sk.pct) - - odg.tip4.pie_ls[[j]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, - rbind(odg.Ne.len, odg.Da.len), - rbind(odg.Ne.pct, odg.Da.pct), c("Ne", "Da")) - - -} -odg.tip4.ls <- do.call(rbind, odg.tip4.ls) -odg.tip4.pie_ls <- do.call(rbind, odg.tip4.pie_ls) -# -11 je umetno stevilo, ki ga pripisemo zaradi zaokrozevanja - -odg.tip4.ls[odg.tip4.ls == "NaN"] <- -11 -odg.tip4.ls[odg.tip4.ls == "Inf"] <- -11 -odg.tip4.ls[is.na(odg.tip4.ls)] <- -11 - -odg.tip4.pie_ls[odg.tip4.pie_ls == "NaN"] <- -11 -odg.tip4.pie_ls[odg.tip4.pie_ls == "Inf"] <- -11 -odg.tip4.pie_ls[is.na(odg.tip4.pie_ls)] <- -11 -# Odstranimo kratko ime in seznam spremenimo v df, ki je bolj primeren -# za izpis tabel z 'xtable' -odg.tip4.df <- data.frame(odg.tip4.ls, stringsAsFactors = F)[,-1] - -rownames(odg.tip4.pie_ls) <- NULL -odg.tip4.pie_df <- data.frame(odg.tip4.pie_ls, stringsAsFactors = F) - -# Popravi: kaj so ta števila? -# 3, 5, 7 -# Pomembno, da pred tem elemente pretvorimo iz stringa v numeric -# Drugace zaokrozevanje ne dela -for (k in c(3,5,7)){ -odg.tip4.df[k] <- sapply(odg.tip4.df[[k]], function(x){formatC2(as.numeric(x), digits=1, format = 'f')}) -} -odg.tip4.pie_df[[4]] <- sapply(odg.tip4.pie_df[[4]], function(x){formatC2(as.numeric(x), digits=0, format = 'f')}) -# Odstotkom, ki jih bomo izpisali v piechartu dodamo znak % -odg.tip4.pie_df[[6]] <- paste0(odg.tip4.pie_df[[4]], "%") -odg.tip4.pie_df[[7]] <- paste0(odg.tip4.pie_df[[4]], "\\%") - -# -11 nadomestimo z (.) -odg.tip4.df[odg.tip4.df == "-11.0"] <- "." -colnames(odg.tip4.df) <- c("Dejavnik", "Da", "\\%", "Ne", "\\%", "Skupaj", "\\%") - -odg.tip4.ls_output[[i]] <- odg.tip4.df -odg.tip4.pie_ls_output[[i]] <- odg.tip4.pie_df -} - -@ - -<>= - -odg.tip5_ls_output <- list() -vsiNapisi.tip5 <- list(c("Ne, namenim ga premalo, želel/a bi si več časa nameniti za svoj doktorski študij in raziskovalno delo", - "Ne, namenim ga preveč, želel/a bi si manj časa nameniti za svoj doktorski študij in raziskovalno delo", - "Da, namenim ravno prav časa."), - c("ne, prekratko", "ne, predolgo", "ne vem / ne morem oceniti", - "da, ravno prav"), - c("predavanja", "konzultacije", "kombinacija obojega"), - c("Sem mladi raziskovalec / mlada raziskovalka", - "Sem mladi raziskovalec/ mlada raziskovalka v gospodarstvu,", - "Sem doktorski študent/doktorska študentka, ki se financira sam/a,", - "Sem doktorski študent/doktorska študentka, ki mi šolnino plačuje delodajalec,", - "Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"), - c(" Študij sem izbral/a, ker želim imeti akademsko kariero, "), - c(" Študij sem izbral/a zaradi želje po osebnem razvoju in napredku, "), c(" Študij sem izbral/a, ker menim, da je dobro imeti doktorsko izobrazbo, "), - c(" Študij sem izbral/a, ker menim, da mi bo pridobljeno znanje koristilo na mojem delovnem mestu, "), c(" Študij sem izbral/a, ker nisem dobil/a zaposlitve, "), c("Študij sem izbral/a, da bi lahko napredoval/a na delovnem mestu."), c("Drugo:"), - c("bi se odločil/a enako", "bi se vpisal/a drugam", - "se ne bi odločil/a za doktorski študij", "ne vem"), - c("na drugi program na UL", "na drugi visokošolski zavod v RS", - "v tujino")) - -for (i in podatki_letnik){ -vprZ.tip5 <- subset(pomoznaT[[i]], pomoznaT[[i]]$tip==5) -odg.tip5_ls.temp <- list() - - -if (i==1){ - Q36.n <- veljavneEnote[[i]][c("Q35a", "Q35b", "Q35c", "Q35d", "Q35e", "Q35f", "Q35g")] - Q36.n <- length(Q36.n[Q36.n > 0]) - vsiNapisi.t5_2 <- vsiNapisi.tip5[-2] - -}else if (i==2){ - Q36.n <- veljavneEnote[[i]][c("Q36a", "Q36b", "Q36c", "Q36d", "Q36e", "Q36f", "Q36g")] - Q36.n <- length(Q36.n[Q36.n > 0]) - vsiNapisi.t5_2 <- vsiNapisi.tip5 -} - - -for (j in 1:nrow(vprZ.tip5)){ - kratkoIme.tip5 <- vprZ.tip5$kratkoIme[j] - dolgoIme.tip5 <- vprZ.tip5$dolgoIme[j] - odg.tip5 <- veljavneEnote[[i]][kratkoIme.tip5] - odg.tip5 <- as.numeric(odg.tip5[odg.tip5>0]) - odg.tip5.sk <- length(odg.tip5) - - # Za odgovore Q36: ZAKAJ? Pri ostalih izracunavamo po posameznem vprasanju - # Za vecjo jasnost poglej: vprZ.tip5 - # Tu jih sestejemo - if(i == 1){ - if (j>3 & j<11){ - odg.tip5.sk <- Q36.n - } - } - else if (i == 2){ - if (j>4 & j<12){ - odg.tip5.sk <- Q36.n - } - } - - mozniOdg.tip5 <- c(1:length(vsiNapisi.t5_2[[j]])) - tip5_df <- data.frame(mozniOdg.tip5, vsiNapisi.t5_2[[j]], stringsAsFactors = F) - - - odg.tip5.len <- list() - odg.tip5.pct <- list() - - for(k in 1:length(vsiNapisi.t5_2[[j]])){ - odg.tip5.len[[k]] <- length(odg.tip5[odg.tip5 == k]) - odg.tip5.pct[[k]] <- (odg.tip5.len[[k]]/odg.tip5.sk)*100 - } - - tip5_df$n <- as.numeric(odg.tip5.len) - # Zaradi vprasanja Q36 moramo dodati tudi odstotke, ki jih nismo okrajsali - # saj je v nasprotnem primeru sestevek lahko razlicen od nic npr. 100.1 - tip5_df$pct <- formatC2(as.numeric(odg.tip5.pct), digits = 0, format = "f") - tip5_df$pct_temp <- as.numeric(odg.tip5.pct) - - if(i == 1){ - if (j<=3 | j>=11){ - tip5_df[nrow(tip5_df)+1, ] <- c("", "Skupaj", sum(tip5_df$n), - formatC2(sum(as.numeric(odg.tip5.pct)), - digits = 0, format = "f"), "")} - }else if (i == 2){ - if (j<=4 | j >=12){ - tip5_df[nrow(tip5_df)+1, ] <- c("", "Skupaj", sum(tip5_df$n), - formatC2(sum(as.numeric(odg.tip5.pct)), - digits = 0, format = "f"), "") - # Za odgovore Q36, dodamo vrstico na drugacen nacin, saj je tu 6 - # odg., vsak v svoji spremenljivki, pri drugih vprasanjih pa je - # ena spremenljivka in vec odgovorov. - } - } - odg.tip5_ls.temp[[j]] <- tip5_df - } - - -odg.tip5_ls <- do.call(rbind, odg.tip5_ls.temp) -odg.tip5_ls[odg.tip5_ls == "NaN"] <- "0.0" - -# Odstranimo prvi stolpec (mozniOdg.tip5) -# in stolpec z neokrajsanimi odstotki -odg.tip5_ls <- odg.tip5_ls[, -c(1,5)] -names(odg.tip5_ls) <- c("Dejavniki", "n", "\\%") - -odg.tip5_ls_output[[i]] <- odg.tip5_ls -} -@ -\clearpage - -<>= - -# V vrstaProg so shranjene stopnje prog. -# length(vrstaProg)-2, zato, da odstejemo prvega in zadnjega (skupaj) -# ki imata drugacno poravnavo -# digits: -# length(vrstaProg)+1, zato, ker poleg povprecij tudi sd zaokrozimo na eno dec. -# sanitize: pomembno, da odebeli glavo - -# z add to row dolocimo multicolumn -addtorow_po_sklopih <- vector('list', length(podatki_letnik)) -for (i in podatki_letnik){ - addtorow_po_sklopih[[i]]$pos <- list(-1) - if(length(vrstaProg_output[[1]])>1){ - addtorow_po_sklopih[[i]]$command <- c(paste0("\\hline \\hline ", paste0('\\multicolumn{', - (length(vrstaProg_output[[i]]) + 4), - '}{r}{\\textbf{Povprečja}}', - collapse=''), "\\\\")) - }else{ - addtorow_po_sklopih[[i]]$command <- c(paste0("\\hline \\hline ", paste0('&&&&& \\textbf{Povprečje}', collapse=''), "\\\\")) - } -} - - -if (length(podatki_letnik) == 2 || podatki_letnik == 1){ - cat('\\subsection{Podrobna analiza vseh spremenljivk po sklopih} - V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavje 6), vendar gre vsakič za nekoliko drugačen nivo analize.') - - cat('\\subsubsection{Infrastruktura in urniki}') - -# Dolocimo podatke za tabelo -#podatki -# Dolocimo dejavnike in caption za izris grafov -dejavniki <- rbind(prazen_df_output[[1]]$Q5a, prazen_df_output[[1]]$Q5b, - prazen_df_output[[1]]$Q5c,prazen_df_output[[1]]$Q5d, - prazen_df_output[[1]]$Q5e, prazen_df_output[[1]]$Q5f) -if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - -d3.1 <- sklopi_po_programih_oba[[1]][1:6,] -print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Infrastruktura in urniki - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[1]], - #booktabs = TRUE, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - -graf_program_f(dejavniki, "Infrastruktura in urniki - dejavniki (grafični prikaz povprečij) po programih", 1, 1) -}else{cat("Študenti na to vprašanje niso podali odgovorov.")} -} - -odg.tip6 <- list() -mean.odg6 <- list() -sd.odg6 <- list() -sum.odg6 <- list() -pct.odg6 <- list() - -poProgramih_ure_temp <- list() -poProgramih_ure <- list() -poProgramih_ure_output <- list() -poProgramih_ure_ls <- list() -letnik_ure <- list() -vrstaProg_ure <- list() - -h2 <- list() -stevilo_enot_ure <- list() - -for (i in podatki_letnik){ - - vprZ.tip6 <- subset(pomoznaT[[i]], pomoznaT[[i]]$tip==6) - odg.tip6[[i]] <- veljavneEnote[[i]][vprZ.tip6$kratkoIme] - - # Za tabele v prilogi (po letnikih in programih): - for (j in 1:length(vrstaProg[[i]])){ - # Stevilo porabljenih ur - # Pogoji, ce vrednosti ni - if (nrow(subset(veljavneEnote[[i]], idprog == imena_output[[i]][j], - select = "Q6")) > 0){ - - poProgramih_ure_temp[[j]] <- subset(veljavneEnote[[i]], - idprog == imena_output[[i]][j], - select = "Q6") - - vrstaProg_ure[[j]] <- as.character(vrstaProg[[i]][j]) - #poProgramih_ure[[j]] <- sum(as.numeric(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0]))/length(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0]) - poProgramih_ure[[j]] <- mean(as.numeric(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0])) - letnik_ure[[j]] <- letnik_besedi[i] - - } - } - - - poProgramih_ure_ls[[i]] <- data.frame(as.character(vrstaProg_ure), - as.character(letnik_ure), - formatC2(as.numeric(poProgramih_ure), digits=0, - format = 'f'), - stringsAsFactors = F) - - # Pustimo le vrednosti vecje od 0 - odg.tip6_Q6 <- as.numeric(odg.tip6[[i]]$Q6[odg.tip6[[i]]$Q6 > 0]) - if (length(odg.tip6_Q6) > 0){ - - mean.odg6[[i]] <- formatC2(mean(odg.tip6_Q6), digits = 0, format = 'f') - if (length(odg.tip6_Q6) > 1){ - sd.odg6[[i]] <- formatC2(sd(odg.tip6_Q6), digits = 0, format = 'f') - }else{sd.odg6[[i]] <- "."} - sum.odg6[[i]] <- formatC2(sum(odg.tip6_Q6), digits = 0, format = 'f') - - - h2[[i]] <- table(odg.tip6_Q6) - h2[[i]] <- data.frame(h2[[i]], stringsAsFactors = FALSE) - - vrsticaSkupaj <- data.frame(sum.odg6[[i]], sum(h2[[i]]$Freq), stringsAsFactors = F) - colnames(vrsticaSkupaj) <- colnames(h2[[i]]) - h2[[i]] <- rbind(h2[[i]], vrsticaSkupaj) - - h2[[i]]$pct <- c(formatC2(((h2[[i]]$Freq / length(odg.tip6_Q6)) * 100), - digits = 0, format = 'f')) - - h2[[i]] <- cbind(data.frame(c(rep("", (nrow(h2[[i]])-1)), "Skupaj"), - stringsAsFactors = F), h2[[i]]) - - vrsticaPovprecje <- data.frame("Povprečje", mean.odg6[[i]], sum(h2[[i]]$Freq[-nrow(h2[[i]])]), "100", stringsAsFactors = F) - colnames(vrsticaPovprecje) <- colnames(h2[[i]]) - vrsticaSd <- data.frame("Std. Odkl.", sd.odg6[[i]], sum(h2[[i]]$Freq[-nrow(h2[[i]])]), "100", stringsAsFactors = F) - colnames(vrsticaSd) <- colnames(h2[[i]]) - - h2[[i]] <- rbind(h2[[i]], vrsticaPovprecje) - h2[[i]] <- rbind(h2[[i]], vrsticaSd) - - h2[[i]][h2[[i]] == "NA" | h2[[i]] == "NaN"] <- "." - } -} - -################# -## Stevilo tedensko porabljenih ur - po programih in po letnikih -################# -ure_tedensko_po_prog_df <- list() -ure_tedensko_po_prog_df_out <- vector('list', length(podatki)) -mean_tedenske_ure <- as.numeric() -sd_tedenske_ure <- as.numeric() - -for (i in podatki_letnik){ - stevec <- 0 - poLetniku_tedenske_ure <- as.numeric(veljavneEnote[[i]]$Q6[veljavneEnote[[i]]$Q6 > 0]) - - for(tip_prog in tip_programa_veljavni[[i]]$idprog_uq_veljavni){ - stevec <- stevec + 1 - ure_tedensko_po_prog_vector <- as.numeric(veljavneEnote[[i]]$Q6[veljavneEnote[[i]]$Q6 > 0 & veljavneEnote[[i]]$idprog == tip_prog]) - ime_programa_ure <- tip_programa_veljavni[[i]]$naziv[stevec] - - if (length(ure_tedensko_po_prog_vector) != 0){ - ure_tedensko_po_prog <- data.frame(table(ure_tedensko_po_prog_vector), stringsAsFactors = F) - ure_tedensko_po_prog_df[[stevec]] <- cbind(rep(ime_programa_ure, nrow(ure_tedensko_po_prog)), ure_tedensko_po_prog) - - ure_tedensko_po_prog_df_out[[i]] <- do.call(rbind, ure_tedensko_po_prog_df) - # Dodamo stolpec 'odstotki' - ure_tedensko_po_prog_df_out[[i]]$pct <- c(formatC2(((ure_tedensko_po_prog_df_out[[i]]$Freq / sum(as.numeric(ure_tedensko_po_prog_df_out[[i]]$Freq))) * 100),digits = 0, format = 'f')) - - if (nrow(ure_tedensko_po_prog_df_out[[i]]) > 1){ - # Dodamo vrstico 'skupaj' - # Pomembno, ker, ima df, zaradi 'table', faktorje in rbind ne dela - ure_tedensko_po_prog_df_out[[i]] <- data.frame(lapply(ure_tedensko_po_prog_df_out[[i]], as.character), stringsAsFactors = F) - ure_tedensko_po_prog_df_out[[i]] <- rbind(ure_tedensko_po_prog_df_out[[i]], c("Skupaj", sum(ure_tedensko_po_prog_vector), sum(as.numeric(ure_tedensko_po_prog_df_out[[i]]$Freq)), 100)) - } - # Dodamo vrstici 'Standardni odklon in Povprečje' - if (nrow(ure_tedensko_po_prog_df_out[[i]]) > 2){ - mean_tedenske_ure[i] <- formatC2(mean(poLetniku_tedenske_ure), digits = 0, format = 'f') - sd_tedenske_ure[i] <- formatC2(sd(poLetniku_tedenske_ure), digits = 0, format = 'f') - ure_tedensko_po_prog_df_out[[i]] <- rbind(ure_tedensko_po_prog_df_out[[i]], c("Povprečje", mean_tedenske_ure[i], ".", "."), c("Standardni odklon", sd_tedenske_ure[i], ".", ".")) - } - } - } -} - -###Opisne statistike glede na program in dolocena vprasanja - -sy.mean_output <- list() -sy.length_output <- list() -skupaj.mean_output <- list() -skupaj.length_output <- list() - -# Enote razvrstimo glede na programe - -odg_gledeProgram <- list() -for (i in podatki_letnik){ -odg.GP <- list() -for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq))){ - # Zakaj -length(veljavneEnote[[i]]) -odg.GP[j] <- list(filter(veljavneEnote[[i]][-length(veljavneEnote[[i]])], idprog == tip_programa_veljavni[[i]]$idprog_uq[[j]])) -} - -# s subset -# veljavneEnote[[1]][veljavneEnote[[1]]$program == tip_programa$idprog_uq_veljavni[[i]]] -# Veljavni odg. glede na program -# Veljavni odgovori za enote razvrščene po programu -# ali odgovori za vsa vprasanja glede na program -odgGPV <- vector(mode="list", length = length(odg.GP)) -for (j in (1:length(odg.GP))){ - for (k in (1:length(vprZ[[i]]$kratkoIme))){ - jj <- vprZ[[i]]$kratkoIme[k] - odgGPV[[j]][jj] <- subset(odg.GP[[j]][jj], odg.GP[[j]][jj] > 0) - } -} - -# Odgovore spremenimo iz stringov v numeric -odgGPV <- lapply(odgGPV, function(x){lapply(x, function(y){as.numeric(y)})}) - - -# Podatke moramo najprej spremeniti v numeric, ta funkcija nam pri majhnem številu #odgovorov na posamezni program in vprasanje (2), izpise rezultate v napacni obliki in nadaljnji izracuni ne delujejo - -# povprecja, dolzine, ... za vsa vprasanja glede na program - -sy.mean <- lapply(odgGPV, function(x) sapply(x, mean)) -sy.length <- lapply(odgGPV, function(x) sapply(x, function(x) length(x))) -#sy.sd <- lapply(odgGPV, function(x) sapply(x, sd)) - -# Povprečja, dolžine, za vse programe določenega letnika -sy.mean_output[[i]] <- sy.mean -sy.length_output[[i]] <- sy.length - -### Izračuni za skupaj #se nadaljuje v f_tabele priloga - -#odgVeljavni_skupaj_df <- rbind(odgVeljavni[[1]], odgVeljavni[[2]]) -skupaj.mean <- lapply(odgVeljavni[[i]], mean) -skupaj.length <- lapply(odgVeljavni[[i]], length) - -#skupaj.sd <- lapply(odgVeljavni, sd) - -skupaj.mean_output[[i]] <- skupaj.mean -skupaj.length_output[[i]] <- skupaj.length - - -# Izracuni 'izbirnih predmetov' - po programih in po letnikih. (Podatki) -odg_gledeProgram[[i]] <- odg.GP -} - -izbirni_list_letnik <- list() -izbirni_list_vprasanja <- list() -izbirni_list_program <- list() - -disertacija_poProgramih <- list() -triletno_poProgramih <- list() - -nacin_poProgramih <- list() -nacin_poLetniku <- list() - -razlog_poProgramih <- list() -razlog_list_vprasanja <- list() -razlog_poLetniku <- list() - -cas_poProgramih <- list() -cas_poLetniku <- list() - -oblika_poProgramih <- list() -oblika_poLetniku <- list() - -danes_odlocali_poProgramih <- list() -danes_odlocali_poLetniku <- list() - -kam_vpisali_poProgramih <- list() -kam_vpisali_poLetniku <- list() - -# Izracuni za 'izbirni predmeti' po letniku in po programu: -# Vprasanja v istem vrstnem redu, kot so spodaj imena spremenljivk - -for(i in 1:length(odg_gledeProgram)){ # po letnikih - for (j in 1:length(odg_gledeProgram[[i]])){ # po programih - if (nchar(unique(odg_gledeProgram[[i]][[j]]$program))>30){ - imeProg <- paste0(strtrim(unique(odg_gledeProgram[[i]][[j]]$program),30), ".") - } - else{ - imeProg <- unique(odg_gledeProgram[[i]][[j]]$program) - } - - # V bazi prvih letnikov so nekoliko drugacna imena stolpcev - if (i == 1){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q9", "Q12", "Q19", "Q22")] - oblika <- odg_gledeProgram[[i]][[j]][c("Q16")] - danes_odlocali <- odg_gledeProgram[[i]][[j]][c("Q36")] - kam_vpisali <- odg_gledeProgram[[i]][[j]][c("Q37")] - - # Doktorska disertacija: - disertacija_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q27")] - disertacija_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - Da = length(disertacija_poProgramih[[j]][disertacija_poProgramih[[j]] == 1]), - Ne = length(disertacija_poProgramih[[j]][disertacija_poProgramih[[j]] == 2]), - stringsAsFactors = F) - - # Kako studirate?: - nacin <- odg_gledeProgram[[i]][[j]][c("Q34")] - nacin_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - a = length(nacin[nacin == 1]), - b = length(nacin[nacin == 2]), - c = length(nacin[nacin == 3]), - d = length(nacin[nacin == 4]), - e = length(nacin[nacin == 5]), - stringsAsFactors = F) - # Zakaj ste se odlocili za doktorski studij? - razlog <- odg_gledeProgram[[i]][[j]][c("Q35a", "Q35b", "Q35c", "Q35d", "Q35e", "Q35f", "Q35g")] - razlog_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - a = length(razlog$Q35a[razlog$Q35a == 1]), - b = length(razlog$Q35b[razlog$Q35b == 1]), - c = length(razlog$Q35c[razlog$Q35c == 1]), - d = length(razlog$Q35d[razlog$Q35d == 1]), - e = length(razlog$Q35e[razlog$Q35e == 1]), - f = length(razlog$Q35f[razlog$Q35f == 1]), - g = length(razlog$Q35g[razlog$Q35g == 1]), - stringsAsFactors = F) - } else if (i == 2){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q10", "Q13", "Q20", "Q23")] - oblika <- odg_gledeProgram[[i]][[j]][c("Q17")] - danes_odlocali <- odg_gledeProgram[[i]][[j]][c("Q37")] - kam_vpisali <- odg_gledeProgram[[i]][[j]][c("Q38")] - # Triletno trajanje: - triletno_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q8")] - triletno_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - prekratko = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 1]), - predolgo = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 2]), - nevem = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 3]), - da = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 4]), - stringsAsFactors = F) - - # Kako studirate?: - nacin <- odg_gledeProgram[[i]][[j]][c("Q35")] - nacin_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - a = length(nacin[nacin == 1]), - b = length(nacin[nacin == 2]), - c = length(nacin[nacin == 3]), - d = length(nacin[nacin == 4]), - e = length(nacin[nacin == 5]), - stringsAsFactors = F) - # Zakaj ste se odlocili za doktorski studij? - razlog <- odg_gledeProgram[[i]][[j]][c("Q36a", "Q36b", "Q36c", "Q36d", "Q36e", "Q36f", "Q36g")] - razlog_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - a = length(razlog$Q36a[razlog$Q36a == 1]), - b = length(razlog$Q36b[razlog$Q36b == 1]), - c = length(razlog$Q36c[razlog$Q36c == 1]), - d = length(razlog$Q36d[razlog$Q36d == 1]), - e = length(razlog$Q36e[razlog$Q36e == 1]), - f = length(razlog$Q36f[razlog$Q36f == 1]), - g = length(razlog$Q36g[razlog$Q36g == 1]), - #Vprasanje = l, - stringsAsFactors = F) - } - - for (k in 1:4){ - izbirni_daNe <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - Da = length(izbirni_poProgramih[,k][izbirni_poProgramih[,k] == 1]), - Ne = length(izbirni_poProgramih[,k][izbirni_poProgramih[,k] == 2]), - Vprasanje = k, - stringsAsFactors = F) - izbirni_list_vprasanja[[k]] <- izbirni_daNe - } - izbirni_list_program[[j]] <- do.call(rbind, izbirni_list_vprasanja) - # Ali se vam zdi cas, ki ga namenite dr. studiju ustrezen? (Q7) - # Doktorska disertacija_current: - cas_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q7")] - cas_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - Da = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 3]), - Ne_prevec = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 2]), - Ne_premalo = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 1]), - stringsAsFactors = F) - - oblika_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - Predavanja = length(oblika[oblika == 1]), - Konzultacije = length(oblika[oblika == 2]), - Kombinacija_obojega = length(oblika[oblika == 3]), - stringsAsFactors = F) - - danes_odlocali_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - enako = length(danes_odlocali[danes_odlocali == 1]), - drugam = length(danes_odlocali[danes_odlocali == 2]), - nebi = length(danes_odlocali[danes_odlocali == 3]), - nevem = length(danes_odlocali[danes_odlocali == 4]), - stringsAsFactors = F) - - kam_vpisali_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - drug = length(kam_vpisali[kam_vpisali == 1]), - vs = length(kam_vpisali[kam_vpisali == 2]), - tujino = length(kam_vpisali[kam_vpisali == 3]), - stringsAsFactors = F) - } - izbirni_list_letnik[[i]] <- do.call(rbind, izbirni_list_program) - razlog_poLetniku[[i]] <- do.call(rbind, razlog_poProgramih) - cas_poLetniku[[i]] <- do.call(rbind, cas_poProgramih) - oblika_poLetniku[[i]] <- do.call(rbind, oblika_poProgramih) - danes_odlocali_poLetniku[[i]] <- do.call(rbind, danes_odlocali_poProgramih) - kam_vpisali_poLetniku[[i]] <- do.call(rbind, kam_vpisali_poProgramih) - nacin_poLetniku[[i]] <- do.call(rbind, nacin_poProgramih) - - # Vprasanji sta zastavljeni le v eni izmed obeh anket - # Doktorska disertacija - disertacija_poProgramih_out <- do.call(rbind, disertacija_poProgramih) - # Triletno trajanje - triletno_poProgramih_out <- do.call(rbind, triletno_poProgramih) -} - -izbirni_predmeti <- do.call(rbind, izbirni_list_letnik) -razlog_out <- do.call(rbind, razlog_poLetniku) -nacin_out <- do.call(rbind, nacin_poLetniku) -cas_out <- do.call(rbind, cas_poLetniku) - -# Zaradi drugacnega vrstnega reda, pri prikazu tabele -cas_out <- cas_out[,c(1,2,3,5,4)] - -danes_odlocali_out <- do.call(rbind, danes_odlocali_poLetniku) -kam_vpisali_out <- do.call(rbind, kam_vpisali_poLetniku) -oblika_out <- do.call(rbind, oblika_poLetniku) - -# Funkcija, ki seznamom doda odstotke -seznami_f <- function(seznam, dodajSkupaj = 0){ - odstotki_ls <- list() - skupaj_ls <- list() - odstotki_temp <- vector('character', (ncol(seznam)-2)) - zacetno_zaporedje <- 3:ncol(seznam) - if (length(seznam) !=0){ - # 1) odstotke po vrsticah - for (i in 1:nrow(seznam)){ - sestevek_PP <- sum(seznam[i,c(3:ncol(seznam))]) - for (j in 1:(ncol(seznam)-2)){ - odstotki_temp[j] <- formatC2((seznam[i, j+2]/sestevek_PP)*100, 0, 'f') - } - odstotki_ls[[i]] <- odstotki_temp - skupaj_ls[[i]] <- formatC2(sestevek_PP, 0, 'f') - } - seznam <- cbind(seznam, do.call(rbind, odstotki_ls)) - # Seznam uredimo - koncno_zaporedje <- as.vector(rbind(zacetno_zaporedje, - seq(max(zacetno_zaporedje)+1, - (max(zacetno_zaporedje)-1)*2 - , 1))) - - seznam <- seznam[,c(1,2,koncno_zaporedje)] - # Drugace pri zamenjava ne dela in vrne opozorilo - seznam[] <- lapply(seznam, as.character) - seznam[seznam == "NaN" | seznam == "NA"] <- "." - if (dodajSkupaj == 1){ - seznam <- cbind(seznam, do.call(rbind, skupaj_ls), "100") - } - } - return(seznam) -} - -seznami_f2 <- function(seznam, nacin=0, dodajSkupaj = 0){ - #odstotki_ls <- vector('list', nrow(seznam)) - odstotki_ls <- list() - skupaj_ls <- list() - zacetno_zaporedje <- 3:ncol(seznam) - if (nacin == 0){ - odstotki_temp <- vector('character', (ncol(seznam)-2)) - if (length(seznam) !=0){ - # 1) odstotki po vrsticah - for (i in 1:nrow(seznam)){ - sestevek_PP <- sum(seznam[i,c(3:ncol(seznam))]) - for (j in 1:(ncol(seznam)-2)){ - odstotki_temp[j] <- formatC2((seznam[i, j+2]/sestevek_PP)*100, 0, 'f') - } - odstotki_ls[[i]] <- odstotki_temp - skupaj_ls[[i]] <- formatC2(sestevek_PP, 0, 'f') - } - seznam <- cbind(seznam, do.call(rbind, odstotki_ls)) - } - } - # 2) odstotki po stolpcih - if (nacin == 1){ - if (length(seznam) !=0){ - odstotki_temp <- vector('character', (nrow(seznam))) - for (i in 3:ncol(seznam)){ - sestevek_PP <- sum(seznam[,i]) - for (j in 1:(nrow(seznam))){ - odstotki_temp[j] <- formatC2((seznam[j, i]/sestevek_PP)*100, 0, 'f') - } - odstotki_ls[[i]] <- odstotki_temp - skupaj_ls[[i]] <- formatC2(sestevek_PP, 0, 'f') - } - - seznam <- cbind(seznam, do.call(cbind, odstotki_ls)) - } - } - # Seznam uredimo - koncno_zaporedje <- as.vector(rbind(zacetno_zaporedje, - seq(max(zacetno_zaporedje)+1, - (max(zacetno_zaporedje)-1)*2 - , 1))) - - seznam <- seznam[,c(1,2,koncno_zaporedje)] - # Drugace pri zamenjava ne dela in vrne opozorilo - seznam[] <- lapply(seznam, as.character) - seznam[seznam == "NaN" | seznam == "NA"] <- "." - sestevek_odstotkov <- odstotki_ls[3:length(odstotki_ls)] - sestevek_odstotkov <- sapply(sestevek_odstotkov, function(x){ - if (is.nan(sum(as.numeric(x)))){ - x <- "." - }else{x <- "100"} - }) - - if (dodajSkupaj == 1 & nacin== 0){ - seznam <- cbind(seznam, do.call(rbind, skupaj_ls), "100") - seznam[] <- lapply(seznam, as.character) - - }else if (dodajSkupaj == 1 & nacin== 1){ - seznam <- rbind(seznam, c("Skupaj", "", - c(rbind(do.call(cbind, skupaj_ls), sestevek_odstotkov )))) - - } - - return(seznam) -} - - - -izbirni_predmeti_po_vprasanjih <- list() -# Ustvarimo seznam dolzine 2, ker drugace ne moremo pripisovati seznamov v seznamu -izbirni_predmeti_po_vprasanjih_po_letnikih <- vector('list', 2) -izbirni_predmeti_skupaj_PL <- list() -izbirni_predmeti_skupaj <- list() - -for (i in 1:5){ - if (i <= 4){ - izbirni_predmeti_po_vprasanjih[[i]] <- subset(izbirni_predmeti, Vprasanje==i)[,-5] - # Doktorska disertacija (spada sem, ker ima isto strukturo, kot izbirni predmeti) - # Morda bi lahko preimenoval v vprasanja da/ne. - }else if(i == 5){ - izbirni_predmeti_po_vprasanjih[[i]] <- disertacija_poProgramih_out - } - # Locimo po letnikih - for (j in 1:2){ - izbirni_predmeti_po_vprasanjih_po_letnikih[[j]][[i]] <- subset(izbirni_predmeti_po_vprasanjih[[i]], Letnik == paste0(letnik_besedi[j])) - } - } - -izbirni_predmeti_tabela <- function(pod, cpt, ssub_sect=0){ - if(nrow(pod)>0){ - if(ssub_sect != 0){ - cat(paste0("\\subsubsection{", ssub_sect), "}") - } - rw1 <- c(0, nrow(pod)-1) - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{c}{\\textbf{Da}} & \\multicolumn{2}{c}{\\textbf{Ne}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ", "\\hline ") - print(xtable(pod, - caption= cpt, - align=c("lp{11cm}ccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold) - }else if (nrow(pod) == 0){ - cat('Študenti na to vprašanje niso podali odgovorov.') - } -} - -izbirni_predmeti_tabela_2 <- function(pod, cpt, ssub_sect=0){ - if(nrow(pod)>0){ - if(ssub_sect != 0){ - cat(paste0("\\subsubsection{", ssub_sect), "}") - } - rw1 <- c(0) - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{c}{\\textbf{Da}} & \\multicolumn{2}{c}{\\textbf{Ne}} & \\multicolumn{2}{c}{\\textbf{Skupaj}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") - print(xtable(pod, - caption= cpt, - align=c("lp{7.5cm}ccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold) - }else if (nrow(pod) == 0){ - cat('Študenti na to vprašanje niso podali odgovorov.') - } -} - -odg.tip6 <- list() -mean.odg6 <- list() -sd.odg6 <- list() -sum.odg6 <- list() -pct.odg6 <- list() - -poProgramih_ure_temp <- list() -poProgramih_ure <- list() -poProgramih_ure_output <- list() -poProgramih_ure_ls <- list() -letnik_ure <- list() -vrstaProg_ure <- list() - -h2 <- list() -for (i in podatki_letnik){ - - vprZ.tip6 <- subset(pomoznaT[[i]], pomoznaT[[i]]$tip==6) - odg.tip6[[i]] <- veljavneEnote[[i]][vprZ.tip6$kratkoIme] - - # Za tabele v prilogi (po letnikih in programih): - for (j in 1:length(vrstaProg[[i]])){ - # Stevilo porabljenih ur - # Pogoji, ce vrednosti ni - if (nrow(subset(veljavneEnote[[i]], idprog == imena_output[[i]][j], - select = "Q6")) > 0){ - - poProgramih_ure_temp[[j]] <- subset(veljavneEnote[[i]], - idprog == imena_output[[i]][j], - select = "Q6") - - vrstaProg_ure[[j]] <- as.character(vrstaProg[[i]][j]) - stevilo_enot_ure[[j]] <- length(as.numeric(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0])) - poProgramih_ure[[j]] <- mean(as.numeric(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0])) - letnik_ure[[j]] <- letnik_besedi[i] - } - } - - - poProgramih_ure_ls[[i]] <- data.frame(as.character(vrstaProg_ure), - as.character(letnik_ure), - formatC2(as.numeric(stevilo_enot_ure), digits=0, - format = 'f'), - formatC2(as.numeric(poProgramih_ure), digits=0, - format = 'f'), - stringsAsFactors = F) - - # Pustimo le vrednosti vecje od 0 - odg.tip6_Q6 <- as.numeric(odg.tip6[[i]]$Q6[odg.tip6[[i]]$Q6 > 0]) - if (length(odg.tip6_Q6) > 0){ - - mean.odg6[[i]] <- formatC2(mean(odg.tip6_Q6), digits = 0, format = 'f') - if (length(odg.tip6_Q6) > 1){ - sd.odg6[[i]] <- formatC2(sd(odg.tip6_Q6), digits = 0, format = 'f') - }else{sd.odg6[[i]] <- "."} - sum.odg6[[i]] <- formatC2(sum(odg.tip6_Q6), digits = 0, format = 'f') - - -h2[[i]] <- table(odg.tip6_Q6) -h2[[i]] <- data.frame(h2[[i]], stringsAsFactors = FALSE) - -vrsticaSkupaj <- data.frame(sum.odg6[[i]], sum(h2[[i]]$Freq), stringsAsFactors = F) -colnames(vrsticaSkupaj) <- colnames(h2[[i]]) -h2[[i]] <- rbind(h2[[i]], vrsticaSkupaj) - -h2[[i]]$pct <- c(formatC2(((h2[[i]]$Freq / length(odg.tip6_Q6)) * 100), - digits = 0, format = 'f')) - -h2[[i]] <- cbind(data.frame(c(rep("", (nrow(h2[[i]])-1)), "Skupaj"), - stringsAsFactors = F), h2[[i]]) - -vrsticaPovprecje <- data.frame("Povprečje", mean.odg6[[i]], sum(h2[[i]]$Freq[-nrow(h2[[i]])]), "100", stringsAsFactors = F) -colnames(vrsticaPovprecje) <- colnames(h2[[i]]) -vrsticaSd <- data.frame("Std. Odkl.", sd.odg6[[i]], sum(h2[[i]]$Freq[-nrow(h2[[i]])]), "100", stringsAsFactors = F) -colnames(vrsticaSd) <- colnames(h2[[i]]) - -h2[[i]] <- rbind(h2[[i]], vrsticaPovprecje) -h2[[i]] <- rbind(h2[[i]], vrsticaSd) - -h2[[i]][h2[[i]] == "NA" | h2[[i]] == "NaN"] <- "." -} -} - -histogram_graf <- function(data, letnik){ -graf <- ggplot(data, aes(x=odg.tip6_Q6, y=Freq))+geom_bar(stat="identity", width=1, - fill="#468fd7", color="black" - )+ - scale_y_continuous(breaks= c(0,1,2))+ - - theme_classic()+ - theme(aspect.ratio=1.2)+ - xlab("Število ur")+ylab("Frekvenca\n")+ - theme(axis.text = element_text(size = 11, family='CM Roman'), - axis.title=element_text(size=11, - family='CM Roman'), - axis.line.x = element_line(colour = 'black', size=0.4, - linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.4, - linetype='solid')) - -ime <- paste0("Histogram_ure_", letnik, "letnik.pdf") -ggsave(graf, filename=ime, width=8, height=5, units="in", device=cairo_pdf ) - -caption <- "Število tedensko porabljenih ur za doktorski študij" - -cat(paste0('\\begin{figure}[ht] -\\caption{', caption, '} -\\includegraphics[width=\\maxwidth]{../', ime, '} -\\end{figure} -\\clearpage')) -} - - - - - -if (length(podatki_letnik) == 2 || podatki_letnik == 1){ - - cat('\\newpage') - cat('\\subsubsection{Število tedensko porabljenih ur za doktorski študij}') - - if (length(ure_tedensko_po_prog_df_out[[1]]) > 0){ - crte_tedenske_ure <- c(-1, -1, 0, nrow(ure_tedensko_po_prog_df_out[[1]])) - colnames(ure_tedensko_po_prog_df_out[[1]]) <- c("Program","Število ur", "n", "\\%") - if (nrow(ure_tedensko_po_prog_df_out[[1]]) == 2){ - crte_tedenske_ure <- c(-1, -1, 0, nrow(ure_tedensko_po_prog_df_out[[1]])-1, nrow(ure_tedensko_po_prog_df_out[[1]])) - } - - - # Ce imamo manj, kot 2 vrstici, potem sd-ja ne izracuna - # Torej ce imamo eno vrstico, ne dodamo vrstic 'skupaj', 'povprecje' in 'sd' - if (nrow(ure_tedensko_po_prog_df_out[[1]]) > 2){ - if (sd_tedenske_ure[1] != "NA"){ - izpis_povp_sd <- paste0("Študenti so v povprečju tedensko za svoj doktorski študij porabili \\textbf{", mean_tedenske_ure[1], "} ur.") - izpis_povp_sd <- paste0(izpis_povp_sd, " Standardni odklon znaša \\textbf{", sd_tedenske_ure[[1]], "} ur.") - crte_tedenske_ure <- c(-1, -1, 0, nrow(ure_tedensko_po_prog_df_out[[1]])-3, nrow(ure_tedensko_po_prog_df_out[[1]])-2, nrow(ure_tedensko_po_prog_df_out[[1]])-2, nrow(ure_tedensko_po_prog_df_out[[1]])) - } - cat(izpis_povp_sd) - } - print(xtable(ure_tedensko_po_prog_df_out[[1]], - caption="Število tedensko porabljenih ur za doktorski študij", - align= c("p","l", "p{3cm}", "p{1cm}", "p{1cm}")), - caption.placement = 'top', - include.rownames =F, - sanitize.colnames.function = bold, - hline.after = crte_tedenske_ure) - }else{ - cat('Študenti na to vprašanje niso podali odgovorov.') - } -} -@ - -<>= -odg.tip5_f <- function(df, cpt_tip5){ - hlines <- c(-1, -1, 0, nrow(df)-1, nrow(df)) - if (sum(as.numeric(df$n))!= 0){ - cat(paste0('\\subsubsection{', cpt_tip5, '}')) - print(xtable(df, - align=c("p", "p{13.9cm}", "c", "c"), - digits=c(0,0,0,1), - caption = cpt_tip5), - caption.placement = "top", - sanitize.colnames.function = bold, - #sanitize.colnames.function = function(x){x}, - include.rownames = F, - hline.after = hlines) - }else{cat(paste0('\\subsubsection{', cpt_tip5, '} - Študenti na to vprašanje niso podali odgovorov.'))} -} -# Te tabele nimajo vrednosti 'skupaj' in za to pred to vrstico ne damo črte -odg.tip5_f_2 <- function(df, cpt_tip5){ - hlines <- c(-1, -1, 0, nrow(df)) - if (sum(as.numeric(df$n))!= 0){ - cat(paste0('\\subsubsection{', cpt_tip5, '}')) - print(xtable(df, - align=c("p", "p{13.9cm}", "c", "c"), - digits=c(0,0,0,1), - caption = cpt_tip5), - caption.placement = "top", - sanitize.colnames.function = bold, - #sanitize.colnames.function = function(x){x}, - include.rownames = F, - hline.after = hlines) - }else{cat(paste0('\\subsubsection{', cpt_tip5, '} - Študenti na to vprašanje niso podali odgovorov.'))} -} - -# Za vprasanja Q36a - Q36g funkcijo nekoliko prilagodimo -odg.tip5.Q36_f <- function(df, cpt_tip5){ - cat(paste0('\\subsubsection{', cpt_tip5, '}')) - hlines <- c(-1, -1, 0, nrow(df)) - print(xtable(df, - align=c("p", "p{14.9cm}", "c"), - digits=c(0,0,0), - caption=cpt_tip5), - caption.placement = "top", - sanitize.colnames.function = bold, - #sanitize.colnames.function = function(x){x}, - include.rownames = F, - hline.after = hlines) -} - - -if (length(podatki_letnik) == 2 || podatki_letnik == 1){ - - cas_letnik_df <- seznami_f2(cas_poLetniku[[1]], 0, 1) - # Izpisemo tabelo - cat("\\subsubsection{Ustreznost časa za doktorski študij}") - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{c}{\\textbf{Da}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\preveč}}}} - & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\premalo}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - - print(xtable(cas_letnik_df, - caption= "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?", - align=c("llccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(1, "Q8", "Odgovori na odprto vprašanje: Navedite zakaj. ") - cat("\\clearpage") -} -tabele_daNe <- function(first_colname = "", letnik, x){ - dat2_da <- c("Da", odg.tip4.ls_output[[letnik]][x,-1][1], formatC2(as.numeric(odg.tip4.ls_output[[letnik]][x,-1][2]), digits=0, format='f')) - dat2_ne <- c("Ne", odg.tip4.ls_output[[letnik]][x,-1][3], formatC2(as.numeric(odg.tip4.ls_output[[letnik]][x,-1][4]), digits=0, format='f')) - dat2_skupaj <- c("Skupaj", odg.tip4.ls_output[[letnik]][x,-1][5], formatC2(as.numeric(odg.tip4.ls_output[[letnik]][x,-1][6]), digits=0, format='f')) - dat2 <- rbind(dat2_da, dat2_ne, dat2_skupaj) - dat2 <- data.frame(dat2, stringsAsFactors = F) - colnames(dat2) <- c(first_colname, "n", "\\%") - hlines <- c(-1, -1, 0, nrow(dat2)-1, nrow(dat2)) - - print(xtable(dat2, - caption = odg.tip4.ls_output[[letnik]][x,1], - align= c("l", "l", "c", "c")), - include.rownames = F, - caption.placement = 'top', - sanitize.colnames.function = bold, - sanitize.colnames = function(x){x}, - hline.after = hlines) - - # 75+ je velika večina - # 55+ je večina - # 45-55 izrazimo v odstotkih - if(dat2[2,3] >= 75){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je velika večina študentov (', dat2[2,3], ' \\%) odgovorila z "Ne", odgovor "Da" pa je podalo ',dat2[1,3], ' \\% študentov.')) - }else if(dat2[1,3] >= 75){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je velika večina študentov (', dat2[1,3], ' \\%) odgovorila z "Da", odgovor "Ne" pa je podalo ',dat2[2,3], ' \\% študentov.')) }else if(dat2[2,3] >= 55){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je večina (', dat2[2,3], ' \\%) študentov odgovorila z "Ne", odgovor "Da" pa je podalo ',dat2[1,3], ' \\% študentov.')) }else if(dat2[1,3] >= 55){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je večina (', dat2[1,3], ' \\%) študentov odgovorila z "Da", odgovor "Ne" pa je podalo ',dat2[2,3], ' \\% študentov.')) - }else{ - # Npr. Velika večina (%), je odgovorila, da v letošnjem letu... - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je z "Da" odgovorilo ', dat2[1,3], ' \\% študentov, odgovor "Ne" pa je podalo ',dat2[1,3], ' \\% študentov.')) - } -} - - -if (length(podatki_letnik) == 2 || podatki_letnik == 1){ - - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[1]][[1]], 0, 1), "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:", "Izbira predmeta na drugih programih UL") - - - odprtiOdg_f(1, "Q10", "Odgovori na odprto vprašanje: Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?") - odprtiOdg_f(1, "Q11", "Odgovori na odprto vprašanje: Kateri predmet ste izbrali?") - - #Q12 - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[1]][[2]], 0, 1), "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi.", "Izbira predmeta izven UL") - - odprtiOdg_f(1, "Q13", "Odgovori na odprto vprašanje: Na kateri drugi univerzi ste izbrali izbirni predmet?") - - odprtiOdg_f(1, "Q14", "Odgovori na odprto vprašanje: Kateri predmet ste izbrali?") - - - cat('\\clearpage') - cat('\\subsubsection{Zadovoljstvo z izvajanjem programov}') - - dejavniki <- rbind(prazen_df_output[[1]]$Q15a, prazen_df_output[[1]]$Q15b, prazen_df_output[[1]]$Q15c, prazen_df_output[[1]]$Q15d, prazen_df_output[[1]]$Q15e) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[1]][7:11,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[1]], - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - graf_program_f(dejavniki, "Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij) po programih", 2, 1) - - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat("\\newpage") - cat('\\subsubsection{Primerna oblika izvedbe predmetov}') - - oblika_df <- seznami_f2(oblika_poLetniku[[1]],0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{Predavanja}} & \\multicolumn{2}{r}{\\textbf{Konzultacije}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{\\\\Kombinacija\\\\obojega}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - - print(xtable(oblika_df, - caption= "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?", - align=c("llccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(1, "Q17", "Odgovori na odprto vprašanje: Navedite, zakaj:") - odprtiOdg_f(1, "Q18", "Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)") - - cat('\\newpage') - - #Q19 - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[1]][[3]], 0, 1), "Ali ste imeli v letošnjem letu temeljne obvezne predmete?", "Temeljni/obvezni izbirni predmeti") - - - odprtiOdg_f(1, "Q20", "Odgovori na odprto vprašanje: Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?") - - - odprtiOdg_f(1, "Q21", "Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?") - - cat('\\newpage') - - #Q22 - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[1]][[4]], 0, 1), "Ali ste imeli v letošnjem letu izbirne predmete?", "Izbirni predmeti") - - - - odprtiOdg_f(1, "Q23", "Odgovori na odprto vprašanje: Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?") - - cat('\\newpage') - - - odprtiOdg_f(1, "Q24", "Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?") - - cat('\\clearpage') - cat('\\subsubsection{Pomoč in podpora mentorja}') - - - dejavniki <- rbind(prazen_df_output[[1]]$Q25a, prazen_df_output[[1]]$Q25b, prazen_df_output[[1]]$Q25c, - prazen_df_output[[1]]$Q25d, prazen_df_output[[1]]$Q25e, prazen_df_output[[1]]$Q25f) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[1]][12:17,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Pomoč in podpora mentorja - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[1]], - #booktabs = TRUE, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - graf_program_f(dejavniki, "Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij) po programih", 3, 1) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\newpage') - - odprtiOdg_f(1, "Q26", "Odgovori na odprto vprašanje: Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?") - - raziskovalni_nacrt_df <- seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[1]][[5]], 0, 1) - - - izbirni_predmeti_tabela_2(raziskovalni_nacrt_df, "Ali ste pred vpisom na doktorski študij že imeli idejo/raziskovalni načrt za doktorsko disertacijo:", "Doktorska disertacija") - - cat('\\newpage') - odprtiOdg_f(1, "Q28", "Odgovori na odprto vprašanje: Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?") - cat('\\newpage') - cat('\\subsubsection{Del študija in ostale aktivnosti v tujini}') - rws3 <- seq(1, (nrow(d3.1)-1), by = 2) - - dejavniki <- rbind(prazen_df_output[[1]]$Q29a, prazen_df_output[[1]]$Q29b, prazen_df_output[[1]]$Q29c, prazen_df_output[[1]]$Q29d) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[1]][18:21,] - - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[1]], - #booktabs = TRUE, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - graf_program_f(dejavniki, "Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij) po programih", 4, 1) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\newpage') - - odprtiOdg_f(1, "Q30", "Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?") - cat('\\newpage') - - cat('\\subsubsection{Svetovalna pomoč študentom}') - - dejavniki <- rbind(prazen_df_output[[1]]$Q31a, prazen_df_output[[1]]$Q31b, prazen_df_output[[1]]$Q31c, prazen_df_output[[1]]$Q31d) - d3.1 <- sklopi_po_programih_oba[[1]][22:25,] - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Svetovalna pomoč študentom - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[1]], - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - - graf_program_f(dejavniki, "Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij) po programih", 5, 1) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\newpage') - - - odprtiOdg_f(1, "Q32", "Odgovori na odprto vprašanje: Vaši predlogi glede delovanja referata in svetovanja študentom.") - - -odprtiOdg_f(1, "Q33", "Odgovori na odprto vprašanje: Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali je prvo leto študija izpolnilo vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?") - - cat('\\newpage') - - - - cat("\\subsubsection{Način študija}") - nacin_df <- seznami_f2(nacin_poLetniku[[1]], 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Mladi\\\\raziskovalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ml. raz.\\\\v gospodarstvu}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\fin. sam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\delodajalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\drugi viri}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - for (i in 1:nrow(nacin_df)){ - if (nchar(nacin_df$Program[i]) >= 15){ - nacin_df$Program[i] <- paste0(strtrim(nacin_df$Program[i], 15), ".") - } - } - print(xtable(nacin_df, - caption= "Kako študirate:", - align=c("llccccccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(1, "Q34_5_text", "Odgovori na odprto vprašanje: Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):") - -#Q36a - Q36f - - cat("\\subsubsection{Razlog študija}") - razlog_df <- seznami_f2(razlog_poLetniku[[1]], 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Akad.\\\\kariera}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Osebni\\\\razvoj}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dobro\\\\imeti}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Koristno}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Brez\\\\zaposl.}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Napred.}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Drugo}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - for (i in 1:nrow(razlog_df)){ - if (nchar(razlog_df$Program[i]) >= 10){ - razlog_df$Program[i] <- paste0(strtrim(razlog_df$Program[i], 10), ".") - } - } - - print(xtable(razlog_df, - caption= "Zakaj ste se odločili za doktorski študij?", - align=c("llccccccccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(1, "Q35g_text", "Odgovori na odprto vprašanje: Drugo:") - - cat("\\subsubsection{Odločitev o vpisu}") - danes_odlocali_df <- seznami_f2(danes_odlocali_poLetniku[[1]], 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se odločil\\\\enako}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se vpisal\\\\drugam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Se ne bi odločil\\\\za dr. študij}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ne vem}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - print(xtable(danes_odlocali_df, - caption= "Če bi se danes odločali o vpisu na doktorski študij:", - align=c("llccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - cat("\\clearpage") - # Izpisemo tabelo - kam_df <- seznami_f2(kam_vpisali_poLetniku[[1]], 0, 1) - cat('\\subsubsection{Alternativni vpis}') - - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{Na drugi\\\\program na UL}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{Na drugi VŠ\\\\zavod v RS}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{V tujino}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - - # com1 <- c("\\toprule[0.4pt]", "\\textbf{Program} & \\textbf{Letnik} & \\textbf{{\\shortstack[l]{Na drugi\\\\program na UL}}} & \\textbf{\\%} & \\textbf{{\\shortstack[l]{Na drugi VŠ\\\\zavod v RS}}} & \\textbf{\\%} & \\textbf{V tujino} & \\textbf{{\\shortstack[l]{Skupaj}}} & \\textbf{\\%} \\\\ ") - - print(xtable(kam_df, - caption= "Kam bi se vpisali?", - align=c("llccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - cat('\\subsubsection{Dodatni komentarji študentov}') - odprtiOdg_f(1, "Q38", "Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj, kar ni bilo zajeto v anketi?", izpis_stavka = 1) -} - -@ - -<>= -# Drugi letnik - -if (length(podatki_letnik) == 2 || podatki_letnik == 2){ - cat('\\newpage') - cat('\\clearpage') - cat('\\pagestyle{drugi}') - cat('\\section{Podrobne analize: Drugi letnik}') - cat('\\subsection{Analiza dejavnikov in vsebinskih sklopov}') - cat('V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so sicer vključene v agregatne analize tudi v poglavju 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.') - - # Opisne statistike za vse dejavnike urejene po povprecjih - rws3 <- seq(1, (nrow(poSklopih[[2]])-1), by = 2) - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - colnames(poSklopih[[2]]) <- c("Dejavniki", "n", "povprečje", "sd") - poSklopih[[2]][,3][poSklopih[[2]][,3] == "NaN"] <- "." - - print(xtable(poSklopih[[2]][-5], - digits=c(0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po povprečjih", - align = c("l", "p{12cm}", "c", "c", "c")), - caption.placement="top", - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE, - table.placement= ("!ht"), - #add.to.row=list(pos=list(-1), command=c("\\hline"))) - #booktabs = TRUE, - add.to.row = list(pos = list(-1, rws3), - command = c("\\hline","\\rowcolor[gray]{0.95}"))) - cat('\\newpage') - - grafDejavnikov(poSklopih_graf[[2]], "drugi") - povzetek_kratek(2) - - - cat('\\newpage') - print(xtable(obdaj_z_oklepaji_f(poSklopih_urejena[[2]],2,2,1, c(5:6)), - digits=c(0,0,0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih", - align = c("l", "p{8.2cm}", "C{0.8cm}", "C{1cm}", - "C{1cm}", "C{2.2cm}", "C{1cm}")), - - caption.placement="top", - sanitize.colnames.function = bold, - include.rownames = FALSE, - table.placement= ("!ht"), - sanitize.text.function = function(x){x}, - hline.after = c(-1, nrow(poSklopih_urejena[[2]])), - #booktabs = TRUE, - add.to.row = list(pos = list(-1, 0, 0, - mesta_addtorow[[2]][2], - mesta_addtorow[[2]][3], - mesta_addtorow[[2]][4], - mesta_addtorow[[2]][5], - d4_R2_output[[2]]), - command = c("\\hline", "\\hline", napisiSklopov_addtorow[[2]], - "\\rowcolor[gray]{0.95}"))) - - ## Drugi letnik - addtorow2_frek <- list() - addtorow2_frek$pos <- list(0, - mesta_addtorow[[2]][2], - mesta_addtorow[[2]][3], - mesta_addtorow[[2]][4], - mesta_addtorow[[2]][5], - d4_R2_output[[2]]) - addtorow2_frek$command <- c(napisiSklopov_addtorow_frekvencna[[2]], "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - cat('\\newpage') - - cat(paste0('\\begin{longtable}{p{5.5cm}cccccccccc} - \\caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\\\ ')) - cat(c("\\hline", addtorow_frek$command[2])) - - print(xtable(d4[[2]], - align=c("l", "p{5.5cm}", rep("c", 10)), - caption = "Frekvenčna porazdelitev enot za dejavnike po sklopih", - digits=0), - include.rownames=FALSE, - include.colnames=F, - only.contents = T, - sanitize.text.function = function (x){x}, - add.to.row = addtorow2_frek, - hline.after = NULL - ) - cat("\\hline \\end{longtable} \\newpage") - - cat('\\subsection{Podrobna analiza vseh spremenljivk po sklopih} -V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavje 6), vendar gre vsakič za nekoliko drugačen nivo analize.') - - cat("\\subsubsection{Infrastruktura in urniki}") - - ################################## - #### Peto poglavje - drugi letnik# - ################################## - - # Dolocimo dejavnike in caption za izris grafov - - dejavniki <- rbind(prazen_df_output[[2]]$Q5a, prazen_df_output[[2]]$Q5b, - prazen_df_output[[2]]$Q5c,prazen_df_output[[2]]$Q5d, - prazen_df_output[[2]]$Q5e, prazen_df_output[[2]]$Q5f) - - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - d3.1 <- sklopi_po_programih_oba[[2]][1:6,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Infrastruktura in urniki - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[2]], - #booktabs = TRUE, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - graf_program_f(dejavniki, "Infrastruktura in urniki - dejavniki (grafični prikaz povprečij) po programih", 1, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - ########### - cat('\\newpage') - cat('\\subsubsection{Število tedensko porabljenih ur za doktorski študij}') - - - if (length(ure_tedensko_po_prog_df_out[[2]]) > 0){ - crte_tedenske_ure <- c(-1, -1, 0, nrow(ure_tedensko_po_prog_df_out[[2]])) - colnames(ure_tedensko_po_prog_df_out[[2]]) <- c("Program","Število ur", "n", "\\%") - - if (nrow(ure_tedensko_po_prog_df_out[[2]]) == 2){ - crte_tedenske_ure <- c(-1, -1, 0, nrow(ure_tedensko_po_prog_df_out[[2]])-1, nrow(ure_tedensko_po_prog_df_out[[2]])) - } - - izpis_povp_sd <- paste0("Študenti so v povprečju tedensko za svoj doktorski študij porabili \\textbf{", mean_tedenske_ure[2], "} ur.") - - if (nrow(ure_tedensko_po_prog_df_out[[2]]) > 2){ - if (sd_tedenske_ure[2] != "NA"){ - izpis_povp_sd <- paste0(izpis_povp_sd, " Standardni odklon znaša \\textbf{", sd_tedenske_ure[[2]], "} ur.") - crte_tedenske_ure <- c(-1, -1, 0, nrow(ure_tedensko_po_prog_df_out[[2]])-3, nrow(ure_tedensko_po_prog_df_out[[2]])-2, nrow(ure_tedensko_po_prog_df_out[[2]])-2, nrow(ure_tedensko_po_prog_df_out[[2]])) - } - cat(izpis_povp_sd) - } - - print(xtable(ure_tedensko_po_prog_df_out[[2]], - caption="Število tedensko porabljenih ur za doktorski študij", - align= c("p", "l", "p{3cm}", "p{1cm}", "p{1cm}")), - caption.placement = 'top', - include.rownames =F, - sanitize.colnames.function = bold, - hline.after = crte_tedenske_ure) - }else{ - cat('Študenti na to vprašanje niso podali odgovorov.') - } - - cat("\\subsubsection{Ustreznost časa za doktorski študij}") - cas_letnik_df <- seznami_f2(cas_poLetniku[[2]], 0, 1) - rw1 <- c(0) - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{c}{\\textbf{Da}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\preveč}}}} - & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\premalo}}}} - & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - - print(xtable(cas_letnik_df, - caption= "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?", - align=c("llccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - cat('\\subsubsection{Ustreznost trajanja doktorskega študija}') - - triletno_poProgramih_df <- seznami_f2(triletno_poProgramih_out, 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{Prekratko}} & \\multicolumn{2}{r}{\\textbf{Predolgo}} & \\multicolumn{2}{r}{\\textbf{Ne vem}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{\\\\Da,\\\\ravno prav}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - - print(xtable(triletno_poProgramih_df, - caption= "Ali ocenjujete, da je triletno trajanje doktorskega študija ustrezno?", - align=c("llccccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(2, "Q9", "Odgovori na odprto vprašanje: Navedite zakaj. ") - cat("\\clearpage")# \\subsubsection{Izbira predmeta na drugih programih UL}") - - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[2]][[1]], 0, 1), "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:", "Izbira predmeta na drugih programih UL") - - odprtiOdg_f(2, "Q11", "Odgovori na odprto vprašanje: Iz katerega drugega doktorskega študijskega programa UL ste si izbrali izbirni predmet? ") - - odprtiOdg_f(2, "Q12", "Odgovori na odprto vprašanje: Kateri predmet ste izbrali?") - - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[2]][[2]], 0, 1), "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi.", "Izbira predmeta izven UL") - - odprtiOdg_f(2, "Q14", "Odgovori na odprto vprašanje: Na kateri drugi univerzi ste izbrali izbirni predmet?") - odprtiOdg_f(2, "Q15", "Odgovori na odprto vprašanje: Kateri predmet ste izbrali?") - - cat('\\newpage') - # Drugi letnik - cat("\\subsubsection{Zadovoljstvo z izvajanjem programov}") - dejavniki <- rbind(prazen_df_output[[2]]$Q16a, prazen_df_output[[2]]$Q16b, prazen_df_output[[2]]$Q16c, prazen_df_output[[2]]$Q16d, prazen_df_output[[2]]$Q16e) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[2]][7:11,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[2]], - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - graf_program_f(dejavniki, "Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij) po programih", 2, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - - cat('\\newpage') - cat('\\subsubsection{Primerna oblika izvedbe predmetov}') - - oblika_df <- seznami_f2(oblika_poLetniku[[2]], 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{Predavanja}} & \\multicolumn{2}{r}{\\textbf{Konzultacije}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{\\\\Kombinacija\\\\obojega}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - - print(xtable(oblika_df, - caption= "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?", - align=c("llccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(2, "Q18", "Odgovori na odprto vprašanje: Navedite zakaj: ") - odprtiOdg_f(2, "Q19", "Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)") - - cat('\\clearpage') - - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[2]][[3]], 0, 1), "Ali ste imeli v letošnjem letu temeljne obvezne predmete?", "Temeljni/obvezni izbirni predmeti") - - odprtiOdg_f(2, "Q21", "Odgovori na odprto vprašanje: Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?") - odprtiOdg_f(2, "Q22", "Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?") - - cat('\\newpage') - - izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih_po_letnikih[[2]][[4]], 0, 1), "Ali ste imeli v letošnjem letu izbirne predmete?", "Izbirni predmeti") - - odprtiOdg_f(2, "Q24", "Odgovori na odprto vprašanje: Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?") - odprtiOdg_f(2, "Q25", "Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?") - - cat(' - \\clearpage - \\subsubsection{Pomoč in podpora mentorja} - ') - dejavniki <- rbind(prazen_df_output[[2]]$Q26a, prazen_df_output[[2]]$Q26b, prazen_df_output[[2]]$Q26c, - prazen_df_output[[2]]$Q26d, prazen_df_output[[2]]$Q26e, prazen_df_output[[2]]$Q26f) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[2]][12:17,] - - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Pomoč in podpora mentorja - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[2]], - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - graf_program_f(dejavniki, "Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij) po programih", 3, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\newpage') - - odprtiOdg_f(2, "Q27", "Odgovori na odprto vprašanje: Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?") - - odprtiOdg_f(2, "Q28", "Odgovori na odprto vprašanje: Kakšne so vaše izkušnje s prijavo dispozicije doktorske naloge?") - - cat('\\newpage') - odprtiOdg_f(2, "Q29", "Odgovori na odprto vprašanje: Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?") - - cat(' - \\clearpage - \\subsubsection{Del študija in ostale aktivnosti v tujini} - ') - rws3 <- seq(1, (nrow(d3.1)-1), by = 2) - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - - dejavniki <- rbind(prazen_df_output[[2]]$Q30a, prazen_df_output[[2]]$Q30b, prazen_df_output[[2]]$Q30c, prazen_df_output[[2]]$Q30d) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[2]][18:21,] - - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[2]], - #booktabs = TRUE, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - - graf_program_f(dejavniki, "Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij) po programih", 4, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - cat('\\clearpage') - - odprtiOdg_f(2, "Q31", "Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?") - - cat(' - \\clearpage - \\subsubsection{Svetovalna pomoč študentom} - ') - - dejavniki <- rbind(prazen_df_output[[2]]$Q32a, prazen_df_output[[2]]$Q32b, prazen_df_output[[2]]$Q32c, prazen_df_output[[2]]$Q32d) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[2]][22:25,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Svetovalna pomoč študentom - dejavniki (opisne statistike) po študijskem programu", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_po_sklopih[[2]], - #booktabs = TRUE, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - graf_program_f(dejavniki, "Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij) po programih", 5, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\clearpage') - - odprtiOdg_f(2, "Q33", "Odgovori na odprto vprašanje: Vaši predlogi glede delovanja referata in svetovanja študentom.") - odprtiOdg_f(2, "Q34", "Odgovori na odprto vprašanje: Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali sta prvi dve leti študija izpolnili vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?") - - - cat("\\subsubsection{Način študija}") - nacin_df <- seznami_f2(nacin_poLetniku[[2]], 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Mladi\\\\raziskovalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ml. raz.\\\\v gospodarstvu}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\fin. sam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\delodajalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\drugi viri}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - for (i in 1:nrow(nacin_df)){ - if (nchar(nacin_df$Program[i]) >= 15){ - nacin_df$Program[i] <- paste0(strtrim(nacin_df$Program[i], 15), ".") - } - } - print(xtable(nacin_df, - caption= "Kako študirate:", - align=c("llccccccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(2, "Q35_5_text", "Odgovori na odprto vprašanje: Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):") - - - cat("\\subsubsection{Razlog študija}") - razlog_df <- seznami_f2(razlog_poLetniku[[2]], 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Akad.\\\\kariera}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Osebni\\\\razvoj}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dobro\\\\imeti}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Koristno}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Brez\\\\zaposl.}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Napred.}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Drugo}}}} & - \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} & - \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - for (i in 1:nrow(razlog_df)){ - if (nchar(razlog_df$Program[i]) >= 10){ - razlog_df$Program[i] <- paste0(strtrim(razlog_df$Program[i], 10), ".") - } - } - - print(xtable(razlog_df, - caption= "Zakaj ste se odločili za doktorski študij?", - align=c("llccccccccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - odprtiOdg_f(2, "Q36g_text", "Odgovori na odprto vprašanje: Drugo:") - cat("\\newpage") - - cat("\\subsubsection{Odločitev o vpisu}") - danes_odlocali_df <- seznami_f2(danes_odlocali_poLetniku[[2]], 0, 1) - rw1 <- 0 - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se odločil\\\\enako}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se vpisal\\\\drugam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Se ne bi odločil\\\\za dr. študij}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ne vem}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - print(xtable(danes_odlocali_df, - caption= "Če bi se danes odločali o vpisu na doktorski študij:", - align=c("llccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - - - # Izpisemo tabelo - kam_df <- seznami_f2(kam_vpisali_poLetniku[[2]], 0, 1) - cat('\\subsubsection{Alternativni vpis}') - rw1 <- 0 - com1 <- c("\\toprule[0.4pt]", "\\textbf{Program} & \\textbf{Letnik} & \\textbf{{\\shortstack[l]{Na drugi\\\\program na UL}}} & \\textbf{\\%} & \\textbf{{\\shortstack[l]{Na drugi VŠ\\\\zavod v RS}}} & \\textbf{\\%} & \\textbf{V tujino} & \\textbf{\\%} \\\\", "\\hline ") - - print(xtable(kam_df, - caption= "Kam bi se vpisali?", - align=c("llccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -if (2 %in% podatki_letnik){ - cat("\\newpage ") - cat("\\subsubsection{Koraki v postopku soglasja k temi doktorske disertacije}") - - # Čas v mesecih - # Za tabele v prilogi (po letnikih in programih): - # Ti dve vprasanji sta zastavljeni samo studentom drugega letnika - vprasanji_meseci <- c("Q40", "Q41") - napisa_meseci <- c("1. korak: Čas od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:" ,"2. korak: Čas od soglasja senata/komisije fakultete do soglasja senata UL (zapišite podatek, če je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):") - - ure_mesecno_po_prog_df <- list() - ure_mesecno_po_prog_df_out <- vector('list', 2) - mean_mesecne_ure <- as.numeric() - sd_mesecne_ure <- as.numeric() - sestevek_mesecne_ure <- as.numeric() - crte_meseci <- list() - vprasanji_meseci <- c("Q40", "Q41") - napisa_meseci <- c("1. korak: Čas od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:" ,"2. korak: Čas od soglasja senata/komisije fakultete do soglasja senata UL (zapišite podatek, če je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):") - - for (i in 1:2){ - stevec <- 0 - poLetniku_tedenske_ure <- as.numeric(veljavneEnote[[2]][vprasanji_meseci[i]][veljavneEnote[[2]][vprasanji_meseci[i]]>0]) - if (length(poLetniku_tedenske_ure)>0){ - sestevek_mesecne_ure[i] <- formatC2(sum(poLetniku_tedenske_ure), digits = 0, format = 'f') - - for(tip_prog in tip_programa_veljavni[[i]]$idprog_uq_veljavni){ - stevec <- stevec + 1 - ure_tedensko_po_prog <- as.numeric(veljavneEnote[[2]][vprasanji_meseci[i]][veljavneEnote[[2]][vprasanji_meseci[i]]>0 & veljavneEnote[[2]]$idprog == tip_prog]) - ime_programa_ure <- tip_programa_veljavni[[i]]$naziv[stevec] - - if (length(ure_tedensko_po_prog) != 0){ - ure_tedensko_po_prog <- data.frame(table(ure_tedensko_po_prog), stringsAsFactors = F) - ure_mesecno_po_prog_df[[stevec]] <- cbind(rep(ime_programa_ure, nrow(ure_tedensko_po_prog)), c("Drugi"), ure_tedensko_po_prog) - } - } - - ure_mesecno_po_prog_df_out[[i]] <- do.call(rbind, ure_mesecno_po_prog_df) - # Dodamo stolpec 'odstotki' - ure_mesecno_po_prog_df_out[[i]]$pct <- c(formatC2(((ure_mesecno_po_prog_df_out[[i]]$Freq / sum(as.numeric(ure_mesecno_po_prog_df_out[[i]]$Freq))) * 100),digits = 0, format = 'f')) - # Dodamo vrstico 'skupaj' - # Pomembno, ker, ima df, zaradi 'table', faktorje in rbind ne dela - ure_mesecno_po_prog_df_out[[i]] <- data.frame(lapply(ure_mesecno_po_prog_df_out[[i]], as.character), stringsAsFactors = F) - ure_mesecno_po_prog_df_out[[i]] <- rbind(ure_mesecno_po_prog_df_out[[i]], c("Skupaj", "", sestevek_mesecne_ure[i], sum(as.numeric(ure_mesecno_po_prog_df_out[[i]]$Freq)), 100)) - crte_meseci[[i]] <- c(-1, -1, 0, - nrow(ure_mesecno_po_prog_df_out[[i]])-1, - nrow(ure_mesecno_po_prog_df_out[[i]])) - - - #Dodamo vrstici 'Standardni odklon in Povprečje' - if (nrow(ure_mesecno_po_prog_df_out[[i]]) > 2){ - mean_mesecne_ure[i] <- formatC2(mean(poLetniku_tedenske_ure), digits = 0, format = 'f') - sd_mesecne_ure[i] <- formatC2(sd(poLetniku_tedenske_ure), digits = 0, format = 'f') - ure_mesecno_po_prog_df_out[[i]] <- rbind(ure_mesecno_po_prog_df_out[[i]], c("Povprečje", "", mean_mesecne_ure[i], ".", "."), c("Standardni odklon", "", sd_mesecne_ure[i], ".", ".")) - crte_meseci[[i]] <- c(-1, -1, 0, - nrow(ure_mesecno_po_prog_df_out[[i]])-3, - nrow(ure_mesecno_po_prog_df_out[[i]])-2, - nrow(ure_mesecno_po_prog_df_out[[i]])-2, - nrow(ure_mesecno_po_prog_df_out[[i]])) - - } - ure_mesecno_po_prog_df_out[[i]][ure_mesecno_po_prog_df_out[[i]] == "NaN"] <- "." - - colnames(ure_mesecno_po_prog_df_out[[i]]) <- c("Program", "Letnik", "Čas v mesecih", "n", "\\%") - - print(xtable(ure_mesecno_po_prog_df_out[[i]], - caption = napisa_meseci[i], - align = c("p","p{9cm}", "c", "c", "c", "c")), - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - caption.placement = 'top', - include.rownames = F, - hline.after = crte_meseci[[i]]) - } - } - } - cat('\\subsubsection{Dodatni komentarji študentov}') - odprtiOdg_f(2, "Q42", "Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj, kar ni bilo zajeto v anketi?", izpis_stavka = 1) -} -@ -\newpage -\pagestyle{oba} -\section{Analize skupnih spremenljivk po programih in po letnikih} -V nadaljevanju so analizirane vse skupne spremenljivke (razen odprtih vprašanj), ki so bile hkrati vključene v oba letnika. Poleg 25 dejavnikov na lestvicah 1-5 je vključenih še 13 drugih spremenljivk. Analize v tem poglavju so zato namenjene predvsem primerjavam oziroma razlikam med letnikoma in programi. - -<>= -########## -##Tabela -########## - -# Zdruzimo povprecja in stevilo enot, ki so veljavno odgovorile, po letnikih (po stolpcih) -if (length(podatki_letnik) > 1){ -bb <- cbind(skupaj.mean_output[[1]], skupaj.mean_output[[2]]) -bb_length <- cbind(skupaj.length_output[[1]], skupaj.length_output[[2]]) -}else{ - bb <- skupaj.mean_output[[podatki_letnik]] - bb_length <- skupaj.length_output[[podatki_letnik]] -} -# V bb3 izracunamo povprecje vseh programov in letnikov za dolocen dejavnik -# v bb4 sestejemo stevilo enot, ki so odgovorile na dolocen dejavnik (iz vseh programov in iz vseh letnikov) -if (length(podatki_letnik) > 1){ - bb3 <- list() - bb4 <- list() - for (j in 1:nrow(bb)){ - bb2 <- rownames(bb)[j] - bb3[bb2] <- mean(unlist(bb[j,])) - bb4[bb2] <- sum(unlist(bb_length[j,])) - } -}else{ - bb3 <- bb - bb4 <- bb_length -} - -bb3 <- data.frame(bb3, stringsAsFactors = F) -bb3[bb3 == "NaN"] <- "." -bb4 <- data.frame(bb4, stringsAsFactors = F) - - -#opisneNapisi <- c("povprečje", "n", "std. odklon") -f_tabelePriloga <- function(n, dejavniki_drugiLetnik){ - # V a2 imamo povprecja za dejavnike v stolpcih po programu - if (1 %in% podatki_letnik){ - a2 <- formatC2(sapply(sy.mean_output[[1]], function(x){return (x[n]) }), - digits = 1, format="f") - a2[a2 == "NaN"] <- 0 - a2[a2 == "NA"] <- 0 - b2 <- sapply(sy.length_output[[1]], function(x){return (x[n]) }) - - - prviLetnik <- data.frame(strtrim(tip_programa_veljavni[[1]]$naziv,50), - c("Prvi"), - b2[1,], - t(a2), - stringsAsFactors=F) - prviLetnik[,c(4:(3+length(n)))] <- barvanje_f(prviLetnik[,c(4:(3+length(n)))]) - colnames(prviLetnik) <- c("tipPrograma", "letnik", "n", n) - - } - - if (2 %in% podatki_letnik){ - a3 <- formatC2(sapply(sy.mean_output[[2]], function(x){return (x[dejavniki_drugiLetnik]) }), digits = 1, format="f") - a3[a3 == "NA"] <- 0 - a3[a3 == "NaN"] <- 0 - b2_drugi <- sapply(sy.length_output[[2]], function(x){return (x[dejavniki_drugiLetnik]) }) - - drugiLetnik <- data.frame(strtrim(tip_programa_veljavni[[2]]$naziv,50), - c("Drugi"), - b2_drugi[1,], - t(a3), - stringsAsFactors=F) - drugiLetnik[,c(4:(3+length(n)))] <- barvanje_f(drugiLetnik[,c(4:(3+length(n)))]) - colnames(drugiLetnik) <- c("tipPrograma", "letnik", "n", n) - } - - - if (length(podatki_letnik)==2){ - vrstica_skupaj_priloga <- as.character(c("Skupaj", "", bb4[n][1], barvanje_f(bb3[n]))) - skupaj_priloga <- rbind(prviLetnik, drugiLetnik, vrstica_skupaj_priloga) - }else if(1 %in% podatki_letnik){ - vrstica_skupaj_priloga <- as.character(c("Skupaj", "", bb4[n][1], barvanje_f(bb3[n]))) - skupaj_priloga <- rbind(prviLetnik, vrstica_skupaj_priloga) - }else if(2 %in% podatki_letnik){ - vrstica_skupaj_priloga <- as.character(c("Skupaj", "", bb4[dejavniki_drugiLetnik][1], barvanje_f(bb3[dejavniki_drugiLetnik]))) - skupaj_priloga <- rbind(drugiLetnik, vrstica_skupaj_priloga) - } - - for (i in 1:length(skupaj_priloga$n)){ - if (as.numeric(skupaj_priloga$n[i]) < 5){ - skupaj_priloga$n[i] <- paste0('((',skupaj_priloga$n[i],'))') - - }else if(as.numeric(skupaj_priloga$n[i]) < 10){ - skupaj_priloga$n[i] <- paste0('(',skupaj_priloga$n[i],')') - } - } - - if(1 %in% podatki_letnik){ - for (i in 1:ncol(b2)){ - for(j in 1:length(b2[,i])){ - if(b2[j,i]<= 3){ - skupaj_priloga[i, j+3] <- "." - } - } - } - } - - if(2 %in% podatki_letnik){ - for (i in 1:ncol(b2_drugi)){ - for(j in 1:length(b2_drugi[,i])){ - if(b2_drugi[j,i]<= 3){ - skupaj_priloga[(i+ncol(b2)), j+3] <- "." - } - } - } - } - - # Iz vrstice skupaj, odstranimo povprecja, ki so izracunana na manj kot 4 enotah - for (i in 1:length(bb4[n])){ - if(bb4[n][i] <=3){ - skupaj_priloga[nrow(skupaj_priloga), 3+i] <- "." - } - } - - - - - # Neveljavnim izracunom pripisemo vrednost (.) - zx <- skupaj_priloga - zx[zx == "NaN" | zx == "NA" | zx== "Na" | zx =="Inf" | zx =="-Inf" | zx=="0.0"] <- "." - - return(zx) -} - -# Zaradi izgleda omejimo dolzino imena programa na 50 mest -# Popravi, da bojo imeli piko, če so okrajšani -for (i in podatki_letnik){ - for(j in 1:nrow(tip_programa_veljavni[[i]])){ - if (nchar(tip_programa_veljavni[[i]]$naziv[j]) >= 50){ - tip_programa_veljavni[[i]]$naziv[j] <- paste0(strtrim(tip_programa_veljavni[[i]]$naziv[j], 50), ".") - } - } -} - if (length(podatki_letnik)==2){ -programiV1 <- c(tip_programa_veljavni[[1]]$naziv, - tip_programa_veljavni[[2]]$naziv, "Skupaj") - }else if(1 %in% podatki_letnik){ - programiV1 <- c(tip_programa_veljavni[[1]]$naziv, "Skupaj") - }else if(2 %in% podatki_letnik){ - programiV1 <- c(tip_programa_veljavni[[2]]$naziv, "Skupaj") - } - -# Kraticam dodamo vrednost ".", ki jo izpisemo vrstici "Skupaj". -# kratica_veljavni <- c(tip_programa_veljavni$kratica, ".") -# Ce bo v tabelah spet stopnja pri align odstejemo -2 cm. -tabele_priloga <- f_tabelePriloga(c("Q5a", "Q5b", "Q5c", "Q5d", "Q5e", "Q5f"), - c("Q5a", "Q5b", "Q5c", "Q5d", "Q5e", "Q5f")) -#tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5], z[,6], z[,7]) -#tabele_priloga <- data.frame(programiV1,formatC2(z[[1]][c(seq(1,(length(z[[1]])-2),(length(z)-2)), length(z[[1]]))],digits=0, format='f'), z[2], z[3], z[4], z[5], z[6], z[7], z[8]) - -#Narise crto pred skupaj -rw1 <- c(-1, nrow(tabele_priloga)-1, 0) -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Razpored\\\\izvajanja}}&\\rot{\\shortstack[l]{Spremembe\\\\poteka}} & \\rot{\\shortstack[l]{Pravilno nav.\\\\izvajalci}} & \\rot{\\shortstack[l]{Pridobivanje\\\\virov}} & \\rot{\\shortstack[l]{Druga\\\\infrastr.}} & \\rot{\\shortstack[l]{Ustrezen\\\\razp. ur}} \\\\ \\hline \\endfirsthead - \\caption{Infrastruktura in urniki - po programih in po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Razpored\\\\izvajanja}}&\\rot{\\shortstack[l]{Spremembe\\\\poteka}} & \\rot{\\shortstack[l]{Pravilnonav.\\\\izvajalci}} & \\rot{\\shortstack[l]{Pridobivanje\\\\virov}} & \\rot{\\shortstack[l]{Druga\\\\infrastr.}} & \\rot{\\shortstack[l]{Ustrezen\\\\razp. ur}} \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Infrastruktura in urniki - po programih in po letnikih", - align=c("pp{9cm}cc|cccccc")), - caption.placement = "top", - #booktabs = TRUE, - table.placement= ("!ht"), - include.colnames = FALSE, - tabular.environment = "longtable", - floating = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ - -<>= -tabele_priloga <- f_tabelePriloga(c("Q15a", "Q15b", "Q15c", "Q15d", "Q15e"), - c("Q16a", "Q16b", "Q16c", "Q16d", "Q16e")) - -#tabele_priloga <- data.frame(programiV1,formatC2(z[[1]][c(seq(1,(length(z[[1]])-2),(length(z)-2)), length(z[[1]]))],digits=0, format='f'), z[2], z[3], z[4], z[5], z[6], z[7]) -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Izvajanje\\\\prog.}} & \\rot{\\shortstack[l]{Izbirni\\\\predmeti}} & \\rot{\\shortstack[l]{Generična\\\\znanja}} & \\rot{\\shortstack[l]{Uporabnost za\\\\dr. dizer.}} & \\rot{\\shortstack[l]{Kritična\\\\razprava}} \\\\ \\hline \\endfirsthead - \\caption{Zadovoljstvo z izvajanjem programov - po programih in po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Izvajanje\\\\prog.}} & \\rot{\\shortstack[l]{Izbirni\\\\predmeti}} & \\rot{\\shortstack[l]{Generična\\\\znanja}} & \\rot{\\shortstack[l]{Uporabnost za\\\\dr. dizer.}} & \\rot{\\shortstack[l]{Kritična\\\\razprava}} \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Zadovoljstvo z izvajanjem programov - po programih in po letnikih", - align=c("pp{8.5cm}cc|ccccc")), - caption.placement = "top", - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -@ - - -<>= - -tabele_priloga <- f_tabelePriloga(c("Q25a", "Q25b", "Q25c", "Q25d", "Q25e", "Q25f"), - c("Q26a", "Q26b", "Q26c", "Q26d", "Q26e", "Q26f")) - - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Podpora\\\\mentorja}} & \\rot{\\shortstack[l]{Svetovanje\\\\mentorja}} & \\rot{\\shortstack[l]{Pomoč pri\\\\ zn. člankih}} & \\rot{\\shortstack[l]{Pomoč pri\\\\težavah}} & \\rot{\\shortstack[l]{Odzivnost\\\\po el. pošti}} & \\rot{\\shortstack[l]{Pogostost\\\\stikov}} - \\\\ \\hline \\endfirsthead - \\caption{Pomoč in podpora mentorja - po programih in po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline\\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Podpora\\\\mentorja}} & \\rot{\\shortstack[l]{Svetovanje\\\\mentorja}} & \\rot{\\shortstack[l]{Pomoč pri\\\\ zn. člankih}} & \\rot{\\shortstack[l]{Pomoč pri\\\\težavah}} & \\rot{\\shortstack[l]{Odzivnost\\\\po el. pošti}} & \\rot{\\shortstack[l]{Pogostost\\\\stikov}} - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Pomoč in podpora mentorja - po programih in po letnikih", - align=c("pp{8.5cm}cc|cccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ - - -<>= - -tabele_priloga <- f_tabelePriloga(c("Q29a", "Q29b", "Q29c", "Q29d"), - c("Q30a", "Q30b", "Q30c", "Q30d")) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Del štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Možnost štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Udeležba\\\\konferenc}} & \\rot{\\shortstack[l]{Vključenost v\\\\raz. skupino}} - \\\\ \\hline \\endfirsthead - \\caption{Del študija in ostale aktivnosti v tujini - po programih in po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Del štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Možnost štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Udeležba\\\\konferenc}} & \\rot{\\shortstack[l]{Vključenost v\\\\raz. skupino}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Del študija in ostale aktivnosti v tujini - po programih in po letnikih", - align=c("pp{10cm}cc|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ - - -<>= - -tabele_priloga <- f_tabelePriloga(c("Q31a", "Q31b", "Q31c", "Q31d"), - c("Q32a", "Q32b", "Q32c", "Q32d")) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost\\\\referata}} & \\rot{\\shortstack[l]{Ustrezen\\\\odnos}} & \\rot{\\shortstack[l]{Jasne info.\\\\na spl. strani}} - - \\\\ \\hline \\endfirsthead - \\caption{Svetovalna pomoč študentom - po programih in po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost\\\\referata}} & \\rot{\\shortstack[l]{Ustrezen\\\\odnos}} & \\rot{\\shortstack[l]{Jasne info.\\\\na spl. strani}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Svetovalna pomoč študentom - po programih in po letnikih", - align=c("pp{10cm}cc|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\newpage -<>= -if (length(podatki_letnik)==2){ -skupaj_ure <- rbind(poProgramih_ure_ls[[1]], poProgramih_ure_ls[[2]]) -colnames(skupaj_ure) <- c("Program", "Letnik", "n", "Število ur") -skupaj_ure[skupaj_ure == "NaN"] <- "." -skupaj_ure[,3] <- formatC2(as.numeric(skupaj_ure[,3]), digits=0, format='f') - -}else{ - skupaj_ure <- poProgramih_ure_ls[[i]] - colnames(skupaj_ure) <- c("Program", "Letnik", "Število ur", "\\%") - skupaj_ure[skupaj_ure == "NaN"] <- "." - skupaj_ure[,3] <- formatC2(as.numeric(skupaj_ure[,3]), digits=0, format='f') -} - -rw1 <- c(-1) -com1 <- c("\\hline ") -print(xtable(skupaj_ure, - caption= "Povprečno število tedensko porabljenih ur za doktorski študij - po programih in po letnikih", - align=c("lp{10cm}ccc")), - caption.placement = "top", - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold) - -cas_df <- seznami_f2(cas_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{c}{\\textbf{Da}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\premalo}}}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\preveč}}}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj - -print(xtable(cas_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"', - align=c("lp{8cm}ccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -# Spodnja tabela je izklopljena - if (900 %in% podatki_letnik){ - triletno_poProgramih_df <- seznami_f2(triletno_poProgramih_out, 0, 1) - if (nrow(triletno_poProgramih_df) > 0){ - prvi_letnik_vrstica <- data.frame(Program =triletno_poProgramih_df[1,1], letnik="1.", a="/", a2="/", a3="/", a4="/", a5="/", a6="/", a7="/", a8="/", a9="/", a10="/", stringsAsFactors=F) - - triletno_poProgramih_df[2,] <- prvi_letnik_vrstica - triletno_poProgramih_df <- triletno_poProgramih_df[c(2,1),] - } - - rw1 <- c(0) - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{Prekratko}} & \\multicolumn{2}{r}{\\textbf{Predolgo}} & \\multicolumn{2}{r}{\\textbf{Ne vem}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{\\\\Da,\\\\ravno prav}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - for (i in 1:nrow(triletno_poProgramih_df)){ -if (nchar(triletno_poProgramih_df$Program[i]) >= 10){ - triletno_poProgramih_df$Program[i] <- paste0(strtrim(triletno_poProgramih_df$Program[i], 10), ".") -} -} - print(xtable(triletno_poProgramih_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ocenjujete, da je triletno trajanje doktorskega študija ustrezno?"', - align=c("lp{4.5cm}ccccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -} - - -izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih[[1]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"') - -cat("\\newpage") -izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih[[2]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."') - - -oblika_df <- seznami_f2(oblika_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{Predavanja}} & \\multicolumn{2}{r}{\\textbf{Konzultacije}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{\\\\Kombinacija\\\\obojega}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj -for (i in 1:nrow(oblika_df)){ - if (nchar(oblika_df$Program[i]) >= 10){ - oblika_df$Program[i] <- paste0(strtrim(oblika_df$Program[i], 10), ".") - } -} -print(xtable(oblika_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"', - align=c("lp{5.5cm}ccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih[[3]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"') - - -izbirni_predmeti_tabela_2(seznami_f2(izbirni_predmeti_po_vprasanjih[[4]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"') - -odstotki_in_skupaj <- function(df){ - # df-ju dodamo odstotke - vrstica_skupaj <- c("Skupaj", "") - prvotna_dolzina <- length(df) - vrstniRed <- as.numeric() - for(i in 1:(prvotna_dolzina-2)){ - df[,prvotna_dolzina+i] <- formatC2(df[,i+2]/sum(df[,i+2])*100, digits=0, format='f') - vrstniRed <- c(vrstniRed, c(i+2,(i+prvotna_dolzina))) - } - for(i in 3:length(df)){ - vrstica_skupaj <- c(vrstica_skupaj, sum(as.numeric(df[,i]))) - } - - # df-ju dodamo vrstico skupaj - # Izklopljeno: - #df[nrow(df)+1,] <- vrstica_skupaj - # Preuredimo vrstni red df-ja - - df <- df[,c(1,2,vrstniRed)] - df[df=="NaN"] <- "." - #colnames(df) <- imenaStolpcev - return(df) -} - -#nacin_df <- odstotki_in_skupaj(nacin_out) -nacin_df <- seznami_f2(nacin_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Mladi\\\\raziskovalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ml. raz.\\\\v gosp.}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\fin. sam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\delodajalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\drugi viri}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\") -#, "\\hline ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj -for (i in 1:nrow(nacin_df)){ -if (nchar(nacin_df$Program[i]) >= 10){ - nacin_df$Program[i] <- paste0(strtrim(nacin_df$Program[i], 10), ".") -} -} -print(xtable(nacin_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"', - align=c("lp{2.5cm}ccccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - -razlog_df <- seznami_f2(razlog_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Akad.\\\\kariera}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Osebni\\\\razvoj}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dobro\\\\imeti}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Koristno}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Brez\\\\zaposl.}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Napred.}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Drugo}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} \\\\ ") -#, "\\hline ") # Ce bi bil zadnji \\\\ brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \\Skupaj -for (i in 1:nrow(razlog_df)){ - if (nchar(razlog_df$Program[i]) >= 10){ - razlog_df$Program[i] <- paste0(strtrim(razlog_df$Program[i], 10), ".") - } -} - -print(xtable(razlog_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij?"', - align=c("llccccccccccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -# Če bi se danes odločali o vpisu na doktorski študij - po programu - po letniku - -disertacija_letnik <- list() -#izbirni_list_vprasanja <- list() -disertacija_program <- list() -for(i in 1:length(odg_gledeProgram)){ # po letnikih - for (j in 1:length(odg_gledeProgram[[i]])){ # po programih - - # V bazi prvih letnikov so nekoliko drugacna imena stolpcev - if (i == 1){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q36")] - } else if (i == 2){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q37")] - } - if (nchar(unique(odg_gledeProgram[[i]][[j]]$program))>30){ - imeProg <- paste0(strtrim(unique(odg_gledeProgram[[i]][[j]]$program),30), ".") - } - else{ - imeProg <- unique(odg_gledeProgram[[i]][[j]]$program) - } - - disertacija_df <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - enako = length(izbirni_poProgramih[izbirni_poProgramih == 1]), - drugam = length(izbirni_poProgramih[izbirni_poProgramih == 2]), - nebi = length(izbirni_poProgramih[izbirni_poProgramih == 3]), - nevem = length(izbirni_poProgramih[izbirni_poProgramih == 4]), - stringsAsFactors = F) - - disertacija_program[[j]] <- disertacija_df - - - } - disertacija_letnik[[i]] <- do.call(rbind, disertacija_program) -} - -disertacija_letnik <- do.call(rbind, disertacija_letnik) - -cat('\\newpage') -disertacija_df <- seznami_f2(disertacija_letnik,0,1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se odločil\\\\enako}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se vpisal\\\\drugam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Se ne bi odločil\\\\za dr. študij}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ne vem}}}} -& \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\") -#, "\\hline ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj -for (i in 1:nrow(disertacija_df)){ -if (nchar(disertacija_df$Program[i]) >= 10){ - disertacija_df$Program[i] <- paste0(strtrim(disertacija_df$Program[i], 10), ".") -} -} -print(xtable(disertacija_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"', - align=c("lp{3.5cm}ccccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - - -# Kam bi se vpisali? - po programih in po letnikih -# Izracuni za tabelo 'nacin predavanja': -disertacija_letnik <- list() -#izbirni_list_vprasanja <- list() -disertacija_program <- list() -# Izracuni za 'izbirni predmeti' po letniku in po programu: -# Vprasanja v istem vrstnem redu, kot so spodaj imena spremenljivk - -for(i in 1:length(odg_gledeProgram)){ # po letnikih - for (j in 1:length(odg_gledeProgram[[i]])){ # po programih - - # V bazi prvih letnikov so nekoliko drugacna imena stolpcev - if (i == 1){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q37")] - } else if (i == 2){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q38")] - } - if (nchar(unique(odg_gledeProgram[[i]][[j]]$program))>25){ - imeProg <- paste0(strtrim(unique(odg_gledeProgram[[i]][[j]]$program),25), ".") - } - else{ - imeProg <- unique(odg_gledeProgram[[i]][[j]]$program) - } - - disertacija_df <- data.frame(Program = imeProg, - Letnik = letnik_besedi[i], - drug = length(izbirni_poProgramih[izbirni_poProgramih == 1]), - vs = length(izbirni_poProgramih[izbirni_poProgramih == 2]), - tujino = length(izbirni_poProgramih[izbirni_poProgramih == 3]), - stringsAsFactors = F) - disertacija_program[[j]] <- disertacija_df - - - } - disertacija_letnik[[i]] <- do.call(rbind, disertacija_program) -} - - -disertacija_letnik <- do.call(rbind, disertacija_letnik) - - - -disertacija_df <- seznami_f2(disertacija_letnik,0,1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{Na drugi\\\\program na UL}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{Na drugi VŠ\\\\zavod v RS}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{V tujino}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") -for (i in 1:nrow(disertacija_df)){ -if (nchar(disertacija_df$Program[i]) >= 15){ - disertacija_df$Program[i] <- paste0(strtrim(disertacija_df$Program[i], 15), ".") -} -} -print(xtable(disertacija_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"', - align=c("lp{5cm}ccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), #ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -cat("\\newpage") - -if (900 %in% podatki_letnik){ - ure_mesecno_po_prog_df <- list() - ure_mesecno_po_prog_df_out <- vector('list', 2) - mean_mesecne_ure <- as.numeric() - sd_mesecne_ure <- as.numeric() - sestevek_mesecne_ure <- as.numeric() - - crte_meseci <- list() - vprasanji_meseci <- c("Q40", "Q41") - napisa_meseci <- c('Frekvenčna porazdelitev odgovorov na vprašanje: "1. korak: Čas od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:"' ,'Frekvenčna porazdelitev odgovorov na vprašanje: "2. korak: Čas od soglasja senata/komisije fakultete do soglasja senata UL (zapišite podatek, če je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):"') - - for (i in 1:length(vprasanji_meseci)){ - stevec <- 0 - poLetniku_tedenske_ure <- as.numeric(veljavneEnote[[2]][vprasanji_meseci[i]][veljavneEnote[[2]][vprasanji_meseci[i]]>0]) - if (length(poLetniku_tedenske_ure) > 0){ - mean_mesecne_ure[i] <- formatC2(mean(poLetniku_tedenske_ure), digits = 0, format = 'f') - sd_mesecne_ure[i] <- formatC2(sd(poLetniku_tedenske_ure), digits = 0, format = 'f') - sestevek_mesecne_ure[i] <- formatC2(sum(poLetniku_tedenske_ure), digits = 0, format = 'f') - - - for(tip_prog in tip_programa_veljavni[[i]]$idprog_uq_veljavni){ - stevec <- stevec + 1 - ure_tedensko_po_prog <- as.numeric(veljavneEnote[[2]][vprasanji_meseci[i]][veljavneEnote[[2]][vprasanji_meseci[i]]>0 & veljavneEnote[[2]]$idprog == tip_prog]) - ime_programa_ure <- tip_programa_veljavni[[i]]$naziv[stevec] - - if (length(ure_tedensko_po_prog) != 0){ - ure_tedensko_po_prog <- data.frame(table(ure_tedensko_po_prog), stringsAsFactors = F) - ure_mesecno_po_prog_df[[stevec]] <- cbind(rep(ime_programa_ure, nrow(ure_tedensko_po_prog)), c("2."), ure_tedensko_po_prog) - } - } - - ure_mesecno_po_prog_df_out[[i]] <- do.call(rbind, ure_mesecno_po_prog_df) - # Dodamo stolpec 'odstotki' - ure_mesecno_po_prog_df_out[[i]]$pct <- c(formatC2(((ure_mesecno_po_prog_df_out[[i]]$Freq / sum(as.numeric(ure_mesecno_po_prog_df_out[[i]]$Freq))) * 100),digits = 0, format = 'f')) - # Dodamo vrstico 'skupaj' - # Pomembno, ker, ima df, zaradi 'table', faktorje in rbind ne dela - ure_mesecno_po_prog_df_out[[i]] <- data.frame(lapply(ure_mesecno_po_prog_df_out[[i]], as.character), stringsAsFactors = F) - ure_mesecno_po_prog_df_out[[i]] <- rbind(ure_mesecno_po_prog_df_out[[i]], c("Skupaj", "", sestevek_mesecne_ure[i], sum(as.numeric(ure_mesecno_po_prog_df_out[[i]]$Freq)), 100)) - crte_meseci[[i]] <- c(-1, -1, 0, - nrow(ure_mesecno_po_prog_df_out[[i]])-1, - nrow(ure_mesecno_po_prog_df_out[[i]])) - #Dodamo vrstici 'Standardni odklon in Povprečje' - if (nrow(ure_mesecno_po_prog_df_out[[i]]) > 2){ - ure_mesecno_po_prog_df_out[[i]] <- rbind(ure_mesecno_po_prog_df_out[[i]], c("Povprečje", "", mean_mesecne_ure[i], ".", "."), c("Standardni odklon", "", sd_mesecne_ure[i], ".", ".")) - crte_meseci[[i]] <- c(-1, -1, 0, - nrow(ure_mesecno_po_prog_df_out[[i]])-3, - nrow(ure_mesecno_po_prog_df_out[[i]])-2, - nrow(ure_mesecno_po_prog_df_out[[i]])-2, - nrow(ure_mesecno_po_prog_df_out[[i]])) - - } - ure_mesecno_po_prog_df_out[[i]][ure_mesecno_po_prog_df_out[[i]] == "NaN"] <- "." - - colnames(ure_mesecno_po_prog_df_out[[i]]) <- c("Program", "Letnik", "Čas v mesecih", "n", "\\%") - if (length(podatki_letnik) == 2){ - print(xtable(ure_mesecno_po_prog_df_out[[i]], - caption = napisa_meseci[i], - align = c("p","p{9cm}", "c", "c", "c", "c")), - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - caption.placement = 'top', - include.rownames = F, - hline.after = crte_meseci[[i]]) - } - #}else{cat('Študenti na to vprašanje niso podali odgovorov.')} - } - } -} -@ - -\end{document} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.aux b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.aux deleted file mode 100644 index c93d580e5..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.aux +++ /dev/null @@ -1,339 +0,0 @@ -\relax -\providecommand\hyper@newdestlabel[2]{} -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\providecommand\HyField@AuxAddToCoFields[2]{} -\@writefile{toc}{\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.1} Prvi letnik}{1}{subsection.0.1.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.2} Drugi letnik}{2}{subsection.0.1.2}} -\@writefile{toc}{\contentsline {section}{\numberline {2.}Metodologija}{4}{section.0.2}} -\gdef \LT@i {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.94998pt}\LT@entry - {2}{29.41176pt}\LT@entry - {2}{23.32263pt}\LT@entry - {2}{43.13158pt}\LT@entry - {1}{23.32263pt}\LT@entry - {1}{31.67201pt}\LT@entry - {5}{32.0602pt}\LT@entry - {1}{27.5776pt}\LT@entry - {5}{17.47499pt}\LT@entry - {1}{30.38062pt}} -\gdef \LT@ii {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.94998pt}\LT@entry - {2}{29.41176pt}\LT@entry - {2}{23.32263pt}\LT@entry - {2}{40.89761pt}\LT@entry - {1}{23.32263pt}\LT@entry - {2}{31.67201pt}\LT@entry - {5}{22.94998pt}\LT@entry - {1}{36.68782pt}\LT@entry - {5}{17.47499pt}\LT@entry - {1}{30.38062pt}} -\@writefile{toc}{\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{6}{section.0.3}} -\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - prvi letnik\relax }}{6}{table.0.1}} -\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - drugi letnik\relax }}{6}{table.0.2}} -\@writefile{toc}{\contentsline {section}{\numberline {4.}Podrobne analize: Prvi letnik}{7}{section.0.4}} -\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Analiza dejavnikov}{7}{subsection.0.4.1}} -\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{7}{table.caption.3}} -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{8}{figure.caption.4}} -\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{9}{table.caption.5}} -\gdef \LT@iii {\LT@entry - {1}{168.49014pt}\LT@entry - {4}{22.94998pt}\LT@entry - {2}{29.19218pt}\LT@entry - {3}{17.47499pt}\LT@entry - {2}{52.44992pt}\LT@entry - {3}{17.47499pt}\LT@entry - {2}{37.71112pt}\LT@entry - {3}{22.94998pt}\LT@entry - {2}{31.92967pt}\LT@entry - {3}{22.94998pt}\LT@entry - {2}{41.763pt}} -\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{10}{table.0.5}} -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Podrobna analiza vseh spremenljivk po sklopih}{11}{subsection.0.4.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.1}Infrastruktura in urniki}{11}{subsubsection.0.4.2.1}} -\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces Infrastruktura in urniki - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{11}{table.caption.6}} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Infrastruktura in urniki - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{11}{figure.caption.7}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{12}{subsubsection.0.4.2.2}} -\@writefile{lot}{\contentsline {table}{\numberline {7}{\ignorespaces \IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij\relax }}{12}{table.caption.8}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{12}{subsubsection.0.4.2.3}} -\@writefile{lot}{\contentsline {table}{\numberline {8}{\ignorespaces Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?\relax }}{12}{table.caption.9}} -\@writefile{lot}{\contentsline {table}{\numberline {9}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Navedite zakaj. \relax }}{12}{table.0.9}} -\gdef \LT@iv {\LT@entry - {1}{498.54057pt}} -\gdef \LT@v {\LT@entry - {1}{498.54057pt}} -\gdef \LT@vi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@vii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@viii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.4}Izbira predmeta na drugih programih UL }{14}{subsubsection.0.4.2.4}} -\@writefile{lot}{\contentsline {table}{\numberline {10}{\ignorespaces Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:\relax }}{14}{table.caption.10}} -\@writefile{lot}{\contentsline {table}{\numberline {11}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?\relax }}{14}{table.0.11}} -\@writefile{lot}{\contentsline {table}{\numberline {12}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kateri predmet ste izbrali?\relax }}{14}{table.0.12}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.5}Izbira predmeta izven UL }{14}{subsubsection.0.4.2.5}} -\@writefile{lot}{\contentsline {table}{\numberline {13}{\ignorespaces Izbral/a sem si izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi.\relax }}{14}{table.caption.11}} -\@writefile{lot}{\contentsline {table}{\numberline {14}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Na kateri drugi univerzi ste izbrali izbirni predmet?\relax }}{14}{table.0.14}} -\@writefile{lot}{\contentsline {table}{\numberline {15}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kateri predmet ste izbrali?\relax }}{14}{table.0.15}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.6}Zadovoljstvo z izvajanjem programov}{16}{subsubsection.0.4.2.6}} -\@writefile{lot}{\contentsline {table}{\numberline {16}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{16}{table.caption.12}} -\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{16}{figure.caption.13}} -\gdef \LT@ix {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.7}Primerna oblika izvedbe predmetov}{17}{subsubsection.0.4.2.7}} -\@writefile{lot}{\contentsline {table}{\numberline {17}{\ignorespaces Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?\relax }}{17}{table.caption.14}} -\@writefile{lot}{\contentsline {table}{\numberline {18}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Navedite, zakaj:\relax }}{17}{table.0.18}} -\gdef \LT@x {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {19}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z izvajanjem organiziranih oblik \IeC {\v s}tudija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)\relax }}{18}{table.0.19}} -\gdef \LT@xi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.8}Temeljni/obvezni izbirni predmeti }{19}{subsubsection.0.4.2.8}} -\@writefile{lot}{\contentsline {table}{\numberline {20}{\ignorespaces Ali ste imeli v leto\IeC {\v s}njem letu temeljne obvezne predmete?\relax }}{19}{table.caption.15}} -\@writefile{lot}{\contentsline {table}{\numberline {21}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?\relax }}{19}{table.0.21}} -\@writefile{lot}{\contentsline {table}{\numberline {22}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?\relax }}{19}{table.0.22}} -\gdef \LT@xiii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.9}Izbirni predmeti }{20}{subsubsection.0.4.2.9}} -\@writefile{lot}{\contentsline {table}{\numberline {23}{\ignorespaces Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?\relax }}{20}{table.caption.16}} -\@writefile{lot}{\contentsline {table}{\numberline {24}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?\relax }}{20}{table.0.24}} -\gdef \LT@xiv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {25}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (izbirnih) predmetih?\relax }}{21}{table.0.25}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.10}Pomo\IeC {\v c} in podpora mentorja}{22}{subsubsection.0.4.2.10}} -\@writefile{lot}{\contentsline {table}{\numberline {26}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{22}{table.caption.17}} -\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{22}{figure.caption.18}} -\gdef \LT@xv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {27}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?\relax }}{23}{table.0.27}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.11}Doktorska disertacija }{23}{subsubsection.0.4.2.11}} -\@writefile{lot}{\contentsline {table}{\numberline {28}{\ignorespaces Ali ste pred vpisom na doktorski \IeC {\v s}tudij \IeC {\v z}e imeli idejo/raziskovalni na\IeC {\v c}rt za doktorsko disertacijo:\relax }}{23}{table.caption.19}} -\gdef \LT@xvi {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {29}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Ali ste \IeC {\v z}e razmi\IeC {\v s}ljali ali za\IeC {\v c}eli pisati \IeC {\v c}lanek, ki ga morate objaviti pred zagovorom disertacije? Kak\IeC {\v s}ne te\IeC {\v z}ave pri\IeC {\v c}akujete ali \IeC {\v z}e imate v zvezi s tem?\relax }}{24}{table.0.29}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{25}{subsubsection.0.4.2.12}} -\@writefile{lot}{\contentsline {table}{\numberline {30}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{25}{table.caption.20}} -\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{25}{figure.caption.21}} -\gdef \LT@xvii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {31}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z raziskovalnim delom v okviru \IeC {\v s}tudija?\relax }}{26}{table.0.31}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{27}{subsubsection.0.4.2.13}} -\@writefile{lot}{\contentsline {table}{\numberline {32}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{27}{table.caption.22}} -\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{27}{figure.caption.23}} -\gdef \LT@xviii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xix {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {33}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Va\IeC {\v s}i predlogi glede delovanja referata in svetovanja \IeC {\v s}tudentom.\relax }}{28}{table.0.33}} -\@writefile{lot}{\contentsline {table}{\numberline {34}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Na doktorski \IeC {\v s}tudij ste se gotovo vpisali z dolo\IeC {\v c}enimi pri\IeC {\v c}akovanji. Ali je prvo leto \IeC {\v s}tudija izpolnilo va\IeC {\v s}a pri\IeC {\v c}akovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?\relax }}{28}{table.0.34}} -\gdef \LT@xx {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxi {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{30}{subsubsection.0.4.2.14}} -\@writefile{lot}{\contentsline {table}{\numberline {35}{\ignorespaces Kako \IeC {\v s}tudirate:\relax }}{30}{table.caption.24}} -\@writefile{lot}{\contentsline {table}{\numberline {36}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Sem doktorski \IeC {\v s}tudent/doktorska \IeC {\v s}tudentka, ki ima \IeC {\v s}tipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):\relax }}{30}{table.0.36}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.15}Razlog \IeC {\v s}tudija}{30}{subsubsection.0.4.2.15}} -\@writefile{lot}{\contentsline {table}{\numberline {37}{\ignorespaces Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij?\relax }}{30}{table.caption.25}} -\@writefile{lot}{\contentsline {table}{\numberline {38}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Drugo:\relax }}{30}{table.0.38}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.16}Odlo\IeC {\v c}itev o vpisu}{30}{subsubsection.0.4.2.16}} -\@writefile{lot}{\contentsline {table}{\numberline {39}{\ignorespaces \IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:\relax }}{31}{table.caption.26}} -\gdef \LT@xxii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.17}Alternativni vpis}{32}{subsubsection.0.4.2.17}} -\@writefile{lot}{\contentsline {table}{\numberline {40}{\ignorespaces Kam bi se vpisali?\relax }}{32}{table.caption.27}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.18}Dodatni komentarji \IeC {\v s}tudentov}{32}{subsubsection.0.4.2.18}} -\@writefile{lot}{\contentsline {table}{\numberline {41}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj, kar ni bilo zajeto v anketi?\relax }}{32}{table.0.41}} -\@writefile{toc}{\contentsline {section}{\numberline {5.}Podrobne analize: Drugi letnik}{33}{section.0.5}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Analiza dejavnikov in vsebinskih sklopov}{33}{subsection.0.5.1}} -\@writefile{lot}{\contentsline {table}{\numberline {42}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{33}{table.caption.28}} -\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{34}{figure.caption.29}} -\@writefile{lot}{\contentsline {table}{\numberline {43}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{35}{table.caption.30}} -\gdef \LT@xxiii {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{34.66718pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{52.44992pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{37.71112pt}\LT@entry - {4}{22.94998pt}\LT@entry - {2}{31.92967pt}\LT@entry - {3}{22.94998pt}\LT@entry - {2}{41.763pt}} -\@writefile{lot}{\contentsline {table}{\numberline {44}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{36}{table.0.44}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Podrobna analiza vseh spremenljivk po sklopih}{37}{subsection.0.5.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.1}Infrastruktura in urniki}{37}{subsubsection.0.5.2.1}} -\@writefile{lot}{\contentsline {table}{\numberline {45}{\ignorespaces Infrastruktura in urniki - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{37}{table.caption.31}} -\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Infrastruktura in urniki - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{37}{figure.caption.32}} -\gdef \LT@xxiv {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{38}{subsubsection.0.5.2.2}} -\@writefile{lot}{\contentsline {table}{\numberline {46}{\ignorespaces \IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij\relax }}{38}{table.caption.33}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{38}{subsubsection.0.5.2.3}} -\@writefile{lot}{\contentsline {table}{\numberline {47}{\ignorespaces Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?\relax }}{38}{table.caption.34}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.4}Ustreznost trajanja doktorskega \IeC {\v s}tudija}{38}{subsubsection.0.5.2.4}} -\@writefile{lot}{\contentsline {table}{\numberline {49}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Navedite zakaj. \relax }}{38}{table.0.49}} -\@writefile{lot}{\contentsline {table}{\numberline {48}{\ignorespaces Ali ocenjujete, da je triletno trajanje doktorskega \IeC {\v s}tudija ustrezno?\relax }}{40}{table.caption.35}} -\gdef \LT@xxv {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxvi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxvii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.5}Izbira predmeta na drugih programih UL }{41}{subsubsection.0.5.2.5}} -\@writefile{lot}{\contentsline {table}{\numberline {50}{\ignorespaces Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:\relax }}{41}{table.caption.36}} -\@writefile{lot}{\contentsline {table}{\numberline {51}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Iz katerega drugega doktorskega \IeC {\v s}tudijskega programa UL ste si izbrali izbirni predmet? \relax }}{41}{table.0.51}} -\@writefile{lot}{\contentsline {table}{\numberline {52}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kateri predmet ste izbrali?\relax }}{41}{table.0.52}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.6}Izbira predmeta izven UL }{41}{subsubsection.0.5.2.6}} -\@writefile{lot}{\contentsline {table}{\numberline {53}{\ignorespaces Izbral/a sem si izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi.\relax }}{41}{table.caption.37}} -\@writefile{lot}{\contentsline {table}{\numberline {54}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kateri predmet ste izbrali?\relax }}{41}{table.0.54}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.7}Zadovoljstvo z izvajanjem programov}{42}{subsubsection.0.5.2.7}} -\@writefile{lot}{\contentsline {table}{\numberline {55}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{42}{table.caption.38}} -\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{42}{figure.caption.39}} -\gdef \LT@xxviii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.8}Primerna oblika izvedbe predmetov}{43}{subsubsection.0.5.2.8}} -\@writefile{lot}{\contentsline {table}{\numberline {56}{\ignorespaces Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?\relax }}{43}{table.caption.40}} -\@writefile{lot}{\contentsline {table}{\numberline {57}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Navedite zakaj: \relax }}{43}{table.0.57}} -\gdef \LT@xxix {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {58}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z izvajanjem organiziranih oblik \IeC {\v s}tudija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)\relax }}{44}{table.0.58}} -\gdef \LT@xxx {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxi {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.9}Temeljni/obvezni izbirni predmeti }{45}{subsubsection.0.5.2.9}} -\@writefile{lot}{\contentsline {table}{\numberline {59}{\ignorespaces Ali ste imeli v leto\IeC {\v s}njem letu temeljne obvezne predmete?\relax }}{45}{table.caption.41}} -\@writefile{lot}{\contentsline {table}{\numberline {60}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?\relax }}{45}{table.0.60}} -\@writefile{lot}{\contentsline {table}{\numberline {61}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?\relax }}{45}{table.0.61}} -\gdef \LT@xxxii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxiii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.10}Izbirni predmeti }{46}{subsubsection.0.5.2.10}} -\@writefile{lot}{\contentsline {table}{\numberline {62}{\ignorespaces Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?\relax }}{46}{table.caption.42}} -\@writefile{lot}{\contentsline {table}{\numberline {63}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?\relax }}{46}{table.0.63}} -\@writefile{lot}{\contentsline {table}{\numberline {64}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (izbirnih) predmetih?\relax }}{46}{table.0.64}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.11}Pomo\IeC {\v c} in podpora mentorja}{48}{subsubsection.0.5.2.11}} -\@writefile{lot}{\contentsline {table}{\numberline {65}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{48}{table.caption.43}} -\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{48}{figure.caption.44}} -\gdef \LT@xxxiv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {66}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?\relax }}{49}{table.0.66}} -\@writefile{lot}{\contentsline {table}{\numberline {67}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Kak\IeC {\v s}ne so va\IeC {\v s}e izku\IeC {\v s}nje s prijavo dispozicije doktorske naloge?\relax }}{49}{table.0.67}} -\gdef \LT@xxxv {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxvi {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {68}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Ali ste \IeC {\v z}e razmi\IeC {\v s}ljali ali za\IeC {\v c}eli pisati \IeC {\v c}lanek, ki ga morate objaviti pred zagovorom disertacije? Kak\IeC {\v s}ne te\IeC {\v z}ave pri\IeC {\v c}akujete ali \IeC {\v z}e imate v zvezi s tem?\relax }}{51}{table.0.68}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{52}{subsubsection.0.5.2.12}} -\@writefile{lot}{\contentsline {table}{\numberline {69}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{52}{table.caption.45}} -\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{52}{figure.caption.46}} -\gdef \LT@xxxvii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {70}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z raziskovalnim delom v okviru \IeC {\v s}tudija?\relax }}{53}{table.0.70}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{54}{subsubsection.0.5.2.13}} -\@writefile{lot}{\contentsline {table}{\numberline {71}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (opisne statistike) po \IeC {\v s}tudijskem programu\relax }}{54}{table.caption.47}} -\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij) po programih\relax }}{54}{figure.caption.48}} -\gdef \LT@xxxviii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {72}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Va\IeC {\v s}i predlogi glede delovanja referata in svetovanja \IeC {\v s}tudentom.\relax }}{55}{table.0.72}} -\@writefile{lot}{\contentsline {table}{\numberline {73}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Na doktorski \IeC {\v s}tudij ste se gotovo vpisali z dolo\IeC {\v c}enimi pri\IeC {\v c}akovanji. Ali sta prvi dve leti \IeC {\v s}tudija izpolnili va\IeC {\v s}a pri\IeC {\v c}akovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?\relax }}{55}{table.0.73}} -\gdef \LT@xxxix {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xl {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xli {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{56}{subsubsection.0.5.2.14}} -\@writefile{lot}{\contentsline {table}{\numberline {74}{\ignorespaces Kako \IeC {\v s}tudirate:\relax }}{56}{table.caption.49}} -\@writefile{lot}{\contentsline {table}{\numberline {75}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Sem doktorski \IeC {\v s}tudent/doktorska \IeC {\v s}tudentka, ki ima \IeC {\v s}tipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):\relax }}{56}{table.0.75}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.15}Razlog \IeC {\v s}tudija}{56}{subsubsection.0.5.2.15}} -\@writefile{lot}{\contentsline {table}{\numberline {76}{\ignorespaces Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij?\relax }}{56}{table.caption.50}} -\@writefile{lot}{\contentsline {table}{\numberline {77}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: Drugo:\relax }}{56}{table.0.77}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.16}Odlo\IeC {\v c}itev o vpisu}{57}{subsubsection.0.5.2.16}} -\@writefile{lot}{\contentsline {table}{\numberline {78}{\ignorespaces \IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:\relax }}{57}{table.caption.51}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.17}Alternativni vpis}{57}{subsubsection.0.5.2.17}} -\gdef \LT@xlii {\LT@entry - {1}{268.0748pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{32.46019pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.03229pt}\LT@entry - {1}{29.62881pt}} -\gdef \LT@xliii {\LT@entry - {1}{253.84842pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{32.46019pt}\LT@entry - {1}{32.18567pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{29.9245pt}} -\gdef \LT@xliv {\LT@entry - {1}{253.84842pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{32.46019pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.03229pt}} -\gdef \LT@xlv {\LT@entry - {1}{296.52756pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{32.46019pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{34.58914pt}} -\@writefile{toc}{\contentsline {section}{\numberline {6.}Analize skupnih spremenljivk po programih in po letnikih}{58}{section.0.6}} -\@writefile{lot}{\contentsline {table}{\numberline {79}{\ignorespaces Infrastruktura in urniki - po programih in po letnikih\relax }}{58}{table.0.79}} -\@writefile{lot}{\contentsline {table}{\numberline {80}{\ignorespaces Zadovoljstvo z izvajanjem programov - po programih in po letnikih\relax }}{58}{table.0.80}} -\@writefile{lot}{\contentsline {table}{\numberline {81}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - po programih in po letnikih\relax }}{58}{table.0.81}} -\@writefile{lot}{\contentsline {table}{\numberline {82}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - po programih in po letnikih\relax }}{58}{table.0.82}} -\gdef \LT@xlvi {\LT@entry - {1}{296.52756pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{32.46019pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{29.77112pt}\LT@entry - {1}{32.32797pt}} -\@writefile{lot}{\contentsline {table}{\numberline {82}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - po programih in po letnikih - \textit {nadaljevanje}\relax }}{59}{table.0.82}} -\@writefile{lot}{\contentsline {table}{\numberline {83}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - po programih in po letnikih\relax }}{59}{table.0.83}} -\@writefile{lot}{\contentsline {table}{\numberline {84}{\ignorespaces Povpre\IeC {\v c}no \IeC {\v s}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij - po programih in po letnikih\relax }}{60}{table.caption.52}} -\@writefile{lot}{\contentsline {table}{\numberline {85}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{60}{table.caption.53}} -\@writefile{lot}{\contentsline {table}{\numberline {86}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:"\relax }}{60}{table.caption.54}} -\@writefile{lot}{\contentsline {table}{\numberline {87}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi."\relax }}{61}{table.caption.55}} -\@writefile{lot}{\contentsline {table}{\numberline {88}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?"\relax }}{61}{table.caption.56}} -\@writefile{lot}{\contentsline {table}{\numberline {89}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu temeljne obvezne predmete?"\relax }}{61}{table.caption.57}} -\@writefile{lot}{\contentsline {table}{\numberline {90}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?"\relax }}{62}{table.caption.58}} -\@writefile{lot}{\contentsline {table}{\numberline {91}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{62}{table.caption.59}} -\@writefile{lot}{\contentsline {table}{\numberline {92}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij?"\relax }}{62}{table.caption.60}} -\@writefile{lot}{\contentsline {table}{\numberline {93}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "\IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:"\relax }}{62}{table.caption.61}} -\@writefile{lot}{\contentsline {table}{\numberline {94}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kam bi se vpisali?"\relax }}{62}{table.caption.62}} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.out b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.out deleted file mode 100644 index a233a3eeb..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.out +++ /dev/null @@ -1,47 +0,0 @@ -\BOOKMARK [1][-]{section.0.1}{Povzetek}{}% 1 -\BOOKMARK [2][-]{subsection.0.1.1}{ Prvi letnik}{section.0.1}% 2 -\BOOKMARK [2][-]{subsection.0.1.2}{ Drugi letnik}{section.0.1}% 3 -\BOOKMARK [1][-]{section.0.2}{Metodologija}{}% 4 -\BOOKMARK [1][-]{section.0.3}{Sodelovanje \235tudentov v anketi}{}% 5 -\BOOKMARK [1][-]{section.0.4}{Podrobne analize: Prvi letnik}{}% 6 -\BOOKMARK [2][-]{subsection.0.4.1}{Analiza dejavnikov}{section.0.4}% 7 -\BOOKMARK [2][-]{subsection.0.4.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.4}% 8 -\BOOKMARK [3][-]{subsubsection.0.4.2.1}{Infrastruktura in urniki}{subsection.0.4.2}% 9 -\BOOKMARK [3][-]{subsubsection.0.4.2.2}{\227tevilo tedensko porabljenih ur za doktorski \235tudij}{subsection.0.4.2}% 10 -\BOOKMARK [3][-]{subsubsection.0.4.2.3}{Ustreznost casa za doktorski \235tudij}{subsection.0.4.2}% 11 -\BOOKMARK [3][-]{subsubsection.0.4.2.4}{Izbira predmeta na drugih programih UL }{subsection.0.4.2}% 12 -\BOOKMARK [3][-]{subsubsection.0.4.2.5}{Izbira predmeta izven UL }{subsection.0.4.2}% 13 -\BOOKMARK [3][-]{subsubsection.0.4.2.6}{Zadovoljstvo z izvajanjem programov}{subsection.0.4.2}% 14 -\BOOKMARK [3][-]{subsubsection.0.4.2.7}{Primerna oblika izvedbe predmetov}{subsection.0.4.2}% 15 -\BOOKMARK [3][-]{subsubsection.0.4.2.8}{Temeljni/obvezni izbirni predmeti }{subsection.0.4.2}% 16 -\BOOKMARK [3][-]{subsubsection.0.4.2.9}{Izbirni predmeti }{subsection.0.4.2}% 17 -\BOOKMARK [3][-]{subsubsection.0.4.2.10}{Pomoc in podpora mentorja}{subsection.0.4.2}% 18 -\BOOKMARK [3][-]{subsubsection.0.4.2.11}{Doktorska disertacija }{subsection.0.4.2}% 19 -\BOOKMARK [3][-]{subsubsection.0.4.2.12}{Del \235tudija in ostale aktivnosti v tujini}{subsection.0.4.2}% 20 -\BOOKMARK [3][-]{subsubsection.0.4.2.13}{Svetovalna pomoc \235tudentom}{subsection.0.4.2}% 21 -\BOOKMARK [3][-]{subsubsection.0.4.2.14}{Nacin \235tudija}{subsection.0.4.2}% 22 -\BOOKMARK [3][-]{subsubsection.0.4.2.15}{Razlog \235tudija}{subsection.0.4.2}% 23 -\BOOKMARK [3][-]{subsubsection.0.4.2.16}{Odlocitev o vpisu}{subsection.0.4.2}% 24 -\BOOKMARK [3][-]{subsubsection.0.4.2.17}{Alternativni vpis}{subsection.0.4.2}% 25 -\BOOKMARK [3][-]{subsubsection.0.4.2.18}{Dodatni komentarji \235tudentov}{subsection.0.4.2}% 26 -\BOOKMARK [1][-]{section.0.5}{Podrobne analize: Drugi letnik}{}% 27 -\BOOKMARK [2][-]{subsection.0.5.1}{Analiza dejavnikov in vsebinskih sklopov}{section.0.5}% 28 -\BOOKMARK [2][-]{subsection.0.5.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.5}% 29 -\BOOKMARK [3][-]{subsubsection.0.5.2.1}{Infrastruktura in urniki}{subsection.0.5.2}% 30 -\BOOKMARK [3][-]{subsubsection.0.5.2.2}{\227tevilo tedensko porabljenih ur za doktorski \235tudij}{subsection.0.5.2}% 31 -\BOOKMARK [3][-]{subsubsection.0.5.2.3}{Ustreznost casa za doktorski \235tudij}{subsection.0.5.2}% 32 -\BOOKMARK [3][-]{subsubsection.0.5.2.4}{Ustreznost trajanja doktorskega \235tudija}{subsection.0.5.2}% 33 -\BOOKMARK [3][-]{subsubsection.0.5.2.5}{Izbira predmeta na drugih programih UL }{subsection.0.5.2}% 34 -\BOOKMARK [3][-]{subsubsection.0.5.2.6}{Izbira predmeta izven UL }{subsection.0.5.2}% 35 -\BOOKMARK [3][-]{subsubsection.0.5.2.7}{Zadovoljstvo z izvajanjem programov}{subsection.0.5.2}% 36 -\BOOKMARK [3][-]{subsubsection.0.5.2.8}{Primerna oblika izvedbe predmetov}{subsection.0.5.2}% 37 -\BOOKMARK [3][-]{subsubsection.0.5.2.9}{Temeljni/obvezni izbirni predmeti }{subsection.0.5.2}% 38 -\BOOKMARK [3][-]{subsubsection.0.5.2.10}{Izbirni predmeti }{subsection.0.5.2}% 39 -\BOOKMARK [3][-]{subsubsection.0.5.2.11}{Pomoc in podpora mentorja}{subsection.0.5.2}% 40 -\BOOKMARK [3][-]{subsubsection.0.5.2.12}{Del \235tudija in ostale aktivnosti v tujini}{subsection.0.5.2}% 41 -\BOOKMARK [3][-]{subsubsection.0.5.2.13}{Svetovalna pomoc \235tudentom}{subsection.0.5.2}% 42 -\BOOKMARK [3][-]{subsubsection.0.5.2.14}{Nacin \235tudija}{subsection.0.5.2}% 43 -\BOOKMARK [3][-]{subsubsection.0.5.2.15}{Razlog \235tudija}{subsection.0.5.2}% 44 -\BOOKMARK [3][-]{subsubsection.0.5.2.16}{Odlocitev o vpisu}{subsection.0.5.2}% 45 -\BOOKMARK [3][-]{subsubsection.0.5.2.17}{Alternativni vpis}{subsection.0.5.2}% 46 -\BOOKMARK [1][-]{section.0.6}{Analize skupnih spremenljivk po programih in po letnikih}{}% 47 diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.tex b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.tex deleted file mode 100644 index 572710619..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.tex +++ /dev/null @@ -1,2244 +0,0 @@ -% Skripta 1: po institucijah - -\documentclass[11pt,a4paper]{report}\usepackage[]{graphicx}\usepackage[]{color} -%% maxwidth is the original width if it is less than linewidth -%% otherwise use linewidth (to make sure the graphics do not exceed the margin) -\makeatletter -\def\maxwidth{ % - \ifdim\Gin@nat@width>\linewidth - \linewidth - \else - \Gin@nat@width - \fi -} -\makeatother - -\definecolor{fgcolor}{rgb}{0.345, 0.345, 0.345} -\newcommand{\hlnum}[1]{\textcolor[rgb]{0.686,0.059,0.569}{#1}}% -\newcommand{\hlstr}[1]{\textcolor[rgb]{0.192,0.494,0.8}{#1}}% -\newcommand{\hlcom}[1]{\textcolor[rgb]{0.678,0.584,0.686}{\textit{#1}}}% -\newcommand{\hlopt}[1]{\textcolor[rgb]{0,0,0}{#1}}% -\newcommand{\hlstd}[1]{\textcolor[rgb]{0.345,0.345,0.345}{#1}}% -\newcommand{\hlkwa}[1]{\textcolor[rgb]{0.161,0.373,0.58}{\textbf{#1}}}% -\newcommand{\hlkwb}[1]{\textcolor[rgb]{0.69,0.353,0.396}{#1}}% -\newcommand{\hlkwc}[1]{\textcolor[rgb]{0.333,0.667,0.333}{#1}}% -\newcommand{\hlkwd}[1]{\textcolor[rgb]{0.737,0.353,0.396}{\textbf{#1}}}% -\let\hlipl\hlkwb - -\usepackage{framed} -\makeatletter -\newenvironment{kframe}{% - \def\at@end@of@kframe{}% - \ifinner\ifhmode% - \def\at@end@of@kframe{\end{minipage}}% - \begin{minipage}{\columnwidth}% - \fi\fi% - \def\FrameCommand##1{\hskip\@totalleftmargin \hskip-\fboxsep - \colorbox{shadecolor}{##1}\hskip-\fboxsep - % There is no \\@totalrightmargin, so: - \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}% - \MakeFramed {\advance\hsize-\width - \@totalleftmargin\z@ \linewidth\hsize - \@setminipage}}% - {\par\unskip\endMakeFramed% - \at@end@of@kframe} -\makeatother - -\definecolor{shadecolor}{rgb}{.97, .97, .97} -\definecolor{messagecolor}{rgb}{0, 0, 0} -\definecolor{warningcolor}{rgb}{1, 0, 1} -\definecolor{errorcolor}{rgb}{1, 0, 0} -\newenvironment{knitrout}{}{} % an empty environment to be redefined in TeX - -\usepackage{alltt} -\usepackage[cm]{fullpage} -\newcommand*\rot{\rotatebox{90}} -%\zmanjša robove dokumenta -%\usepackage{fullpage} -% Spremeni razmik med naslovom kazala vrhom strani -\usepackage{titlesec} -\titleformat{\chapter}[display] - {\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge} -\titlespacing*{\chapter}{0pt}{-15pt}{25pt} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%slovenski napisi -\usepackage{sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -%Hiperlink tabele -% Pomembno, da pravilno prelomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage[breaklinks]{hyperref} -% Times font -\usepackage{times} -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} -\usepackage{breakurl} -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri poglavjih -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -\usepackage{graphicx} -\graphicspath{ {logo/} } -% Uporabimo za prilagajanje glave in noge porocila -\usepackage{fancyhdr} - - - - - - -% Naslovnica - -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{Biotehniška fakulteta}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt - -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\fancypagestyle{prvi}{ - \fancyhead[R]{\small{Prvi letnik}} - -} - -\fancypagestyle{drugi}{ - \fancyhead[R]{\small{Drugi letnik}} -} - -\fancypagestyle{oba}{ - \fancyhead[R]{\small{}} -} - -% Pomembno da so podpoglavja ostevilcena -\setcounter{secnumdepth}{3} -\setcounter{tocdepth}{3} -\IfFileExists{upquote.sty}{\usepackage{upquote}}{} -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{logo_BF} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2in]}}} -\textup{\LARGE \textbf{Biotehniška fakulteta} \\[0.3in] \textcolor[HTML]{B4162C} {\textbf{Študentska anketa o študiju na III. stopnji}}} \\[0.5in] -{\large Študijsko leto 2016/17 \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - - - - - - - -\section{Povzetek}Povzemamo glavne ugotovitve evalvacijske ankete zadovoljstva študentov tretje stopnje "BF (2016/17)". V anketi je odgovarjalo 4 študentov prvega letnika (od 6 vpisanih) in 28 študentov drugega letnika (od 35 vpisanih). -V povzetku se omejujemo predvsem na prikaz ocen za dejavnike splošnega zadovoljstva na lestvici 1 - 5. Povprečja, ki izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji). \\ \\ - -\vspace*{-1cm}\subsection{ Prvi letnik} Odlično je ocenjen naslednji sklop (mediana dejavnikov je v intervalu 4.5 - 5.0): \begin{itemize}\item \textbf{Svetovalna pomoč študentom:} \textit{'Osebje študentskega referata je odzivno in učinkovito.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Osebje študentskega referata ima ustrezen odnos do študentov.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Uradne ure študentskega referata so primerne.'} (\textcolor[HTML]{006666}{\textbf{4.6}}) in \textit{'Informacije na spletnih straneh so dovolj jasne in celovite.'} (\textcolor[HTML]{006666}{\textbf{4.5}}). \end{itemize}Zelo dobro sta ocenjena naslednja sklopa (mediana dejavnikov je v intervalu 4.0 - 4.5): \begin{itemize}\item \textbf{Pomoč in podpora mentorja:} \textit{'Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti.'} (\textcolor[HTML]{006666}{\textbf{4.7}}), \textit{'Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu.'} (\textcolor[HTML]{006666}{\textbf{4.6}}), \textit{'Pogostost stikov z mentorjem/mentorico je primerna.'} (\textcolor[HTML]{006666}{\textbf{4.6}}), \textit{'Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.4}}) in \textit{'Pomoč mentorja pri pripravi znanstvenega članka je ustrezna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}).\item \textbf{Infrastruktura in urniki:} \textit{'Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu.'} (\textcolor[HTML]{006666}{\textbf{4.7}}), \textit{'Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a.'} (\textcolor[HTML]{006666}{\textbf{4.6}}), \textit{'S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a.'} (\textcolor[HTML]{006666}{\textbf{4.6}}), \textit{'Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}), \textit{'Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}) in \textit{'Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza.'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}). \end{itemize}V celoti gledano sta pozitivno ocenjena naslednja sklopa, ki pa imata še precej prostora za izboljšave (mediana dejavnikov je v intervalu 3.5 - 4.0): \begin{itemize}\item \textbf{Zadovoljstvo z izvajanjem programov:} \textit{'Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa.'} (\textbf{\textcolor[HTML]{36BF4B}{4.0}}), \textit{'Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji.'} (\textbf{\textcolor[HTML]{36BF4B}{4.0}}), \textit{'Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.).'} (3.9), \textit{'V okviru organiziranih oblik študija je bila spodbujena kritična razprava.'} (3.9) in \textit{'Ponudba izbirnih predmetov je ustrezna.'} (3.8).\item \textbf{Del študija in ostale aktivnosti v tujini:} \textit{'Imam možnost udeležbe na znanstvenih konferencah v tujini.'} (3.9), \textit{'Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini.'} (3.7), \textit{'Sem vključen/a v raziskovalno skupino / program / projekt.'} (3.6) in \textit{'Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini.'} (3.5). \end{itemize} Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana. \newline \newline Podrobna primerjava rezultatov z drugimi članicami UL je na povezavi \url{http://ul.1ka.si}.\newpage\subsection{ Drugi letnik} Odlično so ocenjeni naslednji sklopi (mediana dejavnikov je v intervalu 4.5 - 5.0): \begin{itemize}\item \textbf{Pomoč in podpora mentorja:} \textit{'Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti.'} (\textcolor[HTML]{006666}{\textbf{4.9}}), \textit{'Pogostost stikov z mentorjem/mentorico je primerna.'} (\textcolor[HTML]{006666}{\textbf{4.9}}), \textit{'Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu.'} (\textcolor[HTML]{006666}{\textbf{4.9}}), \textit{'Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga.'} (\textcolor[HTML]{006666}{\textbf{4.9}}), \textit{'Pomoč mentorja pri pripravi znanstvenega članka je ustrezna.'} (\textcolor[HTML]{006666}{\textbf{4.9}}) in \textit{'Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna.'} (\textcolor[HTML]{006666}{\textbf{4.9}}).\item \textbf{Svetovalna pomoč študentom:} \textit{'Osebje študentskega referata je odzivno in učinkovito.'} (\textcolor[HTML]{006666}{\textbf{5.0}}), \textit{'Osebje študentskega referata ima ustrezen odnos do študentov.'} (\textcolor[HTML]{006666}{\textbf{5.0}}), \textit{'Uradne ure študentskega referata so primerne.'} (\textcolor[HTML]{006666}{\textbf{4.9}}) in \textit{'Informacije na spletnih straneh so dovolj jasne in celovite.'} (\textcolor[HTML]{006666}{\textbf{4.8}}).\item \textbf{Infrastruktura in urniki:} \textit{'Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.).'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza.'} (\textcolor[HTML]{006666}{\textbf{4.6}}) in \textit{'Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}). \end{itemize}Zelo dobro je ocenjen naslednji sklop (mediana dejavnikov je v intervalu 4.0 - 4.5): \begin{itemize}\item \textbf{Zadovoljstvo z izvajanjem programov:} \textit{'Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}), \textit{'Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa.'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}), \textit{'Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji.'} (\textbf{\textcolor[HTML]{36BF4B}{4.1}}), \textit{'V okviru organiziranih oblik študija je bila spodbujena kritična razprava.'} (3.9) in \textit{'Ponudba izbirnih predmetov je ustrezna.'} (3.8). \end{itemize}V celoti gledano je pozitivno ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave (mediana dejavnikov je v intervalu 3.5 - 4.0): \begin{itemize}\item \textbf{Del študija in ostale aktivnosti v tujini:} \textit{'Sem vključen/a v raziskovalno skupino / program / projekt.'} (\textbf{\textcolor[HTML]{36BF4B}{4.1}}), \textit{'Imam možnost udeležbe na znanstvenih konferencah v tujini.'} (\textbf{\textcolor[HTML]{36BF4B}{4.1}}), \textit{'Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini.'} (3.8) in \textit{'Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini.'} (3.7). \end{itemize} Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana. \newline \newline Podrobna primerjava rezultatov z drugimi članicami UL je na povezavi \url{http://ul.1ka.si}.\newpage -%\vfill \hyperlink{thesentence}{*Način avtomatskega generiranja povzetka je opisan v prilogi 2.} -\tableofcontents -\newpage -\section{Metodologija} - - V okviru projekta Kakovost – Univerza v Ljubljani (KUL) je bila v letih 2013 in 2014 izvedena prenova študentskih anket, nato pa je s študijskim letom 2014/2015 v veljavo stopil tudi nov Pravilnik o študentskih anketah. Pravilnik ureja izvajanje šestih študentskih anket na vseh članicah Univerze v Ljubljani (podrobnosti so na {\url{http://ul.1ka.si}}). Ankete se izvajajo za predmete in pedagoge na vseh treh stopnjah, na prvih dveh stopnjah pa se izvaja tudi posebna anketa o splošnih vidikih študijskega procesa. Po pilotni izvedbi 2014/2015 so bile v študijskem letu 2015/2016 ankete prvič izvedene na vseh članicah. \\ - Anketa o doktorskem študiju se izvede v prvem (dostop do ankete: {\url{http://ul.1ka.si/dr1}}) in v drugem (dostop do ankete: {\url{http://ul.1ka.si/dr2}}) letniku doktorskega študija, in sicer po zaključenih izpitnih obdobjih od julija do konca drugega semestra. Opravljena ali izrecno zavrnjena anketa je predpogoj za vpis v naslednji letnik. \\ - Za razliko od prve in druge stopnje študenti na tretji stopnji ne dobijo dinamično generiranega vprašalnika glede na vpisane predmete, ampak imajo vsi enak vprašalnik. \\ - Anketi se sicer razlikujeta glede na letnik, vendar obe vsebujeta tudi pet skupnih sklopov s 25 vprašanji. Sklopi so naslednji: - \begin{itemize} - \item Svetovalna pomoč študentom - \item Infrastruktura in urniki - \item Pomoč in podpora mentorja - \item Zadovoljstvo z izvajanjem - \item Aktivnosti v tujini - \end{itemize} - - Vsak od sklopov praviloma vsebuje med 4 in 6 trditev, ki so jih študenti ocenjevali na lestvici med 1 in 5, pri čemer 1 pomeni »sploh se ne strinjam« in 5 »popolnoma se strinjam«. Oceni 1 in 2 sta torej negativni, oceni 4 in 5 pozitivni, ocena 3 pa je nevtralna (niti se ne strinjam, niti se strinjam). Poleg tega je vsaka anketa vsebovala še dodatna vprašanja zaprtega tipa in tudi odprta vprašanja, kjer so študenti lahko pojasnili svoja stališča. Pri tem so vse navedbe vključene v poročilo tako kot so bile zapisane v anketi, torej brez cenzure in jezikovnih posegov. Širša javnost ima dostop do vseh analiz, ki ne vključujejo odprtih odgovorov, kar je vključeno tudi v sumarno poročilo na nivoju UL. \\ - Zaradi morebitne občutljivosti odgovorov in potencialnega razkritja identitete je pričujoče poročilo namenjeno izključno interni uporabi (vodstvo in koordinator programa). \\ - Ker je pri nekaterih programih število anketirancev nizko, so ti podatki zgolj informativne narave in iz njih ne moremo sklepati na populacijo. V prilogi so zato ocene, kjer je število enot manjše od 10, označene z enojnim oklepajem, ocene, kjer je število enot manjše od 5, pa z dvema oklepajema. Če je število enot manjše od 4, je namesto povprečja izpisana pika, kar pomeni da gre za neničelno oceno, ki je zelo nenatančna.  \\ - V splošnem velja pri razumevanju pričujočih analiz upoštevati tudi splošna metodološka priporočila študentskih anket: {\url{http://ul.1ka.si/metodologija}}. \\ - Zaradi množice številk, ki so prikazana v poročilu, so za lažje pregledovanje najvišje in najnižje vrednosti obarvane. Pri tem velja upoštevati naravo ocenjevanja na tretji stopnji (mediana je okoli 4.2), kjer so ocene bistveno višje kot pri ocenjevanju na prvih dveh stopnjah (mediana je okoli 3.7), zato je tudi obarvanje nekoliko drugačno. V grobem sledimo načelu, da se označi spodnja in zgornja četrtina, dodatno pa je obarvana še spodnja in zgornja desetina. Označene (obarvane) so zato naslednje povprečne ocene: - \begin{itemize} - \item ocena od \textcolor[HTML]{B6321C}{\textbf{1.0}} do \textcolor[HTML]{B6321C}{\textbf{3.4}} pomeni razmeroma nizko vrednost, saj je študentov, ki so dali pozitivno oceno (4 ali 5), v grobem manj kot polovica, kar z drugimi besedami pomeni, da večina študentov ni zmogla pozitivne ocene; pri tem velja dodatno izpostaviti (čeprav ni drugače obarvano), da so še posebej kritične negativne ocene (pod 3.0). - \item ocena od \textcolor[HTML]{F58137}{\textbf{3.5}} do \textcolor[HTML]{F58137}{\textbf{3.9}} pomeni, da obstaja znaten prostor za izboljšave, saj je študentov, ki so dali odlično oceno (5) praviloma manj kot študentov, ki so dali oceno pod 4 in torej niso zmogli pozitivne ocene (1, 2, 3).  - \item ocene od 4.0 do do 4.4 predstavljajo glavnino vseh ocen in niso posebej obarvane; - \item ocena od \textcolor[HTML]{36BF4B}{\textbf{4.5}} do \textcolor[HTML]{36BF4B}{\textbf{4.7}} je pomemben mejnik odličnosti, saj v takem primeru ocene odlično (5) predstavljajo večino vseh ocen; - \item ocena nad (vključno) \textcolor[HTML]{006666}{\textbf{4.8}} označuje najvišji nivo odličnosti, saj ocene odlično (5) predstavljajo več kot tri četrtine vseh ocen.\\ - \end{itemize} -   - V rezultatih izpisan \textit{n} označuje število enot, ki so odgovorile na prvo vprašanje (pri ostalih vprašanjih je zato število odgovorov včasih nekoliko večje ali manjše). Dodati velja, da se v tabelah skupna povprečja  zaradi celic s premalo enotami, ki posamično niso izpisane, lahko razlikujejo od kombinacije objavljenih poprečij (Poglavje 4).\\ -   - V anketi so identificirani le študenti, ki so sodelovanje bodisi zavrnili bodisi sprejeli in odgovorili. Skupno število študentov, ki so se tako ali drugače odzvali, se razlikuje od vpisanih študentov, saj nekateri študenti k anketi niso niti pristopili. Večinoma gre pri tem za študente, ki so študij opustili oziroma se niso vpisali v naslednji letnik, saj je bila izpolnjena (ali zavrnjena) anketa predpogoj za vpis. \\Povzemimo še odziv študentov: - \begin{itemize} \item V prvi letnik je vpisanih 54 študentov, od tega je k anketi pristopilo 45 študentov, 4 študenti so nato sodelovanje izrecno zavrnili, preostalih 41 študentov pa je na anketo odgovorilo. \item V drugi letnik je vpisanih 35 študentov, od tega je k anketi pristopilo 31 študentov, 3 študenti so nato sodelovanje izrecno zavrnili, preostalih 28 študentov pa je na anketo odgovorilo. \end{itemize} -%\vfill -%*Besedilo je zajeto s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/} -\newpage -\section{Sodelovanje študentov v anketi} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov "BF" po letnikih in po programih. - -V koloni "odgovoril" je z enojnimi (<10) ali dvojnimi ((<5)) oklepaji označeno morebitno nižje število odgovorov "n" (glej poglavje Metodologija), ki v analizah zahteva več previdnosti pri interpretacijah. - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:16 2017 -\begin{longtable}{p{7.4cm}|cc|cc|cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - prvi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r|}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r|}{\textbf{ni prostopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Biomedicina interdisciplinarni (vpisani) & 6 & \textbf{100} & 1 & 17 & 5 & 83 & ((4)) & 67 & 1 & 17 \\ - Biomedicina interdisciplinarni (pristopili) & & & & & 5 & \textbf{100} & ((4)) & 80 & 1 & 20 \\ - Bioznanosti interdisciplinarni (vpisani) & 48 & \textbf{100} & 8 & 17 & 40 & 83 & 37 & 77 & 3 & 6 \\ - Bioznanosti interdisciplinarni (pristopili) & & & & & 40 & \textbf{100} & 37 & 93 & 3 & 8 \\ - \hline -Skupaj (vpisani) & 54 & \textbf{100} & 9 & 17 & 45 & 83 & 41 & 76 & 4 & 7 \\ - Skupaj (pristopili) & & & & & 45 & \textbf{100} & 41 & 91 & 4 & 9 \\ - \hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:16 2017 -\begin{longtable}{p{7.4cm}|cc|cc|cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - drugi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r|}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r|}{\textbf{ni pristopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Bioznanosti interdisciplinarni (vpisani) & 35 & \textbf{100} & 4 & 11 & 31 & 89 & 28 & 80 & 3 & 9 \\ - Bioznanosti interdisciplinarni (pristopili) & & & & & 31 & \textbf{100} & 28 & 90 & 3 & 10 \\ - \hline -Skupaj (vpisani) & 35 & \textbf{100} & 4 & 11 & 31 & 89 & 28 & 80 & 3 & 9 \\ - Skupaj (pristopili) & & & & & 31 & \textbf{100} & 28 & 90 & 3 & 10 \\ - \hline -\end{longtable} - - -\newpage\pagestyle{prvi}\section{Podrobne analize: Prvi letnik}\subsection{Analiza dejavnikov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so sicer vključene v agregatne analize tudi v poglavju 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:16 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Osebje študentskega referata je odzivno in učinkovito. & 41 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.7 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata ima ustrezen odnos do študentov. & 40 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.7 \\ - Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & 40 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.8 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & 41 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.9 \\ - Uradne ure študentskega referata so primerne. & 38 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.9 \\ - \rowcolor[gray]{0.95}Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & 41 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & 38 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.8 \\ - \rowcolor[gray]{0.95}S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & 38 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.8 \\ - Pogostost stikov z mentorjem/mentorico je primerna. & 41 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 1.0 \\ - \rowcolor[gray]{0.95}Informacije na spletnih straneh so dovolj jasne in celovite. & 41 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.8 \\ - Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & 40 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.0 \\ - \rowcolor[gray]{0.95}Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & 41 & 4.4 & 1.0 \\ - Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & 41 & 4.3 & 1.0 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & 37 & 4.3 & 1.1 \\ - Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & 38 & 4.2 & 1.1 \\ - \rowcolor[gray]{0.95}Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & 41 & 4.2 & 1.1 \\ - Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & 41 & 4.0 & 1.1 \\ - \rowcolor[gray]{0.95}Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & 40 & 4.0 & 1.3 \\ - Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & 38 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.0 \\ - \rowcolor[gray]{0.95}V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & 39 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.2 \\ - Imam možnost udeležbe na znanstvenih konferencah v tujini. & 40 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - \rowcolor[gray]{0.95}Ponudba izbirnih predmetov je ustrezna. & 41 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.2 \\ - Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & 38 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.3 \\ - \rowcolor[gray]{0.95}Sem vključen/a v raziskovalno skupino / program / projekt. & 40 & \textbf{\textcolor[HTML]{F58137}{3.6}} & 1.7 \\ - Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & 32 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.4 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/grafVsehDejavnikov_prvi.pdf} -\end{figure}Najboljše je ocenjen dejavnik "Osebje študentskega referata je odzivno in učinkovito." (\textbf{\textcolor[HTML]{006666}{4.8}}) \\ \\Najslabše je ocenjen dejavnik "Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini." (\textbf{\textcolor[HTML]{F58137}{3.5}})\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:17 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 41 & 1 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.7 \\ - Ustrezen odnos osebja & 40 & 1 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.7 \\ - Uradne ure študentskega ref. & 38 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.9 \\ - Celovite info. na spletni str. & 41 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.8 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}Odzivnost mentorja po el. pošti & 41 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.9 \\ - \rowcolor[gray]{0.95}Mentor mi nudi podporo & 41 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem & 41 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 1.0 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri težavah & 40 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.0 \\ - \rowcolor[gray]{0.95}Ustrezno svetovanje mentorja & 41 & 1 & 5 & 4.4 & 1.0 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri znan. čl. & 37 & 1 & 5 & 4.3 & 1.1 \\ - \multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ Pravilno navedeni izvajalci & 40 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.8 \\ - Razpored izvajanja & 38 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.8 \\ - Spremembe poteka & 38 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.8 \\ - Infrastr. za pridobivanje virov & 41 & 1 & 5 & 4.3 & 1.0 \\ - Druga infrastruktura & 38 & 1 & 5 & 4.2 & 1.1 \\ - Razpored ur mi ustreza & 41 & 1 & 5 & 4.2 & 1.1 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & 41 & 1 & 5 & 4.0 & 1.1 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & 40 & 1 & 5 & 4.0 & 1.3 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & 38 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.0 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & 39 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.2 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & 41 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.2 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 40 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - Del študija ali razis. dela v tujini & 38 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.3 \\ - Vključenost v razis. sk. & 40 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.6}} & 1.7 \\ - Možnost študija/razis. dela v tuj. & 32 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.4 \\ - \hline -\end{tabular} -\end{table} -\clearpage - -\newpage \begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:17 2017 - \hline \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 1 & 2 & 0 & 0 & 1 & 2 & 3 & 7 & 36 & 88 \\ - Ustrezen odnos osebja & 1 & 2 & 0 & 0 & 1 & 2 & 3 & 8 & 35 & 88 \\ - Uradne ure študentskega ref. & 1 & 3 & 0 & 0 & 3 & 8 & 5 & 13 & 29 & 76 \\ - Celovite info. na spletni str. & 1 & 2 & 0 & 0 & 3 & 7 & 10 & 24 & 27 & 66 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Odzivnost mentorja po el. pošti & 2 & 5 & 0 & 0 & 0 & 0 & 4 & 10 & 35 & 85 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Mentor mi nudi podporo & 1 & 2 & 0 & 0 & 0 & 0 & 13 & 32 & 27 & 66 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pogostost stikov z mentorjem & 2 & 5 & 1 & 2 & 0 & 0 & 7 & 17 & 31 & 76 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri težavah & 2 & 5 & 0 & 0 & 1 & 2 & 11 & 28 & 26 & 65 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustrezno svetovanje mentorja & 2 & 5 & 0 & 0 & 3 & 7 & 11 & 27 & 25 & 61 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri znan. čl. & 2 & 5 & 1 & 3 & 4 & 11 & 8 & 22 & 22 & 59 \\ - \multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ Pravilno navedeni izvajalci & 1 & 2 & 1 & 2 & 1 & 2 & 2 & 5 & 35 & 88 \\ - Razpored izvajanja & 1 & 3 & 0 & 0 & 2 & 5 & 8 & 21 & 27 & 71 \\ - Spremembe poteka & 1 & 3 & 0 & 0 & 2 & 5 & 8 & 21 & 27 & 71 \\ - Infrastr. za pridobivanje virov & 1 & 2 & 3 & 7 & 2 & 5 & 11 & 27 & 24 & 59 \\ - Druga infrastruktura & 1 & 3 & 2 & 5 & 6 & 16 & 9 & 24 & 20 & 53 \\ - Razpored ur mi ustreza & 1 & 2 & 3 & 7 & 6 & 15 & 9 & 22 & 22 & 54 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 2 & 5 & 2 & 5 & 5 & 12 & 15 & 37 & 17 & 41 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 3 & 8 & 3 & 8 & 4 & 10 & 12 & 30 & 18 & 45 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 1 & 3 & 3 & 8 & 6 & 16 & 15 & 39 & 13 & 34 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 1 & 3 & 5 & 13 & 7 & 18 & 10 & 26 & 16 & 41 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 2 & 5 & 4 & 10 & 9 & 22 & 12 & 29 & 14 & 34 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 3 & 8 & 4 & 10 & 6 & 15 & 9 & 22 & 18 & 45 \\ - Del študija ali razis. dela v tujini & 4 & 11 & 2 & 5 & 9 & 24 & 9 & 24 & 14 & 37 \\ - Vključenost v razis. sk. & 10 & 25 & 1 & 2 & 4 & 10 & 4 & 10 & 21 & 52 \\ - Možnost študija/razis. dela v tuj. & 3 & 9 & 6 & 19 & 6 & 19 & 5 & 16 & 12 & 38 \\ - \hline \end{longtable} \newpage - - - - -\clearpage - -\subsection{Podrobna analiza vseh spremenljivk po sklopih} - V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavje 6), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:17 2017 -\begin{table}[ht] -\centering -\caption{Infrastruktura in urniki - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|ccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Biomed.} & \bfseries{Biozna.} & \bfseries{Skupaj} \\ - \hline -Pravilno navedeni izvajalci & 40 & 1 & 5 & 0.8 & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Razpored izvajanja & 38 & 1 & 5 & 0.8 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Spremembe poteka & 38 & 1 & 5 & 0.8 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Infrastr. za pridobivanje virov & 41 & 1 & 5 & 1.0 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 4.4 & 4.3 \\ - Druga infrastruktura & 38 & 1 & 5 & 1.1 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 4.2 & 4.2 \\ - Razpored ur mi ustreza & 41 & 1 & 5 & 1.1 & 4.0 & 4.2 & 4.2 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Infrastruktura in urniki - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis1_1letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Število tedensko porabljenih ur za doktorski študij}Študenti so v povprečju tedensko za svoj doktorski študij porabili \textbf{23} ur. Standardni odklon znaša \textbf{17} ur.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Število tedensko porabljenih ur za doktorski študij} -\begin{tabular}{lp{3cm}p{1cm}p{1cm}} - \hline -\hline -\bfseries{Program} & \bfseries{Število ur} & \bfseries{n} & \bfseries{\%} \\ - \hline -Biomedicina interdisciplinarni & 20 & 2 & 5 \\ - Biomedicina interdisciplinarni & 24 & 1 & 3 \\ - Biomedicina interdisciplinarni & 40 & 1 & 3 \\ - Bioznanosti interdisciplinarni & 3 & 1 & 3 \\ - Bioznanosti interdisciplinarni & 5 & 7 & 18 \\ - Bioznanosti interdisciplinarni & 8 & 1 & 3 \\ - Bioznanosti interdisciplinarni & 10 & 5 & 13 \\ - Bioznanosti interdisciplinarni & 15 & 2 & 5 \\ - Bioznanosti interdisciplinarni & 20 & 7 & 18 \\ - Bioznanosti interdisciplinarni & 30 & 4 & 10 \\ - Bioznanosti interdisciplinarni & 40 & 2 & 5 \\ - Bioznanosti interdisciplinarni & 42 & 2 & 5 \\ - Bioznanosti interdisciplinarni & 45 & 1 & 3 \\ - Bioznanosti interdisciplinarni & 50 & 3 & 8 \\ - Bioznanosti interdisciplinarni & 80 & 1 & 3 \\ - \hline -Skupaj & 825 & 40 & 100 \\ - \hline -\hline -Povprečje & 23 & . & . \\ - Standardni odklon & 17 & . & . \\ - \hline -\end{tabular} -\end{table} - - -\subsubsection{Ustreznost časa za doktorski študij}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?} -\begin{tabular}{lccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\preveč}}}} - & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\premalo}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 1 & 25 & 2 & 50 & 1 & 25 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 23 & 62 & 0 & 0 & 14 & 38 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Navedite zakaj. } \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Veliko snovi.} \\ - \rowcolor[gray]{0.95}\textit{Čas, ki sem ga v tem štud. letu namenil za aktivnosti, povezane z doktorskim študijem (opravljanje predmetov), je bil precej neenakomerno razporejen. V prvi polovici leta sem delal precej intenzivno, v drugi pa manj. V povprečju pa menim da sem za pridobljene kredite namenil smiselno količino časa.} \\ - \textit{Čas, potreben za opravljanje obveznosti (tako pri študiju, kot tudi pri laboratorijskemu delu), prilagajam glede na količino dela. Zagotovo je časa dovolj, če je tudi organizacija prava.} \\ - \rowcolor[gray]{0.95}\textit{Zaradi službe v popoldanskem času ni vedno dovolj časa in energije za študij.} \\ - \textit{Čas si lahko razporejam tako, da mi ustreza.} \\ - \rowcolor[gray]{0.95}\textit{Glede na polno zaposlitev ob doktorskem študiju, namenim dosti časa za doktorski študij, vendar to tudi od sebe pričakujem.} \\ - \textit{Pri kar nekaj predmetih je potrebno napisati seminarsko nalogo, ki je v večini primerov sama sebi namen.} \\ - \rowcolor[gray]{0.95}\textit{Na srečo lahko združujem delo in študij, tako da lahko del obveznosti opravim znotraj delovnega časa.} \\ - \textit{self finaced, need extra jobs to survive the month, so need much more extra hours are to get the goals on faculty and to finish startrted study.} \\ - \rowcolor[gray]{0.95}\textit{Služba, družina} \\ - \textit{službene obveznosti} \\ - \rowcolor[gray]{0.95}\textit{Čas za raziskovalno delo imam v okviru zaposlitve kot mladi raziskovalec, poleg tega pa je potrebno občasno tudi delo izven delovnega časa. Zaenkrat delovne in študijske obvezosti obvladujem (nevem pa, če bo tako tudi ostalo...).} \\ - \textit{Zaradi obveznosti poleg doktorskega študija} \\ - \rowcolor[gray]{0.95}\textit{zaradi službenih obveznosti} \\ - \textit{Ostale obveznosti.} \\ - \rowcolor[gray]{0.95}\textit{Poleg študija tudi redno delam.} \\ - \textit{Zaradi ostalih obveznosti (delo,družina).} \\ - \rowcolor[gray]{0.95}\textit{Doktorski študij opravljam ob vseh delovnih obveznostih v službi in ostalih družinskih obveznostih.} \\ - \textit{Z vsakim odgovorom se porajajo nova vprašanja, na katera si želim odgovora. Žal je poleg študija potrebno opraviti tudi druge obveznosti.} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Izbira predmeta na drugih programih UL }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 1 & 25 & 3 & 75 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 4 & 11 & 33 & 89 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 4 & 11 & 33 & 89 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Bioznanosti} \\ - \rowcolor[gray]{0.95}\textit{Biomedicina} \\ - \textit{Varstvo okolja} \\ - \rowcolor[gray]{0.95}\textit{Biomedicina} \\ - \textit{Biomedicina} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kateri predmet ste izbrali?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Statistika} \\ - \rowcolor[gray]{0.95}\textit{Javno zdravje} \\ - \textit{Optična mikroskopija visoke ločljivosti - Konfokalna mikroskopija} \\ - \rowcolor[gray]{0.95}\textit{Optična mikroskopija visoke ločljivosti - konfokalna mikroskopija} \\ - \hline -\hline -\end{longtable} -\subsubsection{Izbira predmeta izven UL }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi.} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 1 & 25 & 3 & 75 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 5 & 14 & 32 & 86 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 5 & 14 & 32 & 86 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Na kateri drugi univerzi ste izbrali izbirni predmet?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Maribor} \\ - \rowcolor[gray]{0.95}\textit{University of South Bohemia, Faculty of Science} \\ - \textit{danska tehnična univerza} \\ - \rowcolor[gray]{0.95}\textit{Clausthal Technical University} \\ - \textit{Ekonomska fakulteta} \\ - \rowcolor[gray]{0.95}\textit{Fakulteta za računalništvo in informatika Fakulteta za elektrotehniko} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kateri predmet ste izbrali?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Asociaciske analize v celotnem genomu človeka} \\ - \rowcolor[gray]{0.95}\textit{Izbral sem 3 predmete.} \\ - \textit{Tehnike v biofilmih} \\ - \rowcolor[gray]{0.95}\textit{Plasmatechnologie} \\ - \textit{podjetništvo} \\ - \rowcolor[gray]{0.95}\textit{Računska biologija Zajem in računalniško podprta analiza slik} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Zadovoljstvo z izvajanjem programov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|ccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Biomed.} & \bfseries{Biozna.} & \bfseries{Skupaj} \\ - \hline -Zadovoljstvo z izvajanjem prog. & 41 & 1 & 5 & 1.1 & 4.3 & 4.0 & 4.0 \\ - Uporabnost za dr. dizertacijo & 40 & 1 & 5 & 1.3 & 4.0 & 4.0 & 4.0 \\ - Pridobitev generičnih znanj & 38 & 1 & 5 & 1.0 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 4.0 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Spodbujanje kritične razprave & 39 & 1 & 5 & 1.2 & 4.0 & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Ustreznost izbirnih predmetov & 41 & 1 & 5 & 1.2 & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{F58137}{3.8}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis2_1letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Primerna oblika izvedbe predmetov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?} -\begin{tabular}{lccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{Predavanja}} & \multicolumn{2}{r}{\textbf{Konzultacije}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{\\Kombinacija\\obojega}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 0 & 0 & 1 & 25 & 3 & 75 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 4 & 11 & 3 & 8 & 30 & 81 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Navedite, zakaj:} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Predavanja: obseg snovi, poudarek na najpomembnejši snovi, slišiš najnovejše zanimivosti-novosti Konzultacija: predavatelj/profesor razloži pomembno snov, izmenjava mnenj} \\ - \rowcolor[gray]{0.95}\textit{Lažje dogovarjanje z nosilcem predmeta.} \\ - \textit{Da lahko vprašaš vse, kar te zanima.} \\ - \rowcolor[gray]{0.95}\textit{Pri predmetih ki se opravljajo preko konzultacij je ponavadi treba napisati seminar. Študent je pri tem bolj ali manj prepuščen samemu sebi - in posledično od samih vsebin predmeta odnese manj kot pri klasičnih predavanjih. Predavanja so bolj konstruktivna, na koncu je izpit, na katerega se je potrebno ustrezno pripraviti.} \\ - \textit{Predavanja so zagotovo primarni vir pridobivanja znanj in izkušenj profesorja, še bolje pa je, če pogovori o raziskovalnem delu tečejo na štiri oči. Sama sem s tem pridobila veliko novih, uporabnih informacij, pa tudi stik s profesorji je bolj "pristen".} \\ - \rowcolor[gray]{0.95}\textit{Ker je bolj enostavno in včasih razumljivo nekaj slišati na predavanjih, od profesorjev/avtorjev raziskav in znanstvenih del, kot se sam spopadati z vso literaturo.} \\ - \textit{S predavanji dobim tudi določeno znanje, ki ga verjetno sam ne bi v takšni meri.} \\ - \rowcolor[gray]{0.95}\textit{Zgolj predavanja ne zahtevajo dovolj visoke stopnje angažmaja, ki se pričakuje od doktorskega študenta.} \\ - \textit{Posebej pri predmetih, ki jih študent izbere, da se nauči kaj novega oz. česar se ni imel priložnosti naučiti na 1. in 2. stopnji, so predavanja boljša za pojasnjevanje teoretičnih osnov. Konzultacije se mi zdijo nesmiselne, če so konzultacije v resnici le to, da nosilec predmeta študentu le pove, katero literaturo naj prebere. To študent lahko naredi tudi brez nosilca predmeta.} \\ - \rowcolor[gray]{0.95}\textit{Odvisno od predmeta. Predmet, ki je zastavljen projektno, je smiselno izvajati preko konzultacij, medtem ko so predavanja za predmet, ki je bolj teoretične narave, popolnoma smiselna.} \\ - \textit{Obisovala sem predavanja za nek predmet z rednimi študenti, kar se mi ni zdelo primerno, ni bila ista osnova, prisotnost ni mogla biti stalna. Tu je potreben koncept prilagajanja, ker smo ob tem še zaposleni in starši.} \\ - \rowcolor[gray]{0.95}\textit{Na predavanju se dobi splošno znanje, konzultacije so pomembne zaradi poglobljenega znanja} \\ - \textit{Da dobiš dovolj informacij o snovi in da se imaš priložnost individualno pogovoriti o stvareh, ki te zanimajo.} \\ - \rowcolor[gray]{0.95}\textit{Splošno gledano podpiram zlasti individualne oblike študija (samostojno delo, seminarji, konzultacije). Vendar se mi zdi, da te lahko vodijo v pretirano ozko usmeritev, zaradi česar imajo po mojem mnenju tudi predavanja, ki so zastavljena širše še vedno svoj namen.} \\ - \textit{Ker je doktorski študij pedagoški proces, se pričakuje obojesmerna izmenjava znanja. V primeru konzultacij se velikokrat zgodi, da študent ne pridobi ničesar. Primer tega je priprava seminarskih nalog o temah, ki zanimajo nosilce predmeta, študent pa do oddaje naloge nima povratnih informacij od nosilcev. Prav tako velikokrat profesorji ne pomagajo pri oblikovanju naloge oz. ne podajo svojega mnenja ali kritike v procesu, da bi se študent lahko izboljšal ali kaj naučil tekom dela.} \\ - \rowcolor[gray]{0.95}\textit{V sklopu predavanj študent pridobi ustrezna bazična znanja, v sklopu konzultacij pa se lahko z menrotjem predmeta individualno posvetuje o tematiki doktorskega študija (predlogi, vprašanja...).} \\ - \textit{Oboje je potrebno: Ker zajema skupni del (predavanja), kjer se lahko vključi več študentov - konstruktivnost in ker so zaradi specifičnosti teme doktorata potrebne tudi konzultacije z vsakim študentom posebej.} \\ - \rowcolor[gray]{0.95}\textit{Več kontakta z profesorji in več možnosti za diskusije} \\ - \textit{Na predavanjih se poda neko splošno znanje o določeni temi, na konzultacijah pa se lahko posveti konkretnemu problemu, ki se mu študent posveča. Če se za doktorski študij izbere tematik, ki ni neposredno povezana z dodiplomskim študijem, je splošno znanje o določeni temi dobrodošlo.} \\ - \rowcolor[gray]{0.95}\textit{Najbolj uporabno.} \\ - \textit{Študentje prihajajo z znanji iz različnih ozadij. Prav je, da se pri določenem predmetu obnovijo osnovna znanja s tega področja. Po drugi strani pa vsak študent od predmeta pričakuje znanje, ki ga bo lahko uporabil pri svojem delu, zato so za nadgradnjo znanj primernejše konzultacije.} \\ - \rowcolor[gray]{0.95}\textit{Odvisno od predmeta.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Da bi vnaprej objavljali, pri katerih predmetih so v določenem letu možna predavanja in bi zato v istem letu več študentov se odločilo za isti predmet - ker ponudba predmetov ostane vsaj nekaj let ista/podobna.} \\ - \rowcolor[gray]{0.95}\textit{Vsak profesor si bi lahko vzel čas za konzultacije za doktorskega študenta, saj nas ni tako veliko. Predavanj z rednimi študenti ne moremo obiskovati. v tem primeru je nujna prilagoditev.} \\ - \textit{Več povezave s prakso, podjetji} \\ - \rowcolor[gray]{0.95}\textit{Obveznosti, ki spremljajo organizirano pedagoško delo, je preveč in onemogočajo raziskovalno delo, kar pa bi naj bil glavni del doktorskega študija. Predmeti zahtevajo ogromno "inputa" za premalo "feedbacka". Večinoma se pričakujejo zelo obsežne seminarske naloge, ki se dotikajo doktorske teme, vendar ne bodo direktno pripomogle h končnemu rezultatu. Velikokrat so tudi na temo, ki jo doktorski študent že pozna in jo mora samo predstaviti nosilcem oz. drugim doktorskim kandidatom, kar pa ne vključuje pedagoškega procesa. Prav tako je jezik seminarskih nalog slovenščina, kar pomeni prevajanje že napisanih stvari (za članke, konference). Predmeti, pri katerih se izvajajo predavanja so na drugi strani zelo koristni, spodbujajo tak povezovanje študentov, kritične debate in so tudi študentom v veliko pomoč} \\ - \textit{Želel bi več predavanj.} \\ - \rowcolor[gray]{0.95}\textit{Da, sporočiti želim le to, da je izbira bioloških predmetov premajhna in kar generično 'biološka', brez delitve vsaj na zoološke in botanične predmete. Oziroma bolje rečeno, nadgradnja klasičnih področij se mi zdi kar nekako zanemarjena. Pridobitev določenih znanj, ki jih želim osvojiti, je tako prepuščena dobrim poznanstvom mojega mentorja in moji izbiri čtiva.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Temeljni/obvezni izbirni predmeti }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Ali ste imeli v letošnjem letu temeljne obvezne predmete?} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 4 & 100 & 0 & 0 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 11 & 30 & 26 & 70 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 11 & 30 & 26 & 70 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Pohvalila angažiranost prof. Horvata.} \\ - \rowcolor[gray]{0.95}\textit{Zanimiva predavanja.} \\ - \textit{Pohvalila bi prof. dr. Petkovića, ki nam je pri predmetu Mikrobna biotehnologija zagotovil, da smo pisali o lastni doktorski temi v obliki seminarske naloge. S tem smo definitivno pridobili širino znanja, pa tudi diskusija ob seminarju je bila prav simpatična.} \\ - \rowcolor[gray]{0.95}\textit{V kolikor je predmet zgolj predavanja in izpit, ni dovolj poglobljenega znanja, zato menim, da je potrebno tudi temeljemu predmetu priključit manjše samostojno raziskovalno delo, ki študnta nauči osnov raziskovanja in pisanja strokovnih del.} \\ - \textit{Pohvalila bi temo in izbor vsebine. Predlagam pa, da se temeljni predmet ne izvaja z rednimi študenti.} \\ - \rowcolor[gray]{0.95}\textit{Izvedba, snov} \\ - \textit{Pri seminarjih se lahko študent ustrezno poglobi v določeno temo, vzpodbuja se kritično razmišljanje. Uvedba predavanj z osnovami določenega predmeta je pogrešljiva!} \\ - \rowcolor[gray]{0.95}\textit{Predavanja, so bila osnova za kasnejše delo pri seminarski nalogi.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Nimam komentarja.} \\ - \rowcolor[gray]{0.95}\textit{Pisno preverjanje znanja in konzultacije po tem se mi zdi v redu zadeva, saj se potem lahko naučiš vse tisto, kar nisi znal na izpitu.} \\ - \textit{Mora iti bolj v smeri ocenjevanja samostojenga raziskovlanega dela, kot pa klasičnih izpitov.} \\ - \rowcolor[gray]{0.95}\textit{Način preverjanja znanja je ustrezen} \\ - \textit{Ustrezno.} \\ - \rowcolor[gray]{0.95}\textit{Se strinjam z načinom.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Izbirni predmeti }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Ali ste imeli v letošnjem letu izbirne predmete?} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 0 & 0 & 4 & 100 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 32 & 86 & 5 & 14 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 32 & 86 & 5 & 14 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Pohvalil bi organiziranost in praktične vaje pri nekaterih predmetih. Pri predmetih, kjer je končni izpit, se mi ne zdi smiselno pisati seminarskih nalog ali končnih poročil (vsaj ne preobsežnih).} \\ - \rowcolor[gray]{0.95}\textit{+ Da so bila pri nekaterih predavanja in da srečamo študente iz različnih študijskih področij. Zelo pozitivna odprtost profesorjev. - Hitenje s predavanji in v premalo ur stisniti preveč vsebine.} \\ - \textit{Vse je bilo korektno izvedeno.} \\ - \rowcolor[gray]{0.95}\textit{Pri predmetu Dendroekologija sem šele v začetku septembra 2017 (ja, skoraj eno leto od začetka letnika) končno izvedel, kdo je drugi nosilec predmeta in sem ga tako lahko kontaktiral. Tak odnos nosilcev predmeta se mi nikakor ne zdi primeren. Nenazadnje gre za plačljiv študij in za denar, ki smo ga dali za šolnino, pričakujemo tudi korekten odnost izvajalcev.} \\ - \textit{dober izbor. In ustrezna izvedba. nič ne bi spremenila.} \\ - \rowcolor[gray]{0.95}\textit{STATISTIKA} \\ - \textit{Pohvalil bi individualni pristop in prilagoditev teme glede na potrebe doktoranta. Želel pa bi si več kritične diskusije, tako s kolegi kot tudi s predavatelji.} \\ - \rowcolor[gray]{0.95}\textit{Pohvalila bi organizirana predavanja pri predmetu Kvantitativna in Statistična genetika. Prav tako bi pohvalila ažurnost profesorjev pri drugih izbirnih predmetih (predvsem iz Fakultete za računalništvo in informatiko ter Fakultete za elektrotehniko).} \\ - \textit{Usmeritev študenta iz njemu neznanega področja v ustrezno literaturo.} \\ - \rowcolor[gray]{0.95}\textit{Pohvalim izvedbo, spremenila bi število ur pri predmetu Iskanje informacij in priprava člankov - lahko bi bilo več ur !} \\ - \textit{Vsi predmeti so bili v obliki konzultacij. Mogoče ne bi bilo slabo imeti vsaj eno začetno predavanje.} \\ - \rowcolor[gray]{0.95}\textit{Brez pripomb. Pohvalila bi potek predavanj predmeta Ekologija, kjer je predavalo več različnih predavateljev, vsak iz svojega področja dela.} \\ - \textit{Izvedba izbirnih predmetov je bila odvisna od posameznega predavatelja in je bila odlična ter primerna tematiki. Predavatelji so vedno dostopni za vprašanja in pripravljeni svetovati ali pomagati. Glede spremembe bi si spet želela zgolj večjo izbiro zooloških in botaničnih predmetov, ki bi nadgrajevali znanje pridobljeno na dodiplomskem študiju.} \\ - \rowcolor[gray]{0.95}\textit{Spodbujanje samostojnega dela, vendar s jasnimi navodili. Spodbujanje kritičnega mišljenja.} \\ - \textit{nimam komentarja} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Menim, da so primerni - podobno kot na 1. in 2. stopnji.} \\ - \rowcolor[gray]{0.95}\textit{Različni pristopi pri različnih predmetih, kar je dobro.} \\ - \textit{Zelo podpiram pogovor s profesorji pri posameznem predmetu in kritično obravnavo dela, ki je bilo izvedeno.} \\ - \rowcolor[gray]{0.95}\textit{Ustni zagovor oz. predstavitev projektnega dela se mi zdi več ko dovolj. Predvsem izguba časa se mi zdijo seminarske naloge, ki so večinoma same sebi namen.} \\ - \textit{super} \\ - \rowcolor[gray]{0.95}\textit{PRIMEREN} \\ - \textit{ustrezna} \\ - \rowcolor[gray]{0.95}\textit{Zdi se mi ustrezen (seminar ali ustni izpit).} \\ - \textit{Preverjanje znanja je ustrezno - študent pripravi neko delo in ga nato javno predstavi. Tako se mi zdi, da tudi študent največ pridobi, saj se tekom priprave dela lahko posvetuje s profesorjem in pridobi nova znanja, nauči pa se tudi javno predstavljati in zagovarjati svoje delo, kar je dobra priprava za končni zagovor in tudi konference.} \\ - \rowcolor[gray]{0.95}\textit{Ustrezno.} \\ - \textit{Zelo raznoliko, obsežno, sprotno in korektno preverjanje znanja.} \\ - \rowcolor[gray]{0.95}\textit{Se strinjam z načinom ocenjevanja.} \\ - \textit{Brez pripomb.} \\ - \rowcolor[gray]{0.95}\textit{Preverjanje znanja je bilo izvedeno na povsem primeren način: preko izpita, seminarjev ali kombinacije.} \\ - \textit{Predvsem mi je bilo všeč, da ni bilo samo klasično preverjanje znanja (npr. izpiti), ampak je bila seminarska naloga s predstavitvijo in diskusijo.} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Pomoč in podpora mentorja}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:18 2017 -\begin{table}[ht] -\centering -\caption{Pomoč in podpora mentorja - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|ccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Biomed.} & \bfseries{Biozna.} & \bfseries{Skupaj} \\ - \hline -Odzivnost mentorja po el. pošti & 41 & 1 & 5 & 0.9 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Mentor mi nudi podporo & 41 & 1 & 5 & 0.7 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Pogostost stikov z mentorjem & 41 & 1 & 5 & 1.0 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Pomoč mentorja pri težavah & 40 & 1 & 5 & 1.0 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Ustrezno svetovanje mentorja & 41 & 1 & 5 & 1.0 & 4.3 & 4.4 & 4.4 \\ - Pomoč mentorja pri znan. čl. & 37 & 1 & 5 & 1.1 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 4.2 & 4.3 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis3_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Mentor je vedno na voljo, kadar ga potrebujem.} \\ - \rowcolor[gray]{0.95}\textit{Skupaj z mentorjem se dnevno ukvarjava s temami, povezanimi z mojim študijem in individualnim raziskovalnim delom. Na voljo so mi vsa potrebna pojasnila, odzivnost mentorja je velika.} \\ - \textit{Odlično.} \\ - \rowcolor[gray]{0.95}\textit{Pozitivna je pripravljenost, zanimanje in odprtost.} \\ - \textit{Zelo v redu. Vloga mentorja bo prišla bolj do izraza v prihodnjih letih.} \\ - \rowcolor[gray]{0.95}\textit{Z mentorjem odlično sodelujeva.} \\ - \textit{Kar zadeva mentorja je vse kar je zgoraj navedeno. Vse pohvale dr. Schmitzerjevi.} \\ - \rowcolor[gray]{0.95}\textit{zelo odziven, široko poznavanje področja, precej zaseden z drugimi obveznostmi} \\ - \textit{Sodelovanje je odlično, vedno na razpolago in pripravljen pomagati.} \\ - \rowcolor[gray]{0.95}\textit{Mentor je dobro odziven in skoraj vedno na voljo. Njegovo odnos je izjemno profesionalen in resen. Želel bi si malo več njegovega angažmaja (redne sestanke, kjer bi spremljala moj napredek; nasvete pri iskanju najbolj relavantne in aktualne literature itd)} \\ - \textit{Sodelovanje z mentorjem je odlično. Čeprav fizično ni v Sloveniji, se redno slišimo (enkrat tedensko), v vmesnem časui pa je na voljo tudi preko drugih virov komunikacije. Prav tako spodbuja in razvija moje kritično mišljenje, mi daje usmeritve, ne opravlja pa dela zame. Uči me, kako se lotitit reševanja problemov, s katerimi se srečujemo znanstveniki, priporoča mi literaturo za nadgradnjo mojega znanja.} \\ - \rowcolor[gray]{0.95}\textit{Sodelovanje je ustrezno, vseeno bi bilo potrebno uvesti kvalitetnejšo komunikacijo.} \\ - \textit{Želela bi si bolj pogost stik z mentorjem, vendar mi službene obveznosti tega ne dopuščajo. Mentorja lahko zelo pohvalim.} \\ - \rowcolor[gray]{0.95}\textit{Brez pripomb.} \\ - \textit{Zadovoljna sem z mentorjem.} \\ - \rowcolor[gray]{0.95}\textit{Sodelovanje z mentorjem ocenjujem odlično, najvišje pohvale, ne potrebuje sprememb. Res vedno pomaga in ima zelo konstruktivne pripombe.} \\ - \textit{Moje mnenje je da sodelujeva super in se vse ustrezno dogovoriva.} \\ - \hline -\hline -\end{longtable} -\subsubsection{Doktorska disertacija }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[ht] -\centering -\caption{Ali ste pred vpisom na doktorski študij že imeli idejo/raziskovalni načrt za doktorsko disertacijo:} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 3 & 75 & 1 & 25 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 25 & 68 & 12 & 32 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Načrtujem, da bo moja doktorska disertacija napisana v obliki objav treh izvirnih znanstvenih člankov. V letošnjem letu sem uspel napisati članek, poslali smo ga v revijo. Proces obdelave podatkov in publiciranja takšnih prispevkov mlademu raziskovalcu vzame velike časa in truda.} \\ - \rowcolor[gray]{0.95}\textit{Težko objavljivost v kakovostnih revijah.} \\ - \textit{Že razmišljam, vendar ne pišem, ker še nimam novih znanj oz. vsebin, ki bi jih bilo mogoče objaviti.} \\ - \rowcolor[gray]{0.95}\textit{Sem že začel. Težav ne vidim, samo izzive!} \\ - \textit{Že pripravljam članek, ki ga želim imeti sprejetega pred prijavo teme.} \\ - \rowcolor[gray]{0.95}\textit{S pisanjem članka sem že začel. Upam, da ne bo večjih težav.} \\ - \textit{Osnutek za moj članek je raziskava, ki se ravno odvija, tako, da pripravljam vse v zvezi s tem. Težave so morda, če bo zadeva patentabilna, potem se bo članek zavlekel.} \\ - \rowcolor[gray]{0.95}\textit{Da. Izrazoslovje, berljivost, strokovnost} \\ - \textit{Sem že napisala članek. Večjih težav ni.} \\ - \rowcolor[gray]{0.95}\textit{Še nisem pričel. Težko bi komentiral kaj več na tej točki.} \\ - \textit{Da. Zaenkrat je težava le pomanjkanje časa za vse obveznosti} \\ - \rowcolor[gray]{0.95}\textit{Da. Pri tem je trenutno največja težava komputacijska sposobnost za pridobitev rezultatov primernih za objavo.} \\ - \textit{Članek še ni v izdelavi, pridobljeni so preliminarni rezultati. Težave se bojo pojavile s pisanjem tematske vsebine.} \\ - \rowcolor[gray]{0.95}\textit{Da - imem težave pri izboru najboljših referenc pri članku; pričakujem težave zaradi časa trajanja objave članka.} \\ - \textit{Skrbi me ali bomo izbrali dovolj podatkov za analize.} \\ - \rowcolor[gray]{0.95}\textit{Tematiko članka smo izbrali že lani, letos preko zime bomo izvedli potrebno laboratorijsko delo. Del dela sem opravila že v sklopu enega od seminarjev. Opravljeno delo smo izbrali tako, da je precej natančno nakazalo na težave. Vsaj nekatere od teh sedaj lahko predvidimo oz. preprečimo. Tako naj bi, vsaj kar se tiče metod laboratorijskega dela in pisanja članka, sedaj vse bilo v redu.} \\ - \textit{Upam, da bom kmalu začel. Težave vrejtno bodo kot pri vsaki novi stvari, ki jo začneš ampak ob pomoči drugih ni težav.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Del študija in ostale aktivnosti v tujini}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[ht] -\centering -\caption{Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|ccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Biomed.} & \bfseries{Biozna.} & \bfseries{Skupaj} \\ - \hline -Možnost udeležbe konf. v tujini & 40 & 1 & 5 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Del študija ali razis. dela v tujini & 38 & 1 & 5 & 1.3 & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{F58137}{3.6}} & \textbf{\textcolor[HTML]{F58137}{3.7}} \\ - Vključenost v razis. sk. & 40 & 1 & 5 & 1.7 & 4.3 & \textbf{\textcolor[HTML]{F58137}{3.6}} & \textbf{\textcolor[HTML]{F58137}{3.6}} \\ - Možnost študija/razis. dela v tuj. & 32 & 1 & 5 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{F58137}{3.5}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis4_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Za zaposlene, tisti ki nismo mladi raziskovalci, so možnosti dosti bolj omejene, predvsem glede študijskih izmenjav.} \\ - \rowcolor[gray]{0.95}\textit{Delo je preveč prepuščeno študentu samemu. Bolje bi bilo delati v delovnih skupinah, kjer bi študentje in mentorji izmenjali izkušnje, nasvete, se spodbujali.} \\ - \textit{Zelo dobro bi bilo organizirati redna srečanja vseh doktorskih študentov Bioznanosti, kjer bi lahko sproti predstavljali svoje delo in razvijati konstruktivno debato. Prav tako bi lahko Univerza ponujala več informacij o načinih financiranja obiskov konferenc, poletnih šol in delavnic.} \\ - \rowcolor[gray]{0.95}\textit{Dobila sem povabilo za sodelovanje pri raziskavi našega materiala v tujini ter k pisanju in objavi znanstvenega članka. Ponudba je zelo zanimiva, ker pa nisem vključena v nobeno raziskovalno skupino doma (na Univerzi v Ljubljani npr), ne vem kako bi to delo lahko koristilo Univerzi v Ljubljani, ki moj študij pravzaprav finančno podpira.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Svetovalna pomoč študentom}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|ccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Biomed.} & \bfseries{Biozna.} & \bfseries{Skupaj} \\ - \hline -Odzivnost in učinkovitost ref. & 41 & 1 & 5 & 0.7 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Ustrezen odnos osebja & 40 & 1 & 5 & 0.7 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Uradne ure študentskega ref. & 38 & 1 & 5 & 0.9 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Celovite info. na spletni str. & 41 & 1 & 5 & 0.8 & 4.3 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis5_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Vaši predlogi glede delovanja referata in svetovanja študentom.} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{vse super.} \\ - \rowcolor[gray]{0.95}\textit{mag. Vesni Ješe Janežič posebno priznanje in večjo plačo !} \\ - \textit{Ni kaj predlagati, referat je popolnoma optimiziran, osebje enkratno.} \\ - \rowcolor[gray]{0.95}\textit{Ga. mag. Vesna Ješe Janežič je popolnoma strokovno usposobljena za svoje delo, poleg tega ima pa neverjetno krasen odnos do študentov, vedno je pripravljena pomagati in to naredi z nasmehom in dobro voljo.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali je prvo leto študija izpolnilo vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Pohvalila bi angažiranost, motiviranost in dostopnost nekaterih predavateljev.} \\ - \rowcolor[gray]{0.95}\textit{Prvo leto študija je izpolnilo moja pričakovanja. Raziskovalno delo, ki ga opravljam se mi zdi zelo zanimivo in veliko je možnosti za izpopolnjevanje.} \\ - \textit{Prvo študijsko leto je izpolnilo moja pričakovanja. Najbolj bi pohvalil uporabnost vsebine izbirnih predmetov za moje individualno raziskovalno delo. Morda bi spremenil le razpored predavanj predemtov - na ravni celotnega štud. leta.} \\ - \rowcolor[gray]{0.95}\textit{Prvo leto študija je izpolnilo vsa moja pričakovanja.} \\ - \textit{Da. Pohvala profesorjem in pripravljenosti za pomoč referatu.} \\ - \rowcolor[gray]{0.95}\textit{Da. Pohvala izvajacem predmetov na Biotehniški fakulteti. Potrebna je malo boljša organizacija glede predavanj saj se lahko ta občasno prekrivajo.} \\ - \textit{Je izpolnilo pričakovanja. Pozitivno predvsem pripravljenost profesorjev, da so vključeni v nastajanje/tematiko naloge in dajo koristne pripombe ter nasvete. Spremeniti bi bilo potrebno, da se večina predavanj izvaja v istem časovnem obdobju (feb-april).} \\ - \rowcolor[gray]{0.95}\textit{Prvo leto je minilo (pre)hitro, veliko dela pa me še čaka.} \\ - \textit{Popolnoma} \\ - \rowcolor[gray]{0.95}\textit{Pričakovala sem malo več kontaktnih ur v začetku študijskega leta, saj je bila večina dela/obremenitev skoncentrirana v drugem semetru.} \\ - \textit{Pri predmetih, kjer se pričakuje vpis manj kot petih študentov, naj se pripravi neko gradivo, ki naj ga študent preštudira, da pridobi osnove s področja tega predmeta. Če se le da, bi pri vseh predmetih poskusil izvesti vsaj uvodno predavanje s podajanjem osnov predmeta. Študij je delno izpolnil moja pričakovanja. Pri predmetih, ki se izvajajo v obliki konzultacij, je odstopanje od učnih načrtov precejšnje, saj se pogosto zahteva le izdelava seminarske naloge na temo, ki je povezana s temo študentove disertacije.} \\ - \rowcolor[gray]{0.95}\textit{Glede na to, da gre za plačljiv študij, sem pričakoval več. Predvsem uporabnega znanja / veščin in odzivnosti nekaterih nosilcev predmetov.} \\ - \textit{Da, študij izpolnjuje moja pričakovanja. V programu bi pohvaliala širok izbor predmetov in pripravljenost nekaterih profesorjev na fleksibilnost pri izdelavi seminarjev in vključevanja svojih tem v sam študij. Spremenila bi samo to, da vsi profesorji dajo možnost individualnega opravljanja izpitnih obveznosti z morebitnimi konzultacijami, saj kot navajam imamo zaposlitve, službene poti, otroke in težko spremljamo kot redni študentje.} \\ - \rowcolor[gray]{0.95}\textit{Več izobraževanja in napotkov za pripravo članka in doktorske disertacije} \\ - \textit{Prvo leto je izpolnilo moja pričakovanja.} \\ - \rowcolor[gray]{0.95}\textit{Pohvalil bi individualnost in prilagodljivost študija. Želel bi si več priložnosti za širše povezovanje s kolegi.} \\ - \textit{Je preseglo pričakovanja. Pohvali bi celoten program. O tem, ali bi bilo potrebno kaj spremeniti, bom imel boljšo predstavo ob zaključku 2. letnika} \\ - \rowcolor[gray]{0.95}\textit{Prvo leto je izpolnilo moja pričakovanja. Najbolj bi pohvalila svobodo pri izbiri predmetov in ponudbo predmetov iz drugih fakultet. Pohvalila bi tudi referat in pa svojega mentorja. Spremenila bi obseg organiziranega pedagoškega dela in obveznosti, saj imamo študentje v prvem letniku veliko dela s seznanitvijo s temo in metodikami, načrtovanjem razsikovanja in lovljenja v novem okolju. Obseg pedagoškega dela tako zavira raziskovalen napredek, saj študentom preprosto zmanjka časa.} \\ - \textit{Študij je izpolnil pričakovanja. Vsaj pri osnovnih/obveznih predmetih bi bilo po mojem mnenju potrebno uvesti predavanja, za celovit vpogled in razumevanje osnov.} \\ - \rowcolor[gray]{0.95}\textit{Ker sem se na doktorski študij vpisala po končanem znanstvenem magisteriju, s katerim imam priznane vse obveznosti in ne potrebujem nobenih dodatnih predavanj za izpolnitev študijskihobveznosti, bi si želela možnost plačila bistveno šolnine in direktni vpis v zaključni letnik doktorskega študija (brez 1. in 2. letnika in brez plačevanja šolnine za ta 2 letnika). Na drugih fakultetah Univerze v Ljubljani so v letu 2016 študente z doseženim znanstvenim magisterijem vpisali neposredno v 3. letnik.} \\ - \textit{Prvo leto je izpolnilo moja pričakovanja, le mogoče je težko že v prvem letu opraviti vse obveznosti do predmetov in raziskovalnega dela.} \\ - \rowcolor[gray]{0.95}\textit{Želel bi si bolj pester nabor predmetov.} \\ - \textit{Nimam pripomb.} \\ - \rowcolor[gray]{0.95}\textit{Prvo leto študije je izpolnilo pričakovnaja. Želela bi edino več že omenjenih predmetov nadgradnje klasičnih zooloških in botaničnih znanj.} \\ - \textit{Pričakovanja so bila izpolnjena, pohvalila bi predavatelje pri pri predmetih, ki sem si jih izbrala in pa učinkovitost referata.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Način študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[ht] -\centering -\caption{Kako študirate:} -\begin{tabular}{lccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Mladi\\raziskovalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ml. raz.\\v gospodarstvu}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\fin. sam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\delodajalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\drugi viri}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina int. & Prvi & 1 & 25 & 0 & 0 & 1 & 25 & 1 & 25 & 1 & 25 & 4 & 100 \\ - Bioznanosti int. & Prvi & 10 & 27 & 0 & 0 & 11 & 30 & 3 & 8 & 13 & 35 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Ministrstvo za izobraževanje, znanost in šport (Sofinanciranje doktorskega študija – generacija 2016)} \\ - \rowcolor[gray]{0.95}\textit{Štipendija s strani UL} \\ - \textit{Državna subvencija} \\ - \rowcolor[gray]{0.95}\textit{Univerza v Ljubljani} \\ - \textit{UNIVERZA V LJUBLJANI} \\ - \rowcolor[gray]{0.95}\textit{Univerza v Ljuibljani} \\ - \textit{Univerza v Ljubljani} \\ - \rowcolor[gray]{0.95}\textit{Univerza v Ljubljani} \\ - \textit{Univerza v Ljubljani, Generacija 2016} \\ - \rowcolor[gray]{0.95}\textit{sofinanciranje doktorskih študentov -2016} \\ - \textit{Univerza v Ljubljani} \\ - \rowcolor[gray]{0.95}\textit{Univerza v Ljubljani} \\ - \textit{Javni razpis za sofinanciranje doktorskih študentov Univerze v Ljubljani - generacia 2016} \\ - \hline -\hline -\end{longtable} -\subsubsection{Razlog študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[ht] -\centering -\caption{Zakaj ste se odločili za doktorski študij?} -\begin{tabular}{lccccccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Akad.\\kariera}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Osebni\\razvoj}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dobro\\imeti}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Koristno}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Brez\\zaposl.}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Napred.}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Drugo}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - - \\ \hline - & & \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicin. & Prvi & 1 & 14 & 3 & 43 & 0 & 0 & 2 & 29 & 0 & 0 & 1 & 14 & 0 & 0 & 7 & 100 \\ - Bioznanost. & Prvi & 13 & 18 & 24 & 33 & 8 & 11 & 19 & 26 & 1 & 1 & 5 & 7 & 2 & 3 & 72 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Drugo:} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Ker mi doktorski naziv poveča možnosti za nadaljnjo zaposlitev na inštituciji, kjer delam zdaj.} \\ - \rowcolor[gray]{0.95}\textit{Želim imeti status nosilca raziskovalnih projektov - vodja projekta mora imeti doktorat.} \\ - \hline -\hline -\end{longtable} -\subsubsection{Odločitev o vpisu}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[ht] -\centering -\caption{Če bi se danes odločali o vpisu na doktorski študij:} -\begin{tabular}{lccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se odločil\\enako}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se vpisal\\drugam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Se ne bi odločil\\za dr. študij}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ne vem}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 4 & 100 & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 30 & 81 & 3 & 8 & 1 & 3 & 3 & 8 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -\clearpage\subsubsection{Alternativni vpis}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[ht] -\centering -\caption{Kam bi se vpisali?} -\begin{tabular}{lccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi\\program na UL}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi VŠ\\zavod v RS}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{V tujino}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 0 & . & 0 & . & 0 & . & 0 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 1 & 33 & 0 & 0 & 2 & 67 & 3 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Dodatni komentarji študentov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj, kar ni bilo zajeto v anketi?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Ocenjevanje dela pri posameznih predmetih, da ne pišemo na splošno.} \\ - \rowcolor[gray]{0.95}\textit{Roki za redne doktorske študente in študente ob delu bi bili lahko drugačni, saj je ob službi, družini in še oddaljenosti težko izpolnjevati roke tako, kot mladi raziskovalci, ki osem ur delajo za svojo raziskavo. Vsem je potrebno omogočiti študij in jih pri tem spodbujati.} \\ - \textit{Doktorskim študentom, ki si študij plačujemo sami, bi lahko Univerza v Ljubljani oz. pristojno ministrstvo v večji meri financiralo doktorski študij.} \\ - \rowcolor[gray]{0.95}\textit{Hvala za sofinanciranje študija.} \\ - \hline -\hline -\end{longtable} - - -\newpage\clearpage\pagestyle{drugi}\section{Podrobne analize: Drugi letnik}\subsection{Analiza dejavnikov in vsebinskih sklopov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so sicer vključene v agregatne analize tudi v poglavju 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:19 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Osebje študentskega referata je odzivno in učinkovito. & 28 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.2 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata ima ustrezen odnos do študentov. & 28 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.2 \\ - Uradne ure študentskega referata so primerne. & 28 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & 27 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Pogostost stikov z mentorjem/mentorico je primerna. & 27 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & 27 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.4 \\ - Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & 27 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & 25 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & 27 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.4 \\ - \rowcolor[gray]{0.95}Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & 24 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Informacije na spletnih straneh so dovolj jasne in celovite. & 28 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.6 \\ - Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & 27 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - \rowcolor[gray]{0.95}Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & 27 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & 25 & 4.3 & 0.9 \\ - Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & 22 & 4.2 & 1.1 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & 26 & 4.2 & 0.8 \\ - Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & 25 & 4.1 & 0.9 \\ - \rowcolor[gray]{0.95}Sem vključen/a v raziskovalno skupino / program / projekt. & 25 & 4.1 & 1.4 \\ - Imam možnost udeležbe na znanstvenih konferencah v tujini. & 27 & 4.1 & 1.3 \\ - \rowcolor[gray]{0.95}V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & 24 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.0 \\ - Ponudba izbirnih predmetov je ustrezna. & 26 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.1 \\ - \rowcolor[gray]{0.95}Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & 25 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.2 \\ - Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & 25 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.4 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/grafVsehDejavnikov_drugi.pdf} -\end{figure}Najbolje sta ocenjena dejavnika "Osebje študentskega referata je odzivno in učinkovito." (\textbf{\textcolor[HTML]{006666}{5.0}}) in "Osebje študentskega referata ima ustrezen odnos do študentov." (\textbf{\textcolor[HTML]{006666}{5.0}}) \\ \\Najslabše je ocenjen dejavnik "Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini." (\textbf{\textcolor[HTML]{F58137}{3.7}})\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:20 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 28 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.2 \\ - Ustrezen odnos osebja & 28 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.2 \\ - Uradne ure študentskega ref. & 28 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Celovite info. na spletni str. & 28 & 2 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.6 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}Odzivnost mentorja po el. pošti & 27 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem & 27 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Mentor mi nudi podporo & 27 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.4 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri težavah & 27 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri znan. čl. & 25 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Ustrezno svetovanje mentorja & 27 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.4 \\ - \multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ Pravilno navedeni izvajalci & 25 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Spremembe poteka & 24 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Infrastr. za pridobivanje virov & 27 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Razpored izvajanja & 25 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Razpored ur mi ustreza & 27 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - Druga infrastruktura & 25 & 2 & 5 & 4.3 & 0.9 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Pridobitev generičnih znanj & 22 & 2 & 5 & 4.2 & 1.1 \\ - \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & 26 & 2 & 5 & 4.2 & 0.8 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & 25 & 2 & 5 & 4.1 & 0.9 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & 24 & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.0 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & 26 & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.1 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Vključenost v razis. sk. & 25 & 1 & 5 & 4.1 & 1.4 \\ - Možnost udeležbe konf. v tujini & 27 & 1 & 5 & 4.1 & 1.3 \\ - Možnost študija/razis. dela v tuj. & 25 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.2 \\ - Del študija ali razis. dela v tujini & 25 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.4 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:20 2017 - \hline \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 4 & 27 & 96 \\ - Ustrezen odnos osebja & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 4 & 27 & 96 \\ - Uradne ure študentskega ref. & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 7 & 26 & 93 \\ - Celovite info. na spletni str. & 0 & 0 & 1 & 4 & 0 & 0 & 3 & 11 & 24 & 86 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Odzivnost mentorja po el. pošti & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 7 & 25 & 93 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pogostost stikov z mentorjem & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 7 & 25 & 93 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Mentor mi nudi podporo & 0 & 0 & 0 & 0 & 1 & 4 & 1 & 4 & 25 & 93 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri težavah & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 11 & 24 & 89 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri znan. čl. & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 12 & 22 & 88 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustrezno svetovanje mentorja & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 15 & 23 & 85 \\ - \multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ Pravilno navedeni izvajalci & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 16 & 21 & 84 \\ - Spremembe poteka & 0 & 0 & 0 & 0 & 1 & 4 & 3 & 12 & 20 & 83 \\ - Infrastr. za pridobivanje virov & 0 & 0 & 0 & 0 & 0 & 0 & 6 & 22 & 21 & 78 \\ - Razpored izvajanja & 0 & 0 & 0 & 0 & 1 & 4 & 4 & 16 & 20 & 80 \\ - Razpored ur mi ustreza & 0 & 0 & 1 & 4 & 0 & 0 & 8 & 30 & 18 & 67 \\ - Druga infrastruktura & 0 & 0 & 1 & 4 & 4 & 16 & 7 & 28 & 13 & 52 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 0 & 0 & 3 & 14 & 2 & 9 & 4 & 18 & 13 & 59 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 0 & 0 & 1 & 4 & 4 & 15 & 10 & 38 & 11 & 42 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 0 & 0 & 2 & 8 & 3 & 12 & 10 & 40 & 10 & 40 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 0 & 0 & 3 & 12 & 4 & 17 & 10 & 42 & 7 & 29 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 0 & 0 & 5 & 19 & 3 & 12 & 9 & 35 & 9 & 35 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Vključenost v razis. sk. & 2 & 8 & 2 & 8 & 3 & 12 & 2 & 8 & 16 & 64 \\ - Možnost udeležbe konf. v tujini & 1 & 4 & 3 & 11 & 4 & 15 & 3 & 11 & 16 & 59 \\ - Možnost študija/razis. dela v tuj. & 1 & 4 & 3 & 12 & 5 & 20 & 6 & 24 & 10 & 40 \\ - Del študija ali razis. dela v tujini & 3 & 12 & 2 & 8 & 4 & 16 & 7 & 28 & 9 & 36 \\ - \hline \end{longtable} \newpage\subsection{Podrobna analiza vseh spremenljivk po sklopih} -V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavje 6), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:20 2017 -\begin{table}[ht] -\centering -\caption{Infrastruktura in urniki - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline \multicolumn{5}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Bioznanosti int.} \\ - \hline -Pravilno navedeni izvajalci & 25 & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Spremembe poteka & 24 & 3 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Infrastr. za pridobivanje virov & 27 & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Razpored izvajanja & 25 & 3 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Razpored ur mi ustreza & 27 & 2 & 5 & 0.7 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Druga infrastruktura & 25 & 2 & 5 & 0.9 & 4.3 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Infrastruktura in urniki - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis1_2letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Število tedensko porabljenih ur za doktorski študij}Študenti so v povprečju tedensko za svoj doktorski študij porabili \textbf{33} ur. Standardni odklon znaša \textbf{18} ur.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:20 2017 -\begin{table}[ht] -\centering -\caption{Število tedensko porabljenih ur za doktorski študij} -\begin{tabular}{lp{3cm}p{1cm}p{1cm}} - \hline -\hline -\bfseries{Program} & \bfseries{Število ur} & \bfseries{n} & \bfseries{\%} \\ - \hline -Bioznanosti interdisciplinarni & 2 & 2 & 3 \\ - Bioznanosti interdisciplinarni & 10 & 2 & 3 \\ - Bioznanosti interdisciplinarni & 13 & 1 & 2 \\ - Bioznanosti interdisciplinarni & 20 & 4 & 6 \\ - Bioznanosti interdisciplinarni & 24 & 1 & 2 \\ - Bioznanosti interdisciplinarni & 25 & 1 & 2 \\ - Bioznanosti interdisciplinarni & 30 & 2 & 3 \\ - Bioznanosti interdisciplinarni & 32 & 1 & 2 \\ - Bioznanosti interdisciplinarni & 40 & 5 & 8 \\ - Bioznanosti interdisciplinarni & 50 & 3 & 5 \\ - Bioznanosti interdisciplinarni & 60 & 4 & 6 \\ - Bioznanosti interdisciplinarni & 3 & 1 & 2 \\ - Bioznanosti interdisciplinarni & 5 & 7 & 11 \\ - Bioznanosti interdisciplinarni & 8 & 1 & 2 \\ - Bioznanosti interdisciplinarni & 10 & 5 & 8 \\ - Bioznanosti interdisciplinarni & 15 & 2 & 3 \\ - Bioznanosti interdisciplinarni & 20 & 7 & 11 \\ - Bioznanosti interdisciplinarni & 30 & 4 & 6 \\ - Bioznanosti interdisciplinarni & 40 & 2 & 3 \\ - Bioznanosti interdisciplinarni & 42 & 2 & 3 \\ - Bioznanosti interdisciplinarni & 45 & 1 & 2 \\ - Bioznanosti interdisciplinarni & 50 & 3 & 5 \\ - Bioznanosti interdisciplinarni & 80 & 1 & 2 \\ - \hline -Skupaj & 848 & 62 & 100 \\ - \hline -\hline -Povprečje & 33 & . & . \\ - Standardni odklon & 18 & . & . \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost časa za doktorski študij}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:20 2017 -\begin{table}[ht] -\centering -\caption{Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?} -\begin{tabular}{lccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\preveč}}}} - & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\premalo}}}} - & \multicolumn{2}{c}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 13 & 46 & 4 & 14 & 11 & 39 & 28 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 23 & 62 & 0 & 0 & 14 & 38 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost trajanja doktorskega študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:20 2017 -\begin{table}[ht] -\centering -\caption{Ali ocenjujete, da je triletno trajanje doktorskega študija ustrezno?} -\begin{tabular}{lccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{Prekratko}} & \multicolumn{2}{r}{\textbf{Predolgo}} & \multicolumn{2}{r}{\textbf{Ne vem}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{\\Da,\\ravno prav}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 12 & 43 & 0 & 0 & 5 & 18 & 11 & 39 & 28 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Navedite zakaj. } \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Z vsemi (in velikokrat nepotrebnimi) študijskimi obveznostmi je zelo težko uskladiti vsa predavanja, seminarje, konzultacije s hkratnim delom v laboratoriju. Hkrati se tudi ne moremo 100\% posvetiti načrtovanju ter izvedbi poskusov, zato so nemalokrat zgodi, da so površno izvedeni. Lahko rečem, da je za prvi dve leti preveč vsega in da se posledično to tudi pozna na zdravju. Vendar pa, če bi začeli z laboratorijskim delom šele v tretjem letu, ne bi pravočasno uspeli končati tako poskusov, kot tudi (vsaj enega) članka. Ampak tako je, nimamo kaj. Vedeli smo v kaj se spuščamo :)} \\ - \rowcolor[gray]{0.95}\textit{Kot doktorski študenti je naša prioriteta, da opravimo čim boljšo študijo/raziskavo naše tematike. Včasih je za to potrebno posvetiti več časa kot le tri leta, poleg tega se moramo v tem času posvetiti tudi opravljanju izpitov. Torej v treh letih naš čas ne posvetimo v celoti raziskavi, ki je naš prvotni cilj.} \\ - \textit{Zdi se mi predolgo, ampak po drugi strani nisem nič koristnega še naredil ker se zabijam z glavo ob zid, tako da v mojem primeru vseeno premalo časa.} \\ - \rowcolor[gray]{0.95}\textit{Za raziskovalno delo bi potrebovali več časa} \\ - \textit{Dovolj za poglobljeno poznavanje tematike in pripravo dizertacije.} \\ - \rowcolor[gray]{0.95}\textit{Se mi zdi, da je v treh letih preveč nakopičeno vsega, od študijskih obveznosti, opravljanja izpitov, izvedba raziskovalnega dela,pisanje člankov...} \\ - \textit{V tem času je možno izpolniti vsaj minimum pogojev za uspešno dokončanje študija, če se študent resno potrudi in če ni nepredvidenih vplivov. V realnosti, pa temu nikoli ni tako saj je veliko faktorjev in sicer osebnih, psiholoških in tistih na katere ne moremo vplivati, ki lahko podaljšajo čas študija. Za več kot to, oz. za objavo večjega števila člankov, pa bi bilo potrebno več časa. To je seveda v primeru, da je študent posvečen le doktorski nalogi in, da ni zaposlen, saj delo ob študiju odvzame ogromno časa in se potem študij potencialno bistveno podaljša.} \\ - \rowcolor[gray]{0.95}\textit{Še premalo izkušenj.} \\ - \textit{Premalo časa za poskuse.} \\ - \rowcolor[gray]{0.95}\textit{Časa je premalo, sploh kar se tiče objave člankov (če se odločimo za ta način doktoriranja) ker so odzivni časi odgovornih oseb precej dolgi} \\ - \textit{Zaradi tega ker določene raziskave zahtevajo več časa.} \\ - \rowcolor[gray]{0.95}\textit{Omogoča strukturirano delo z jasnimi zahtevami po posameznih letih.} \\ - \textit{Ravno prav za toliko dela, da je mogoce izdati clanek ali dva.} \\ - \rowcolor[gray]{0.95}\textit{Ker je triletno obdobje prekratko za izvedbo resnejše raziskave.} \\ - \textit{Triletno obodbje je za dokončanje raziskovalnega dela prekratko.} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Izbira predmeta na drugih programih UL }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 5 & 19 & 21 & 81 & 26 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Iz katerega drugega doktorskega študijskega programa UL ste si izbrali izbirni predmet? } \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Agronomija in Biologija} \\ - \rowcolor[gray]{0.95}\textit{Biomedicina} \\ - \textit{Interdisciplinarni doktorski študijski program Biomedicina} \\ - \rowcolor[gray]{0.95}\textit{Kemijske Znanosti} \\ - \textit{Biomedicina} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kateri predmet ste izbrali?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Statistične metode za analizo podatkov in Fiziologija in morfologija - integrativni pristop} \\ - \rowcolor[gray]{0.95}\textit{Napredna molekulska genetika} \\ - \textit{Biofizika makromolekul in membran} \\ - \rowcolor[gray]{0.95}\textit{Metode NMR, Rentgensko difrakcijo...} \\ - \textit{Mehanizmi uravnavanja izražanja genov prokariontov} \\ - \hline -\hline -\end{longtable} -\subsubsection{Izbira predmeta izven UL }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi.} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 1 & 4 & 25 & 96 & 26 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kateri predmet ste izbrali?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Od okolja do nevronskih mrež} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Zadovoljstvo z izvajanjem programov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline \multicolumn{5}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Bioznanosti int.} \\ - \hline -Pridobitev generičnih znanj & 22 & 2 & 5 & 1.1 & 4.2 \\ - Zadovoljstvo z izvajanjem prog. & 26 & 2 & 5 & 0.8 & 4.2 \\ - Uporabnost za dr. dizertacijo & 25 & 2 & 5 & 0.9 & 4.1 \\ - Spodbujanje kritične razprave & 24 & 2 & 5 & 1.0 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Ustreznost izbirnih predmetov & 26 & 2 & 5 & 1.1 & \textbf{\textcolor[HTML]{F58137}{3.8}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis2_2letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Primerna oblika izvedbe predmetov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?} -\begin{tabular}{lccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{Predavanja}} & \multicolumn{2}{r}{\textbf{Konzultacije}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{\\Kombinacija\\obojega}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 2 & 7 & 3 & 11 & 22 & 81 & 27 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 4 & 11 & 3 & 8 & 30 & 81 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Navedite zakaj: } \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Predavanja so vedno koristna, ker se ponavadi porodijo takšna in drugačna vprašanja, na katere recimo sploh ne bi pomislil. Ker pa je čas, posvečen predavanjem, kratek, je kakšne bolj eksplicitne primere (na primer v zvezi z določenim poskusom, v sklopu naše doktorske teme) bolje razčistiti v sklopu konzultacij.} \\ - \rowcolor[gray]{0.95}\textit{Oboje je pomembno, tako konzultacije- pogovor in debata o stvari ter sama predavanja} \\ - \textit{S predavanji pridobimo znanje, ki ga potrebuje vsak študent, medtem ko s konzultacijami pridobimo bolj specifično znanje, ki se ponavadi navezuje na našo doktorsko temo.} \\ - \rowcolor[gray]{0.95}\textit{Trajajo manj časa in se lahko bolj posvetim raziskovanju} \\ - \textit{Kombinacija obojega omogoča pridobivanje splošnega znanja in hkrati prilagoditev na temo doktorske naloge} \\ - \rowcolor[gray]{0.95}\textit{Vsaka oblika ima svoje prednosti in slabosti.} \\ - \textit{Se bolj osebno posvetiš delu in nanj pripraviš.} \\ - \rowcolor[gray]{0.95}\textit{boljši stik z izvajalcem in možnost razprave} \\ - \textit{Same konzultacije so sestanek, na katerem se predstavi cilj in vsebina predmeta (snov in viri). Potem je na študentu, da on sam razišče in najde pot skozi snov in se pripravi na izpit ali običajno pisanje seminarske naloge. To delo je zahtevno in včasih se človek na poti malo zgubi. Pri predavanjih, po drugi strani pridobimo boljši vpogled v snov, je vse bolj jasno in študent, predvidevam, pride v stik z deli predmeta, s katerimi drugače ne bi. Predavanja so koristna in vedno zanimiva in mislim da študent dobi več s predavanji.} \\ - \rowcolor[gray]{0.95}\textit{Ker s predavanji dobimo širši vpogled v predavano snov, medtem ko so konzultacije bolj ozko usmerjene} \\ - \textit{Povezati teorijo s praktičnimi primeri.} \\ - \rowcolor[gray]{0.95}\textit{Predavanja so dobra dopolnitev samih konzultacij - za 'predelavo' težjega dela teorije, ipd.} \\ - \textit{Predavanja so zaželjena predvsem zaradi podajanja snovi direktno s strani profesorja, konzultacije tega nikakor ne zagotavljajo, ker ge večinoma za učenje iz knjig brez dodatne razlage in je razumevanje zato omejeno. Po drugi strani so konzultacije zaželjene, ker je s profesorjem možno snov predebatirati v okviru doktorske naloge. Na tak način se ustvari okolje za potencialno sodelovanje in razvoj idej in njihovo izvedbo.} \\ - \rowcolor[gray]{0.95}\textit{Pri določenih znanjih je potrebna določena količina teorije in znanja posredovanega s strani predavatelja. KOnzultacje pa omogočajo direktno razpravo s predavateljem in spodbujajo poglobljeno delo študenta o določeni temi.} \\ - \textit{Pisanje in raziskovanje za doktorsko nalogo že samo po sebi vključuje veliko samostojnega dela ter konzultacije. Predavanja z več udeleženimi so zato zelo dobrodošla, saj je po navadi omogočena neka razprava med doktorskimi študenti. Po drugi strani konzultacije omogočajo podrobnejšo seznanitev z željenimi tematikami.} \\ - \rowcolor[gray]{0.95}\textit{Predavanja so učinkovitejši način izvajanja predmeta.} \\ - \textit{Potrebno je le vedeti, kaj se je treba nauciti in kateri material je ustrezen za to. Taka oblika pusti vec znanja kot na predevanjih, kjer profesorji ponavadi namignejo, kaj bo na izpitu.} \\ - \rowcolor[gray]{0.95}\textit{Predavanja vzamejo preveč časa, medtem ko na konzultacijah študent ne odnese toliko znanja, tako da je kombinacija obojega najprimernejša.} \\ - \textit{Predavanja dajo neko osnovo za nadaljno razmišljanje in možnost diskusije, ki je med več prisotnimi boljša kot le med dvema .} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Raje bi se posvetil raziskovanju.} \\ - \rowcolor[gray]{0.95}\textit{Pogoji za vpise v naslednje letnike so malo ozki. Včasih pride raziskovalno delo prej, ali pa ga v prvem delu študija sploh ni. Ali obratno... Načeloma pa v redu.} \\ - \textit{Profesorji so na voljo vedno, so prijazni in pripravljeni pomagati.} \\ - \rowcolor[gray]{0.95}\textit{Delanje 30 strani seminarjev na tematiko, ki bi sicer lahko bila doprinesla k našemu doktoratu, ampak brez posluha izvajalcev je popolna izguba časa!} \\ - \textit{Niti ne.} \\ - \rowcolor[gray]{0.95}\textit{Pozitivno se mi zdi, da profesorji (vsaj v mojem primeru) temo seminarja povsem prilagodijo temi moje doktorske naloge.} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Temeljni/obvezni izbirni predmeti }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Ali ste imeli v letošnjem letu temeljne obvezne predmete?} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 5 & 19 & 22 & 81 & 27 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Lahko bi imeli nabor predmetov, ki bi jih lahko izbrali doktorski študentje, ki za svoj doktorat potrebujejo znanje, ki ga na dodiplomskem študiju niso osvojili (npr.: temeljni predmeti iz področja genetike, za doktorske študente gozdarstva),} \\ - \rowcolor[gray]{0.95}\textit{Pohvalil bi kvalitetne konzultacije in jasno dolocbo materiala, iz katerega se je potrebno nauciti za izpit. Spremeniti ni potrebno nic posebnega.} \\ - \textit{Spremenila bi število predavanj.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Konkretno in posteno.} \\ - \rowcolor[gray]{0.95}\textit{Je ustrezno.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Izbirni predmeti }% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Ali ste imeli v letošnjem letu izbirne predmete?} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 19 & 70 & 8 & 30 & 27 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Statistika je odlična izbira - tako pri prof. Košmelj, kot pri prof. Blejcu. Študentje tako iz 2 različnih vidikov spoznamo pristop k problemom. Lahko bi jim namenili več ur, saj je statistična obdelava podatkov nekaj osnovnega, kar bi moral znanstvenik vedeti.} \\ - \rowcolor[gray]{0.95}\textit{pohvalila bi izvajanje predmeta Statistične metode za analizo podatkov. Mislim, da bi predmet kot je ta moral opravljati vsak doktorski študent.} \\ - \textit{Predavanja so super, vendar bi čas raje posveil raziskovanju.} \\ - \rowcolor[gray]{0.95}\textit{Izvedba je seveda pogojena s številom vpisanih v ta predmet v določenem letu, tako da pri določenih predmetih ni predavanj. Kar je škoda. Po drugi strani, določeni profesorji, kljub temu pripravijo kratek pregled snovi in je to za študenta zelo koristno.} \\ - \textit{Izvedba v obliki predavanj in priprave seminarskih nalog; Pohvalno- izbira tem pri seminarskih nalogah} \\ - \rowcolor[gray]{0.95}\textit{Angažiranost profesorjev pri izbirnem predmetu Biofilmi - predelali smo članke, imeli predavanje, opravili smo lastno laboratorijsko delo in napisali smo poročilo. Multivariatne statistične metode - uporabno delo na računalniku} \\ - \textit{Predvsem pripravljenost proferosjev da ponudijo pomoč študentu v okviru njihovega predmeta, na primer v obliki uporabe naprav (NMR, XRD) ter analize vzorcev in pomoči pri interpretaciji rezultatov (izpostavljam prof.dr Plavca, prof dr. Medena in prof. dr Ksenijo Kogej s FKKT)} \\ - \rowcolor[gray]{0.95}\textit{Spodbujena je bila razprava, podana znanja so bila dovolj široka za različna področja, predavatelji so bili dobro organizirani in so predavali o aktualnih zadevah.} \\ - \textit{Nimam pripomb, izbirne predmete sem izbral zaradi želje po osvojitvi dodatnih znanj.} \\ - \rowcolor[gray]{0.95}\textit{Izvedba izbirnih predmetov je bila ustrezna in ne bi spreminjala ničesar.} \\ - \textit{Predmeti iz statistike pri prof. Košmeljevi so daleč najboljši in najbolj uporabni od vseh, ki sem jih izbral - mešanica predavanj in domačih nalog ter povsem uporabe vsebine za naprej.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Izpiti so primerni univerzitetnemu nivoju. Preverja se znanje in razumevanje snovi.} \\ - \rowcolor[gray]{0.95}\textit{Izvajanje predmeta se mi je zdelo odlično, saj smo imeli predavanja zastavljena tako, da smo pridobili gradivo z nalogami katere smo reševali na računalnikih skupaj s profesorico. Tako smo lahko preverili ali smo naloge reševali pravilno in takoj odpravili napake, ki bi jih sicer težje opazili, če bi identično stvar opravljali sami doma.} \\ - \textit{Všeč mi je, da se tudi izvajatelji zavedajo nesmisla predavanj na tej stopnji in s preverjanjem ne komplicrajo. Ta čas bi raje posveil raziskovanju.} \\ - \rowcolor[gray]{0.95}\textit{Način preverjanja znanja je odvisen od predmeta ampak vseeno usmerjen v integracijo pridobljenih informacij (iz različnih virov) in razumevanje določene problematike, kar je seveda zelo dober pristop.} \\ - \textit{Je ustrezen} \\ - \rowcolor[gray]{0.95}\textit{Da se znanja praktično ne preverja, razen pri predmetih z dejanskim izpitom (Multivariatne statistične metode).} \\ - \textit{Ustrezno.} \\ - \rowcolor[gray]{0.95}\textit{Je ustrezno.} \\ - \textit{Način je ustrezen.} \\ - \rowcolor[gray]{0.95}\textit{So ustrezna} \\ - \textit{Gre za pisanje in ocenjevanje seminarjev, kar je pozitivno, ker gre za tematiko, ki se tiče doktorske naloge, a je po drugi strani pisanje seminarjev brez interakcije (posvetovanj) s profesorji manj učinkovito.} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Pomoč in podpora mentorja} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Pomoč in podpora mentorja - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline \multicolumn{5}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Bioznanosti int.} \\ - \hline -Odzivnost mentorja po el. pošti & 27 & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Pogostost stikov z mentorjem & 27 & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Mentor mi nudi podporo & 27 & 3 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Pomoč mentorja pri težavah & 27 & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Pomoč mentorja pri znan. čl. & 25 & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Ustrezno svetovanje mentorja & 27 & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis3_2letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Sodelovaje je odlično. Ves čas sva v interakciji - ne nujno z mojim delom - tako, da se konstantno učim nove stvari. Poleg tega me pusti, da sama zastavljam in vodim poskuse. Spremenila ne bi nič.} \\ - \rowcolor[gray]{0.95}\textit{Mentorica mi je v zadnjih dveh letih bila v veliko podporo pri samem študiju in opravljanju raziskave. Zaradi njenih poznanstev in povezav z drugimi (tujimi) univerzami sem imela priložnost povezovanja in spoznavanja znanstvenikov na področjih, ki se dotikajo moje doktorske teme.} \\ - \textit{Super je, problem je edino ker je pogosto zaposlena in nedosegljiva.} \\ - \rowcolor[gray]{0.95}\textit{Odlično} \\ - \textit{Zelo zadovoljna, vedno pripravljen pomagati in poslušati.} \\ - \rowcolor[gray]{0.95}\textit{Sodelovanje je odlično. Stalne spodbude, pomoč pri raziskovalnem delu in vodenje v pravem pomenu besede!} \\ - \textit{Sodelovanje je odlično, mentorica je vedno na voljo, in ima veliko razumevanja.} \\ - \rowcolor[gray]{0.95}\textit{Zelo dobro. Strokovnost, kritičnost, usmerjanje, prijaznost, konstruktivnost.} \\ - \textit{Mentor je zelo odziven po elektronski pošti in redno imamo poročanje o napredovanju raziskovalnega dela. Vedno pomaga najti rešitev, obenem pa tudi dovoli raziskovalno svobodo in samostojnost. Same pohvale} \\ - \rowcolor[gray]{0.95}\textit{Zelo uspešno.} \\ - \textit{Z mentorico dobro sodelujeva.} \\ - \rowcolor[gray]{0.95}\textit{Brez komentarja...} \\ - \textit{Sem zadovoljna.} \\ - \rowcolor[gray]{0.95}\textit{Odlično. Sodelujeva tedensko, mentorico zanima moja tema in se ji zdi zanimiva, zato so tudi konzultacije informativne in zanimive. Redno me obvešča o potencialno zanimivih dogodkih in publikacijah na katere naleti.} \\ - \textit{Sodelovanje s svojim mentorjem ocenjujem kot odlično. Pohvalil bi primerno strukturiranost dela za dosego začrtanih ciljev dispozicije.} \\ - \rowcolor[gray]{0.95}\textit{Dobro.} \\ - \textit{Sodelovanje je obojestransko in sodelujeva pri odločitvah tekom raziskovalnega dela kot tudi tekom pisanja člankov in izbire obiskov tujih ustanov ali znanstvenih konferenc v tujini.} \\ - \rowcolor[gray]{0.95}\textit{Moj mentor z ravno pravšnjo vpetostjo v mednarodno raziskovalno skupnost mi omogoča, da spoznam tako delo, fokusirano na eno temo (moj doktorat) kot delo, ko je človek razpet med nekaj projektov in pisanje več člankov naenkrat ter sodelovanje s tujimi raziskovalci. Tako izrazito dinamično in hiperproduktivno delo mi omogoči vpogled v kasnejšo gradnjo kariere, a me obenem od tega odvrača (krivda seveda ni mentorjeva, tako je pač trenutno stanje).} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Kakšne so vaše izkušnje s prijavo dispozicije doktorske naloge?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Stresne. Ob vseh študijskih obveznostih, ki so se v tistem času izvajale, in pomanjkanju preliminarnih poskusov, je bilo izredno težko napisati dispozicijo.} \\ - \rowcolor[gray]{0.95}\textit{Katastrofalne. Vsi so zelo zaposleni (kar razumem) in nima veze koliko hitim, bom vseeno izgleda da komaj ujel zadnji rok oddaje. Zelo dosti je pritiskov, da v dispozicijo stlačim čimveč reči. Pol jih potem ne dela, in ostale ki delajo, pa mi močno omejijo svobodo pri nadaljevanju naloge.} \\ - \textit{Proces je dolgotrajen ampak se mi zdi primerno, da se metode dela in hipoteze predstavijo in so odobrene, preden je večina dela že narejenega} \\ - \rowcolor[gray]{0.95}\textit{Ni bilo večjih težav.} \\ - \textit{Pozitivne.} \\ - \rowcolor[gray]{0.95}\textit{dobre} \\ - \textit{Premalo jasna so navodila glede obveščanja članov komisije in zaradi tega prihaja do neugodnih situacij, če so člani komisije iz tujine.} \\ - \rowcolor[gray]{0.95}\textit{Zelo dobre, zato ker, je komisija bila zelo konstruktivna in vsi predlogi in nasveti so bili povsem upravičeni. Delo na pripravi dispozicije je zelo zahtevno, ampak je pomoč mentorjev pri tem tudi zelo velika. Besedilo je zelo pomembno, saj mora dobro predstaviti plan in okvir dela in čim bolj jasno in nedvoumno je, je tudi potem delo lažje izvajati, saj je določeno kaj je v fokusu in kakšen je obseg dela.} \\ - \textit{Prijava je potekala v redu. Dobro se mi je zdelo, da je bil možen zagovor pred komisijo in mentorjem.} \\ - \rowcolor[gray]{0.95}\textit{Pozitivne} \\ - \textit{Zelo dobre.} \\ - \rowcolor[gray]{0.95}\textit{S prijavo nisem imela večjih težav. Pri zagovoru pa so se zahteve komisije razlikovale od navodil, ki smo jih dobili študenti (sheme, potek dela, ipd).} \\ - \textit{Brez problemov, odziv mentorja je bil sicer zelo počasen v fazi priprave dispozicije (zamujanje rokov za oddajo)} \\ - \rowcolor[gray]{0.95}\textit{Nimam slabih izkušenj. Prijavo sem uspešno izvedla.} \\ - \textit{Dobre. Postopek je bil razložen jasno in oprijemljivo, sploh kar se tiče trajanja in rokov. Tudi izvedba je bila korektna, po zahtevanih točkah. Komisija se je držala rokov in bila konstruktivna.} \\ - \rowcolor[gray]{0.95}\textit{Izkušnje so pozitivne.} \\ - \textit{Prijava poteka v redu. Vsi predlogi o dodelavi/spremembi teme niso nujno realni.} \\ - \rowcolor[gray]{0.95}\textit{pozitivne.} \\ - \textit{Brez posebnosti. Sledili smo navodilom prijave.} \\ - \rowcolor[gray]{0.95}\textit{Prijava dispozicije mi ni delala težav in menim da je super prvi vpogled v obseg doktorske naloge in pričakovanih rezultatov.} \\ - \textit{Izkušnje so dobre, člani komisije so jo relativno hitro pregledali, dali nekaj manjših komentarjev. Referentka Vesna Ješe Janežič je pa tudi vedno prijazna in na voljo za vprašanja, kar je v ogromno pomoč.} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{O članku razmišljam konstantno, vendar do pisanja še nisem utegnila priti. Težave... premalo dodelani rezultati, ker se je hitelo s poskusom zaradi vezanosti na rastno sezono. Nismo utegnili dodobra dodelati poskus, zato bo najverjetneje treba še tretjič vse ponoviti, kar pa zna trajati kar nekaj časa (spet 1 leto).} \\ - \rowcolor[gray]{0.95}\textit{Članek sem že oddala v revijo, pridobili smo prve komentarje reviewer-jev. Članek sedaj izboljšujemo v naslednjih dneh pa bo sledila dokončna oddaja!} \\ - \textit{Trenutno sem pri 23. verziji članka, katerega sem dosedaj preoblikoval v formate 4 različnih revij. Še vedno nismo oddali v recenzijo ker so vsi zelo zaposleni in traja ogromno časa, da pregledajo in odobrijo članek. Nikoli niso zadvoljni s količino rezultatov v članku. Dnevno se sprašujem kaj počnem s svojim življenjem.} \\ - \rowcolor[gray]{0.95}\textit{Razmišljamo o strukturi in temi članka, vendar še nimamo dovolj rezultatov za objavo} \\ - \textit{Dolgotrajen proces prijave in čakanje odgovora, na katerega nimaš vpliva, tako da je lovljenje rokov oteženo.} \\ - \rowcolor[gray]{0.95}\textit{Razmišljam o pisanju članka.} \\ - \textit{razmišljanje da, pisanje še ne} \\ - \rowcolor[gray]{0.95}\textit{Dolgotrajna pot do objave v ustrezni reviji...} \\ - \textit{Ne še, nisem še začel pisati. Osnovna težava je dobiti dobre rezultate. Pisanje članka je zelo zahtevno, zato ker vključuje več veščin, dobro znanje angleščine, obvladovanje računalniških programov za obdelavo podatkov in vizualno predstavljanje teh ter seveda sama oblika in vsebina - torej, kako na najkrajši in najbolj razumljiv način ubesediti laboratorijsko delo. Tudi, po tem ko se članek spiše, je vprašanje kakšen bo odziv urednikov revije, v kateri ga želimo objaviti. Glede na to da to ponavadi traja dalj časa in da nikoli ne gre gladko, vidim to kot neizogibno težavo.} \\ - \rowcolor[gray]{0.95}\textit{Članek že pripravljam.} \\ - \textit{Že razmišljam.} \\ - \rowcolor[gray]{0.95}\textit{Članek sem somentorju poslala že v začetku leta (januarja!!!), a se z njim ni ukvarjal do julija. Tako komunikacija s somentorjem in njegova ignoranca predstavljata največji problem pri mojem delu.} \\ - \textit{Pričakujem predvsem zelo počasen odziv oseb odgovornih za pregled in objavo članka/ov} \\ - \rowcolor[gray]{0.95}\textit{Članek sem že poslala v željeno znanstveno revijo in je v postopku. Težav ne pričakujem.} \\ - \textit{Članek smo že začeli pisati. Težave pričakujemo predvsem v dolgem časovnem intervalu za objavo članka, potem ko je le-ta že bil poslan v recenzijo.} \\ - \rowcolor[gray]{0.95}\textit{Clanek sem ze objavil, drugi je napisan in nacrtovan je se tretji, ki bo vseboval rezultate. Posebnih tezav v zvezi z objavljanjem ni.} \\ - \textit{Že objavil.} \\ - \rowcolor[gray]{0.95}\textit{Članka se nime začela pisati, saj še raziskovalni del naloge poteka in predvidoma zaključen v sredini leta 2018. Pričakujem predvsem težave z recenzenti in njihovimi komentarji, predvsem na področju metod.} \\ - \textit{Da, premišljeval sem, tudi tema je izbrana, vendar pa je v mojem primeru problem ta, da mi več kot polovico časa za končanje doktorske naloge gre za gradnjo podatkovne baze, zato obstaja možnost, da se mi bo zaradi potrebnega časa za analize in vključitve nekaj deset soavtorjev (zaradi obsežne tematike) ter recenziranja zmanjkovalo časa za dejansko objavo.} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Del študija in ostale aktivnosti v tujini} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:21 2017 -\begin{table}[ht] -\centering -\caption{Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline \multicolumn{5}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Bioznanosti int.} \\ - \hline -Vključenost v razis. sk. & 25 & 1 & 5 & 1.4 & 4.1 \\ - Možnost udeležbe konf. v tujini & 27 & 1 & 5 & 1.3 & 4.1 \\ - Možnost študija/razis. dela v tuj. & 25 & 1 & 5 & 1.2 & \textbf{\textcolor[HTML]{F58137}{3.8}} \\ - Del študija ali razis. dela v tujini & 25 & 1 & 5 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.7}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis4_2letnik.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Zaenkrat ne, saj sem v prejšnjih delih ankete napisal vse kar se mi je zdelo pomembno.} \\ - \rowcolor[gray]{0.95}\textit{Samoiniciativnost se izkazuje kot problem.} \\ - \textit{Pravzaprav ne.} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Svetovalna pomoč študentom} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - dejavniki (opisne statistike) po študijskem programu} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline \multicolumn{5}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Bioznanosti int.} \\ - \hline -Odzivnost in učinkovitost ref. & 28 & 4 & 5 & 0.2 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Ustrezen odnos osebja & 28 & 4 & 5 & 0.2 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Uradne ure študentskega ref. & 28 & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Celovite info. na spletni str. & 28 & 2 & 5 & 0.6 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij) po programih} - \includegraphics[width=\maxwidth]{../rezultati/3000071/grafi/izpis5_2letnik.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Vaši predlogi glede delovanja referata in svetovanja študentom.} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Odlično svetovanje in pomoč študentom. Kar tako naprej!} \\ - \rowcolor[gray]{0.95}\textit{Posebej bi rad pohvalil mag. Vesno Ješe Janežič. Zelo je prijazna, vedno se hitro odzove in pomaga.} \\ - \textit{Vse je v redu.} \\ - \rowcolor[gray]{0.95}\textit{Odlično je obveščanje študentov!. Ga. Vesna Ješe Janežič opravlja izjemno delo, za kar se ji lahko iz srca zahvalimo!} \\ - \textit{Referat deluje zelo dobro, zaposleni na referatu za doktorski študij so vedno na voljo in zelo izjemno prijazni.} \\ - \rowcolor[gray]{0.95}\textit{Jih nimam.} \\ - \textit{jih nimam} \\ - \rowcolor[gray]{0.95}\textit{Poteka odlično.} \\ - \textit{Kar tako naprej.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali sta prvi dve leti študija izpolnili vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Pričakovanj ni bilo preveč, ker se je vse odvilo prehitro. Zelo dobro je, da imamo možnost stopiti v svet raziskovanja in samostojnosti. Nikjer drugje to ne bi bilo mogoče. Spremenila bi edino razporeditev in zmanjšala količino izbirnih predmetov (KT). Mogoče bi bilo bolj smiselno, da bi se pustilo opravljati predmete tudi v 3. letniku.} \\ - \rowcolor[gray]{0.95}\textit{Prvi dve leti sem izpolnila svoja pričakovanja. Pohvalila bi možnost in dostop do vse potrebne literature in možnost uporabe laboratorijskega materiala in mehanizacije pri pridobivanju rezultatov potrebnih raziskav.} \\ - \textit{Najbolj bi pohvalila možnost raziskovalnega dela v tujini. Spremenila bi le to, da se poveča število KT za raziskovalno delo in zmanjša število KT za opravljanje predmetov.} \\ - \rowcolor[gray]{0.95}\textit{Prvi dve leti študija sta mi močno zmanjšali moje ambicije in pričakovanja. Trudim se objaviti članek in mi nikakor ne gre. Moje eksperimentalno delo se neprestano ruši in podira. Vedno gre kaj narobe, vedno je vse kar naredim premalo. Pogosto sem se začel spraševati kaj sploh delam. Če se mi uspe zamotiti z delom to ni več tako problematično.} \\ - \textit{Sta izpolnili pričakovanja. 2. letnik se mi zdi najbolj naporen - predstavitev teme bi lahko imela več KT glede na čas, ki je potreben za pisanje in pripravo. Tako bi imeli kakšen izbirni predmet manj. Dodaten stres je tudi pogoj, da je za vpis v 3. letnik potrebno opraviti vse obveznosti.} \\ - \rowcolor[gray]{0.95}\textit{Zaenkrat brez večjih težav. Lepo organizirano in veliko novega.} \\ - \textit{S študijem sem bila zelo zadovoljna in sem izpolnila svoja pričakovanja.} \\ - \rowcolor[gray]{0.95}\textit{Prvič, nisem pričakoval, da bodo določeni aspekti študija zelo zahtevni. Konec koncev, to je doktorski študij in je to normalno ampak je zame bilo kar težko. Prvi dve leti sta bili res zahtevni in sicer najbolj v smislu izpopolnjevanja veščin v laboratoriju, koordinacije dela z večjim številom ljudi in med različnimi inštitucijami. Izvedba dela, obdelava rezultatov, priprava rezultatov in predstavitev le-teh je morala biti na visokem nivoju, kar je seveda odlična priprava na kvaliteten pristop k delu v karieri po študiju. Sem zadovoljen, da sem imel priložnost izpopolniti svoje znanje in veščine v tem smislu. Lahko rečem, da so moja pričakovanja bila drugačna oz. nisem si doktorski študij predstavljal kot tako težek, ampak sem sedaj kljub temu srečen, da sem imel možnost študija na doktorski ravni in hvaležen za vse kar sem se do sedaj naučil.} \\ - \textit{Pričakovanja glede napredka v znanstven-raziskovalnem delu so izpolnjena. Želela bi si, da bi lahko posvetila temu še več časa zdaj in tudi v prihodnosti.} \\ - \rowcolor[gray]{0.95}\textit{Dosedanje izkušnje so izpolnile pričakovanja.} \\ - \textit{Pohvalila bi sodelovanje z mentorjem in pridobivanje ustreznih ter pravočasnih informacij s strani kompetemtnega osebja.} \\ - \rowcolor[gray]{0.95}\textit{Razočarana sem nad tem, da pri veliki večini predmetov sploh ni več ocenjevanja, ampak se kar povsod dobi '10ke'...} \\ - \textit{Pričakovanja so bila vsaj v nekaterih pogledih pretirana in so ostala neizpolnjena. Z raziskavami sem sicer zadovoljen ker raziskujem področje, ki me zanima in veseli. Predvsem bi si želel več možnosti za sodelovanje z drugimi raziskovalci in inštutucijami, ki se ukvarjajo s podobnimi problemi.} \\ - \rowcolor[gray]{0.95}\textit{Ničesar ne bi spremenila.} \\ - \textit{Pričakovanja so bila izpolnjena. Rad bi bil nekoliko več vključen še v pedagoški proces. Število obveznih predmetov bi lahko bilo nekoliko manjše ali pa bi s kreditnimi točkami lahko bili ovrednotene tudi znanstvene objave oz. prispevki na konferencah.} \\ - \rowcolor[gray]{0.95}\textit{Prvi dve leti študija sta v osnovi izpolnili moja pričakovanja.} \\ - \textit{Nisem imel pricakovanj, razen da lahko v okviru doktorskega projekta opravim raziskovalno delo, ki se je nakazalo v diplomi, in za to ter objavljene clanke pridobim naslov.} \\ - \rowcolor[gray]{0.95}\textit{Prvi dve leti sta izpolnili pričakovanja, predvsem mi je všeč prilagodljivost profesorjev na doktorskem študiju, saj so zaradi obsega raziskovalnega dela, pripravljeni uskladiti z študentom glede opravljanja obveznosti.} \\ - \textit{Študijske obveznosti (predmeti, seminarji) so mi pobrale več časa kot bi si želel.} \\ - \hline -\hline -\end{longtable} -\subsubsection{Način študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Kako študirate:} -\begin{tabular}{lccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Mladi\\raziskovalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ml. raz.\\v gospodarstvu}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\fin. sam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\delodajalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\drugi viri}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti int. & Drugi & 16 & 57 & 0 & 0 & 6 & 21 & 1 & 4 & 5 & 18 & 28 & 100 \\ - Bioznanosti int. & Prvi & 10 & 27 & 0 & 0 & 11 & 30 & 3 & 8 & 13 & 35 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Pahernikova ustanova} \\ - \rowcolor[gray]{0.95}\textit{Univerza v Ljubljani} \\ - \textit{Univerza v Ljubljani} \\ - \hline -\hline -\end{longtable} -\subsubsection{Razlog študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Zakaj ste se odločili za doktorski študij?} -\begin{tabular}{lccccccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Akad.\\kariera}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Osebni\\razvoj}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dobro\\imeti}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Koristno}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Brez\\zaposl.}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Napred.}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Drugo}}}} & - \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} & - \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanost. & Drugi & 9 & 17 & 25 & 47 & 5 & 9 & 5 & 9 & 5 & 9 & 2 & 4 & 2 & 4 & 53 & 100 \\ - Bioznanost. & Prvi & 13 & 18 & 24 & 33 & 8 & 11 & 19 & 26 & 1 & 1 & 5 & 7 & 2 & 3 & 72 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: Drugo:} \\ - \hline - \\ - \\[-0.4cm] \hline -\textit{Uspelo se mi je prepričati da je doktorat bistvo moje eksistence. Nekaj časa sem bil srečen, ker se nisem spraševal zakaj obstajam.} \\ - \rowcolor[gray]{0.95}\textit{da si pridobim še več znanja} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Odločitev o vpisu}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Če bi se danes odločali o vpisu na doktorski študij:} -\begin{tabular}{lccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se odločil\\enako}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se vpisal\\drugam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Se ne bi odločil\\za dr. študij}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ne vem}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Bioznanosti interdisciplinarni & Drugi & 22 & 79 & 1 & 4 & 0 & 0 & 5 & 18 & 28 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 30 & 81 & 3 & 8 & 1 & 3 & 3 & 8 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Alternativni vpis}\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in `align<-.xtable`(`*tmp*`, value = "{}llccccccc"{}): "{}align"{} must have length equal to 11 ( ncol(x) + 1 )}}\end{kframe} -\newpage -\pagestyle{oba} -\section{Analize skupnih spremenljivk po programih in po letnikih} -V nadaljevanju so analizirane vse skupne spremenljivke (razen odprtih vprašanj), ki so bile hkrati vključene v oba letnika. Poleg 25 dejavnikov na lestvicah 1-5 je vključenih še 13 drugih spremenljivk. Analize v tem poglavju so zato namenjene predvsem primerjavam oziroma razlikam med letnikoma in programi. - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{9cm}cc|cccccc} -\caption{Infrastruktura in urniki - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilno nav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline \endfirsthead - \caption{Infrastruktura in urniki - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilnonav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Biomedicina interdisciplinarni & Prvi & ((4)) & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & . & 4.0 \\ - Bioznanosti interdisciplinarni & Prvi & 34 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 4.4 & 4.2 & 4.2 \\ - Bioznanosti interdisciplinarni & Drugi & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & 4.3 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - \hline Skupaj & & 63 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.2 & 4.4 \\ - \hline -\hline -\end{longtable} - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{8.5cm}cc|ccccc} -\caption{Zadovoljstvo z izvajanjem programov - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost za\\dr. dizer.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline \endfirsthead - \caption{Zadovoljstvo z izvajanjem programov - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost za\\dr. dizer.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Biomedicina interdisciplinarni & Prvi & ((4)) & 4.3 & \textbf{\textcolor[HTML]{F58137}{3.8}} & . & 4.0 & 4.0 \\ - Bioznanosti interdisciplinarni & Prvi & 37 & 4.0 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 4.0 & 4.0 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Bioznanosti interdisciplinarni & Drugi & 26 & 4.2 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 4.2 & 4.1 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - \hline Skupaj & & 67 & 4.1 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 4.1 & 4.0 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - \hline -\hline -\end{longtable} - - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{8.5cm}cc|cccccc} -\caption{Pomoč in podpora mentorja - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline \endfirsthead - \caption{Pomoč in podpora mentorja - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline\textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Biomedicina interdisciplinarni & Prvi & ((4)) & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.3 & . & . & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Bioznanosti interdisciplinarni & Prvi & 37 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 4.4 & 4.2 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Bioznanosti interdisciplinarni & Drugi & 27 & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - \hline Skupaj & & 68 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - \hline -\hline -\end{longtable} - - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{10cm}cc|cccc} -\caption{Del študija in ostale aktivnosti v tujini - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - \\ \hline \endfirsthead - \caption{Del študija in ostale aktivnosti v tujini - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Biomedicina interdisciplinarni & Prvi & ((3)) & . & . & . & . \\ - Bioznanosti interdisciplinarni & Prvi & 35 & \textbf{\textcolor[HTML]{F58137}{3.6}} & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.6}} \\ - Bioznanosti interdisciplinarni & Drugi & 25 & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & 4.1 & 4.1 \\ - \hline Skupaj & & 63 & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{F58137}{3.7}} & 4.0 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - \hline -\hline -\end{longtable} - - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{longtable}{p{10cm}cc|cccc} -\caption{Svetovalna pomoč študentom - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline \endfirsthead - \caption{Svetovalna pomoč študentom - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Biomedicina interdisciplinarni & Prvi & ((3)) & . & \textbf{\textcolor[HTML]{006666}{4.8}} & . & 4.3 \\ - Bioznanosti interdisciplinarni & Prvi & 35 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Bioznanosti interdisciplinarni & Drugi & 28 & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - \hline Skupaj & & 66 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - \hline -\hline -\end{longtable} - -\newpage -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Povprečno število tedensko porabljenih ur za doktorski študij - po programih in po letnikih} -\begin{tabular}{p{10cm}ccc} - \hline \hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{n} & \bfseries{Število ur} \\ - \hline -Biomedicina interdisciplinarni & Prvi & 4 & 26 \\ - Bioznanosti interdisciplinarni & Prvi & 36 & 23 \\ - Bioznanosti interdisciplinarni & Drugi & 26 & 33 \\ - Bioznanosti interdisciplinarni & Prvi & 36 & 23 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{8cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\premalo}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\preveč}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 1 & 25 & 1 & 25 & 2 & 50 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 23 & 62 & 14 & 38 & 0 & 0 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Drugi & 13 & 46 & 11 & 39 & 4 & 14 & 28 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 23 & 62 & 14 & 38 & 0 & 0 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 1 & 25 & 3 & 75 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 4 & 11 & 33 & 89 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Drugi & 5 & 19 & 21 & 81 & 26 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 4 & 11 & 33 & 89 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 1 & 25 & 3 & 75 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 5 & 14 & 32 & 86 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Drugi & 1 & 4 & 25 & 96 & 26 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 5 & 14 & 32 & 86 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"} -\begin{tabular}{p{5.5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{Predavanja}} & \multicolumn{2}{r}{\textbf{Konzultacije}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{\\Kombinacija\\obojega}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicin. & Prvi & 0 & 0 & 1 & 25 & 3 & 75 & 4 & 100 \\ - Bioznanost. & Prvi & 4 & 11 & 3 & 8 & 30 & 81 & 37 & 100 \\ - Bioznanost. & Drugi & 2 & 7 & 3 & 11 & 22 & 81 & 27 & 100 \\ - Bioznanost. & Prvi & 4 & 11 & 3 & 8 & 30 & 81 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 4 & 100 & 0 & 0 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 11 & 30 & 26 & 70 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Drugi & 5 & 19 & 22 & 81 & 27 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 11 & 30 & 26 & 70 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina interdisciplinarni & Prvi & 0 & 0 & 4 & 100 & 4 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 32 & 86 & 5 & 14 & 37 & 100 \\ - Bioznanosti interdisciplinarni & Drugi & 19 & 70 & 8 & 30 & 27 & 100 \\ - Bioznanosti interdisciplinarni & Prvi & 32 & 86 & 5 & 14 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{2.5cm}ccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Mladi\\raziskovalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ml. raz.\\v gosp.}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\fin. sam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\delodajalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\drugi viri}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicin. & Prvi & 1 & 25 & 0 & 0 & 1 & 25 & 1 & 25 & 1 & 25 & 4 & 100 \\ - Bioznanost. & Prvi & 10 & 27 & 0 & 0 & 11 & 30 & 3 & 8 & 13 & 35 & 37 & 100 \\ - Bioznanost. & Drugi & 16 & 57 & 0 & 0 & 6 & 21 & 1 & 4 & 5 & 18 & 28 & 100 \\ - Bioznanost. & Prvi & 10 & 27 & 0 & 0 & 11 & 30 & 3 & 8 & 13 & 35 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij?"} -\begin{tabular}{lccccccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Akad.\\kariera}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Osebni\\razvoj}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dobro\\imeti}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Koristno}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Brez\\zaposl.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Napred.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Drugo}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} \\ \hline -Biomedicin. & Prvi & 1 & 14 & 3 & 43 & 0 & 0 & 2 & 29 & 0 & 0 & 1 & 14 & 0 & 0 & 7 & 100 \\ - Bioznanost. & Prvi & 13 & 18 & 24 & 33 & 8 & 11 & 19 & 26 & 1 & 1 & 5 & 7 & 2 & 3 & 72 & 100 \\ - Bioznanost. & Drugi & 9 & 17 & 25 & 47 & 5 & 9 & 5 & 9 & 5 & 9 & 2 & 4 & 2 & 4 & 53 & 100 \\ - Bioznanost. & Prvi & 13 & 18 & 24 & 33 & 8 & 11 & 19 & 26 & 1 & 1 & 5 & 7 & 2 & 3 & 72 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"} -\begin{tabular}{p{3.5cm}ccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se odločil\\enako}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se vpisal\\drugam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Se ne bi odločil\\za dr. študij}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ne vem}}}} -& \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicin. & Prvi & 4 & 100 & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 100 \\ - Bioznanost. & Prvi & 30 & 81 & 3 & 8 & 1 & 3 & 3 & 8 & 37 & 100 \\ - Bioznanost. & Drugi & 22 & 79 & 1 & 4 & 0 & 0 & 5 & 18 & 28 & 100 \\ - Bioznanost. & Prvi & 30 & 81 & 3 & 8 & 1 & 3 & 3 & 8 & 37 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Dec 06 14:25:22 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"} -\begin{tabular}{p{5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi\\program na UL}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi VŠ\\zavod v RS}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{V tujino}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Biomedicina int. & Prvi & 0 & . & 0 & . & 0 & . & 0 & 100 \\ - Bioznanosti int. & Prvi & 1 & 33 & 0 & 0 & 2 & 67 & 3 & 100 \\ - Bioznanosti int. & Drugi & 0 & 0 & 0 & 0 & 1 & 100 & 1 & 100 \\ - Bioznanosti int. & Prvi & 1 & 33 & 0 & 0 & 2 & 67 & 3 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage - -\end{document} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.toc b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.toc deleted file mode 100644 index d83245b46..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Institucijah.toc +++ /dev/null @@ -1,47 +0,0 @@ -\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1} -\contentsline {subsection}{\numberline {1.1} Prvi letnik}{1}{subsection.0.1.1} -\contentsline {subsection}{\numberline {1.2} Drugi letnik}{2}{subsection.0.1.2} -\contentsline {section}{\numberline {2.}Metodologija}{4}{section.0.2} -\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{6}{section.0.3} -\contentsline {section}{\numberline {4.}Podrobne analize: Prvi letnik}{7}{section.0.4} -\contentsline {subsection}{\numberline {4.1}Analiza dejavnikov}{7}{subsection.0.4.1} -\contentsline {subsection}{\numberline {4.2}Podrobna analiza vseh spremenljivk po sklopih}{11}{subsection.0.4.2} -\contentsline {subsubsection}{\numberline {4.2.1}Infrastruktura in urniki}{11}{subsubsection.0.4.2.1} -\contentsline {subsubsection}{\numberline {4.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{12}{subsubsection.0.4.2.2} -\contentsline {subsubsection}{\numberline {4.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{12}{subsubsection.0.4.2.3} -\contentsline {subsubsection}{\numberline {4.2.4}Izbira predmeta na drugih programih UL }{14}{subsubsection.0.4.2.4} -\contentsline {subsubsection}{\numberline {4.2.5}Izbira predmeta izven UL }{14}{subsubsection.0.4.2.5} -\contentsline {subsubsection}{\numberline {4.2.6}Zadovoljstvo z izvajanjem programov}{16}{subsubsection.0.4.2.6} -\contentsline {subsubsection}{\numberline {4.2.7}Primerna oblika izvedbe predmetov}{17}{subsubsection.0.4.2.7} -\contentsline {subsubsection}{\numberline {4.2.8}Temeljni/obvezni izbirni predmeti }{19}{subsubsection.0.4.2.8} -\contentsline {subsubsection}{\numberline {4.2.9}Izbirni predmeti }{20}{subsubsection.0.4.2.9} -\contentsline {subsubsection}{\numberline {4.2.10}Pomo\IeC {\v c} in podpora mentorja}{22}{subsubsection.0.4.2.10} -\contentsline {subsubsection}{\numberline {4.2.11}Doktorska disertacija }{23}{subsubsection.0.4.2.11} -\contentsline {subsubsection}{\numberline {4.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{25}{subsubsection.0.4.2.12} -\contentsline {subsubsection}{\numberline {4.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{27}{subsubsection.0.4.2.13} -\contentsline {subsubsection}{\numberline {4.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{30}{subsubsection.0.4.2.14} -\contentsline {subsubsection}{\numberline {4.2.15}Razlog \IeC {\v s}tudija}{30}{subsubsection.0.4.2.15} -\contentsline {subsubsection}{\numberline {4.2.16}Odlo\IeC {\v c}itev o vpisu}{30}{subsubsection.0.4.2.16} -\contentsline {subsubsection}{\numberline {4.2.17}Alternativni vpis}{32}{subsubsection.0.4.2.17} -\contentsline {subsubsection}{\numberline {4.2.18}Dodatni komentarji \IeC {\v s}tudentov}{32}{subsubsection.0.4.2.18} -\contentsline {section}{\numberline {5.}Podrobne analize: Drugi letnik}{33}{section.0.5} -\contentsline {subsection}{\numberline {5.1}Analiza dejavnikov in vsebinskih sklopov}{33}{subsection.0.5.1} -\contentsline {subsection}{\numberline {5.2}Podrobna analiza vseh spremenljivk po sklopih}{37}{subsection.0.5.2} -\contentsline {subsubsection}{\numberline {5.2.1}Infrastruktura in urniki}{37}{subsubsection.0.5.2.1} -\contentsline {subsubsection}{\numberline {5.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{38}{subsubsection.0.5.2.2} -\contentsline {subsubsection}{\numberline {5.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{38}{subsubsection.0.5.2.3} -\contentsline {subsubsection}{\numberline {5.2.4}Ustreznost trajanja doktorskega \IeC {\v s}tudija}{38}{subsubsection.0.5.2.4} -\contentsline {subsubsection}{\numberline {5.2.5}Izbira predmeta na drugih programih UL }{41}{subsubsection.0.5.2.5} -\contentsline {subsubsection}{\numberline {5.2.6}Izbira predmeta izven UL }{41}{subsubsection.0.5.2.6} -\contentsline {subsubsection}{\numberline {5.2.7}Zadovoljstvo z izvajanjem programov}{42}{subsubsection.0.5.2.7} -\contentsline {subsubsection}{\numberline {5.2.8}Primerna oblika izvedbe predmetov}{43}{subsubsection.0.5.2.8} -\contentsline {subsubsection}{\numberline {5.2.9}Temeljni/obvezni izbirni predmeti }{45}{subsubsection.0.5.2.9} -\contentsline {subsubsection}{\numberline {5.2.10}Izbirni predmeti }{46}{subsubsection.0.5.2.10} -\contentsline {subsubsection}{\numberline {5.2.11}Pomo\IeC {\v c} in podpora mentorja}{48}{subsubsection.0.5.2.11} -\contentsline {subsubsection}{\numberline {5.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{52}{subsubsection.0.5.2.12} -\contentsline {subsubsection}{\numberline {5.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{54}{subsubsection.0.5.2.13} -\contentsline {subsubsection}{\numberline {5.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{56}{subsubsection.0.5.2.14} -\contentsline {subsubsection}{\numberline {5.2.15}Razlog \IeC {\v s}tudija}{56}{subsubsection.0.5.2.15} -\contentsline {subsubsection}{\numberline {5.2.16}Odlo\IeC {\v c}itev o vpisu}{57}{subsubsection.0.5.2.16} -\contentsline {subsubsection}{\numberline {5.2.17}Alternativni vpis}{57}{subsubsection.0.5.2.17} -\contentsline {section}{\numberline {6.}Analize skupnih spremenljivk po programih in po letnikih}{58}{section.0.6} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.Rnw b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.Rnw deleted file mode 100644 index 3122a100f..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.Rnw +++ /dev/null @@ -1,5028 +0,0 @@ -% Skripta 2: po programih - -\documentclass[11pt,a4paper]{report} -\usepackage[cm]{fullpage} -\newcommand*\rot{\rotatebox{90}} -% Spremeni razmik med naslovom kazala vrhom strani -\usepackage{titlesec} -\titleformat{\chapter}[display] - {\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge} -\titlespacing*{\chapter}{0pt}{-15pt}{25pt} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -% za oznacevanje elementov v tabeli (odprti odg) kot seznam -\newcommand{\tabitem}{~~\llap{\textbullet}~~} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%slovenski napisi -\usepackage{../sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -%Hiperlink tabele -% Pomembno, da pravilno zlomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage[breaklinks]{hyperref} -%\usepackage[breaklinks=true]{hyperref} - -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} -\usepackage{breakurl} -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri poglavjih -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -\usepackage{graphicx} -\graphicspath{ {../logo/} } - -% Uporabimo za prilagajanje glave in noge porocila -\usepackage{fancyhdr} - -<>= -#################################################### -# V tem kosu pripišemo ime fakultete in ime logotipa -#################################################### - -letnik_napisi <- c("Prvi", "Drugi", "Skupaj") -dodatniSklop <- 0 - -# Možni dodatni sklop pripisemo v spodnji kodi -# DOPOLNI: Kaj je učinek dodatnega sklopa? - -fakulteta <- "" -ime.fakultete <- "" -if (ID == 3000001) { # here - fakulteta <- "PEF" - fakulteta1 <- "Prakse PEF" - ime.fakultete <- "Pedagoška fakulteta" - logo <- "logo_PEF" -} else if (ID == 3000004){ - fakulteta <- "FU" - fakulteta1 <- "Prakse FU" - ime.fakultete <- "Fakulteta za upravo" - logo <- "logo_FU" -} else if (ID == 3000006){ - fakulteta <- "FSD" - fakulteta1 <- "Prakse FSD" - ime.fakultete <- "Fakulteta za socialno delo" - logo <- "logo_FSD" -} else if (ID == 3000009){ - fakulteta <- "FPP" - fakulteta1 <- "Prakse FPP" - ime.fakultete <- "Fakulteta za pomorstvo in promet" - logo <- "logo_FPP" -} else if (ID == 3000011){ - fakulteta <- "ZF" - fakulteta1 <- "Prakse ZF" - ime.fakultete <- "Zdravstvena fakulteta" - logo <- "logo_ZF" -} else if (ID == 3000018){ - fakulteta <- "FF" - fakulteta1 <- "Prakse FF" - ime.fakultete <- "Filozofska fakulteta" - logo <- "logo_FF" -} else if (ID == 3000019){ - fakulteta <- "EF" - fakulteta1 <- "Prakse EF" - ime.fakultete <- "Ekonomska fakulteta" - logo <- "logo_EF" -} else if (ID == 3000020){ - fakulteta <- "PF" - fakulteta1 <- "Prakse PF" - ime.fakultete <-"Pravna fakulteta" - logo <- "logo_PF" -} else if (ID == 3000021){ - fakulteta <- "FDV" - fakulteta1 <- "Prakse FDV" - ime.fakultete <- "Fakulteta za družbene vede" - logo <- "logo_FDV" -} else if (ID == 3000023){ - fakulteta <- "FŠ" - fakulteta1 <- "Prakse FŠ" - ime.fakultete <- "Fakulteta za šport" - logo <- "logo_FS" -} else if (ID == 3000022){ - fakulteta <- "FSTR" - fakulteta1 <- "Prakse FSTR" - ime.fakultete <- "Fakulteta za strojništvo" - logo <- "logo_FSTR" -} else if (ID == 3000025){ - fakulteta <- "FA" - fakulteta1 <- "Prakse FA" - ime.fakultete <- "Fakulteta za arhitekturo" - logo <- "logo_FA" -} else if (ID == 3000026){ - fakulteta <- "FGG" - fakulteta1 <- "Prakse FGG" - ime.fakultete <- "Fakulteta za gradbeništvo in geodezijo" - logo <- "logo_FGG" -} else if (ID == 3000027){ - fakulteta <- "FMF" - fakulteta1 <- "Prakse FMF" - ime.fakultete <- "Fakulteta za matematiko in fiziko" - logo <- "logo_FMF" -} else if (ID == 3000029){ - fakulteta <- "NTF" - fakulteta1 <- "Prakse NTF" - ime.fakultete <- "Naravoslovnotehniška fakulteta" - logo <- "logo_NTF" -} else if (ID == 3000030){ - fakulteta <- "FKKT" - fakulteta1 <- "Prakse FKKT" - ime.fakultete <- "Fakulteta za kemijo in kemijsko tehnologijo" - logo <- "logo_FKKT" -} else if (ID == 3000031){ - fakulteta <- "FFA" - fakulteta1 <- "Prakse FFA" - ime.fakultete <- "Fakulteta za farmacijo" - logo <- "logo_FFA" -} else if (ID == 3000037){ - fakulteta <- "VF" - fakulteta1 <- "Prakse VF" - ime.fakultete <- "Veterinarska fakulteta" - logo <- "logo_VF" -} else if (ID == 3000041){ - fakulteta <- "MF" - fakulteta1 <- "Prakse MF" - ime.fakultete <- "Medicinska fakulteta" - logo <- "logo_MF" -} else if (ID == 3000042){ - fakulteta <- "ALUO" - fakulteta1 <- "Prakse ALUO" - ime.fakultete <- "Akademija za likovno umetnost in oblikovanje" - logo <- "logo_ALU" -} else if (ID == 3000043){ - fakulteta <- "AG" - fakulteta1 <- "Prakse AG" - ime.fakultete <- "Akademija za glasbo" - logo <- "logo_AG" -} else if (ID == 3000044){ - fakulteta <- "AGRFT" - fakulteta1 <- "Prakse AGRFT" - ime.fakultete <- "Akademija za gledališče, radio, film in televizijo" - logo <- "logo_AGRFT" -} else if (ID == 3000050){ - fakulteta <- "TEOF" - fakulteta1 <- "Prakse TEOF" - ime.fakultete <- "Teološka fakulteta" - logo <- "logo_TEOF" -} else if (ID == 3000063){ - fakulteta <- "FRI" - fakulteta1 <- "Prakse FRI" - ime.fakultete <- "Fakulteta za računalništvo in informatiko" - logo <- "logo_FRI" -} else if (ID == 3000064){ - fakulteta <- "FE" - fakulteta1 <- "Prakse FE" - ime.fakultete <- "Fakulteta za elektrotehniko" - logo <- "logo_FE" -} else if (ID == 3000071){ - fakulteta <- "BF" - fakulteta1 <- "Prakse BF" - ime.fakultete <- "Biotehniška fakulteta" - logo <- "logo_BF" -} else if (ID == 99){ - fakulteta <- "TestniPodatki" - fakulteta1 <- "Prakse TP" - ime.fakultete <- "TestniPodatki" - logo <- "logo_BF" -} else { - fakulteta <- "" - fakulteta1 <- "" - ime.fakultete <- "" - -} -@ - - -<>= -# Preveri kateri paketi so dejansko uporabljeni -library(knitr) -library(stringi) -library(scales) -library(dplyr) -library(showtext) -library(XML) -library(RCurl) -library(xtable) -library(Hmisc) - -# results='asis' nastavimo globalno -# za vse chunke lahko spreminjamo tudi vidnost opozoril in sporočil -opts_chunk$set(results='asis', - warning=F, - message = F) - -# Če želimo, da pri generiranju skrije napake odkomenitramo spodnji vrstici -#muffleError <- function(x,options) {} -#knit_hooks$set(error=muffleError) - -# Popravi: letnico pridobi iz podatkov -celaLetnica_dolga <- "2016/17" -@ -% Naslovnica - -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{\Sexpr{ime.fakultete} - \Sexpr{podatki_trenutni[[podatki_programi[1]]]$program[1]}}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt - -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\fancypagestyle{prvi}{ - \fancyhead[R]{\small{Prvi letnik}} - -} - -\fancypagestyle{drugi}{ - \fancyhead[R]{\small{Drugi letnik}} -} - -\fancypagestyle{oba}{ - \fancyhead[R]{\small{}} -} - -% Pomembno da so podpoglavja ostevilcena -\setcounter{secnumdepth}{3} -\setcounter{tocdepth}{3} - -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{\Sexpr{logo}} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2in]}}} -\textup{\LARGE \textbf{\Sexpr{ime.fakultete}}} \\[0.2in] -% Prilagodi glede na prisotne podatke -\textup{\LARGE \textcolor[HTML]{B4162C}{\textbf{\Sexpr{podatki_trenutni[[1]]$program[1]}}}} \\[0.3in] - -\textup{\LARGE{ \textbf{Študentska anketa o študiju na III. stopnji}}} \\[0.5in] -{\large Študijsko leto \Sexpr{celaLetnica_dolga[[1]]} \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - -<>= -#Funkcija, ki stevila pravilno zaokrozi -round2 = function(x, digits) { - if (is.numeric(x)){ - posneg = sign(x) - z = abs(x)*10^digits - z = z + 0.5 - z = trunc(z) - z = z/10^digits - z*posneg - }else{x} - } - -# Funkcija, ki zaokrozi stevila na izbrano stevilo mest -formatC2 <- function(x, digits, format='f'){ - if (is.numeric(x)){ - formatC(round2(x, digits), digits=digits, format=format) - }else{x} -} - -######### -## Izracuni -## Nejasno: kaj je sklop 2? -## Za tabele v sklopu 2 -## -## -######### -odgMean <- list() -stEnot <- list() - -# Izracun povprecij in stevilo enot -# Dolocitev imen stolpcev - -for (i in podatki_programi[podatki_programi != 3]){ - odgMean[[i]] <- lapply(odgVeljavni[[i]], mean) - stEnot[[i]] <- lengths(odgVeljavni[[i]]) - names(odgMean[[i]]) <- vprZ[[i]]$kratkoIme -} - - -### Izracuni za grafe -# POPRAVI: length(odgMean[i]) -graf_p <- vector('list', length(odgMean)) - -izracuniTrendov <- list() - -### IZKLJUCENO -# Tu zdruzi stare podatke z novimi -# V primeru FF starih ni torej, damo to v pogoj -# Pregleda mapo 'prejsnjiIzracuni' -# Izpise seznam prejsnjihIzracunov: zaenkrat samo pri FDV in FF -# Nato zdruzi prejsnje izracune z zdajsnjimi in jih izpise v grafu (trendi) -# Pripravi se zapisovanje zdajsnjih v isti obliki. (ce se ne obstajajo) -# Izracuna jih iz koncnebaze tega leta, ki naj bi jo streznik -# ob koncani anketi = potecen cas resevanja -# poslal v pripadajoco mapo npr. splosna/FDV/koncneBaze - -# Risanje trendov je izklopljeno, dokler ne obstajajo vsaj eni podatki_trenutni -# prejsnjih let -# mainDir <- getwd() -letosnjiTrendi <- cbind(as.numeric(formatC2(unlist(odgMean[[1]]), digits = 2, format = 'f')), leto) -risanjeTrendov <- 0 - -# Preverimo ali obstaja mapa s prejsnjimiIzracuni za izbrano fakulteto -# Ce obstaja preverimo ali vsebuje 'prejsnjeIzracune' : drugace jo ustvarimo -# Ce obstajajo jih preberemo in vklopimo risanje trendov - -if(dir.exists(paste0("podatki_trenutni/", ID, "/prejsnjiIzracuni"))){ - -# poiscemo vse .csv datoteke v mapi fakulteta/prejsnjiIzracuni -prejsnjiIzracuni = list.files(paste0(getwd(),"/podatki_trenutni/", ID, "/prejsnjiIzracuni/"), pattern="*.csv") - -# ce datoteka obstaja jo nalozi in vklopi risanje trendov -# in izklopi zapis letosnjih izracunov - -if (file.exists(paste0("podatki_trenutni/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni))){ -izracuni <- read.table(paste0("podatki_trenutni/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni), stringsAsFactors = F, sep =',') - - -# Ce so v prejsnjih izracunih tudi letosnji trendi, jih ne zapisemo -# se enkrat (letosnjiIzracuni <- 0) -letosnjiIzracuni <- 0 -if (leto %in% izracuni$V2){ - letosnjiIzracuni <- 1 -}else{ - letosnjiIzracuni <- 0} - -if (length(unique(izracuni$V2)) <= 1){ - risanjeTrendov <- 0 -}else{risanjeTrendov <- 1} -# Recursive poskrbi, da ustvari obe mapi: tisto z ID-jem fakultete in znotraj te -# se mapo 'prejsnjiIzracuni' -}else{letosnjiIzracuni <- 0} -}else{dir.create(paste0("podatki_trenutni/", ID, "/prejsnjiIzracuni"), recursive = T)} - -# Zapisovanje letosnjih povprecij -# povp, leto -# Preverimo ali je v mapi 'koncneBaze' ze letosnja koncana anketa -# To preverimo tako, da pogledamo ce je v tej mapi ze baza, ki ima v imenu letosnjo letnico -# ce letosnjih Izracunov se ni, jih ob pogoju, da ze imamo koncno bazo zapisemo - -if (letosnjiIzracuni == 0){ -if(dir.exists(paste0("podatki_trenutni/", ID, "/koncneBaze"))){ - -koncneBaze = list.files(paste0(getwd(),"/podatki_trenutni/", ID, "/koncneBaze/"), pattern="*.csv") -imeLetosnjeBaze <- koncneBaze[grepl(leto, koncneBaze)] - -if (length(imeLetosnjeBaze) != 0){ - #TRENUTNO - - # Ali obstaja baza z letosnjimi izracuni? - # = Ali so podatki_trenutni letosnje (koncane) ankete ze v mapi? - # Ce obstaja letosnje izracune trendov appenda v tabelo in jim pripise letnico - if (file.exists(paste0("podatki_trenutni/", ID, "/koncneBaze/", imeLetosnjeBaze))){ - write.table(letosnjiTrendi, - file = paste0("podatki_trenutni/", ID, "/prejsnjiIzracuni/prejsnjiIzracuni.csv"), - append=T, - row.names = F, - col.names = F, - sep = ',') - -} -} -} -} - -# Testiranje: -# Tu zdruzimo prejsnje izracune (povprecja) z zdajsnjimi -# Samo za testiranje do 2020 -# risanjeTrendov <- 1 - -# Prvi pogoj dodan, da ne javlja napak, ko ne risemo trendov -# Vendar se vedno preveri ce jih zapisujemo -if (risanjeTrendov != 0){ -if (risanjeTrendov != 0 & leto %in% izracuni[,2]){ - izracuniTrendov <- izracuni - izracuniTrendov <- arrange(izracuniTrendov, V2) - - }else if(risanjeTrendov != 0 & !(leto %in% izracuni[,2])){ - izracuniTrendov <- rbind(izracuni, - unname(cbind(unlist(odgMean[[1]]), leto))) - izracuniTrendov <- arrange(izracuniTrendov, V2) - -}else{ - izracuniTrendov <- cbind(unlist(odgMean[[1]]), leto) -} - - -# Dejavnikom pripisemo sklope (za kasnejse klicanje pri izrisu trendov) - -sklopi_dff <- c(1,1,1,1,1,1, - 2,2,2,2,2, - 3,3,3,3,3,3, - 4,4,4,4, - 5,5,5,5) - -# Za dodatne sklope -if (dodatniSklop == 1){ - sklopi_dff <- c(sklopi_dff, rep(9,3)) -} - - -if (dodatniSklop == 1){ - dff <- data.frame(Dejavnik=vprZ$grafBeseda[1:30], - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) -}else{ - dff <- data.frame(Dejavnik=vprZ$grafBeseda, - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) -} - -# napisi za x os (letnice): -# iz podatkov pridobimo vse uniketne letnice -# in jih preoblikujemo v obliko prejsne leto / letosnje leto - -letnice.uq <- unique(dff$leto) -letnice.label <- sapply(letnice.uq, function(x){ - paste0(x-1,'/',x) -}) -} -# Preverimo ali obstaja mapa, kamor bomo shranjevali slike (grafe) -# Ce se ne obstaja, jo ustvarimo. -if(!dir.exists(paste0("rezultati/", ID))){ - dir.create(paste0("rezultati/", ID)) -} - -if(!dir.exists(paste0("rezultati/", ID, "/grafi"))){ - dir.create(paste0("rezultati/", ID, "/grafi")) -} - -trendiGraf <- function(podatki_trenutni, y, z, izpis=1){ - if(risanjeTrendov != 0){ - letnice.uq <- unique(podatki_trenutni$leto) - letnice.label <- sapply(letnice.uq, function(x){ - paste0(x,'/',x+1) - }) - podatki_trenutni$leto <- factor(podatki_trenutni$leto) - p1 <- ggplot(data = podatki_trenutni, - aes(x = leto, - y = povprecje, - colour = Dejavnik))+ - # Dodatno avtomatiziraj - scale_x_discrete("Leto", labels=letnice.label)+ - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none, - breaks=c(1:5))+ - geom_line(aes(group = Dejavnik)) + geom_point()+ - #oob = rescale_none, pomembno, da je 1 na zacetku x osi - - theme_classic()+ - theme(aspect.ratio=1)+ - # \n zaradi dodatnega odmika napisa od osi - xlab("Leto\n")+ylab("Povprečna vrednost\n")+ - - theme(axis.text= element_text(size=16, family="CM Roman"), - axis.title= element_text(size=16, family='CM Roman'), - legend.text= element_text(size=15, family='CM Roman'), - legend.position ="right", - legend.title=element_blank(), - axis.line.x = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, linetype='solid')) - -stevec <- as.numeric(z) -ime <- paste0("rezultati/", ID,"/grafi/izpisTrendi",stevec,".pdf") -showtext.auto() -ggsave(p1, filename=ime, width=8, height=5, units="in", device=cairo_pdf ) -caption <- as.character(y) - -if (izpis==1){ -cat(paste0('\\begin{figure}[!ht] -\\vspace*{-6cm} -\\caption{Trendi - ', caption, '} -\\includegraphics[width=\\maxwidth]{../', ime, '} -\\end{figure} -\\clearpage')) -} - -else if(izpis==2){ -cat(paste0('\\begin{figure}[ht] -\\caption{Trendi - ', caption, '} -\\includegraphics[width=\\maxwidth]{../', ime, '} -\\end{figure} -\\clearpage')) -} -} -} - -# Funkcija, ki izracune, ki temeljijo na majhnem številu enot obda z oklepaji -# Izračune, ki temeljijo na manj, kot 5 enotah obdamo z dvema oklepajema -# Izračune, ki temeljijo na manj kot 10 enotah obdamo z enim oklepajem -# -# Argumeti: -# 1. Tabela: mora biti data.frame -# 2. pozicija_n: dolocimo stolpec tabele v katerem se nahajajo števila enot -# 3. pozicija_oklepajev: dolocimo stolpec tabele v katerem bi radi, da so izračuni (povprečja) obdana z oklepaji -# 4. izbrisi: ce je 1, pomeni, da izračune, ki temeljijo na manj kot štirih enotah nadomestimo s piko -# 5. pozicija_izbrisa: dolocimo stolpec tabele v katerem bi radi, da so izračuni (povprečja), ki temeljijo na manj, kot štirih enotah, nadomeščena s piko - -obdaj_z_oklepaji_f <- function(tabela, pozicija_n, pozicija_oklepajev, izbrisi=0, pozicija_izbrisa){ - for (i in 1:nrow(tabela)){ - if (tabela[i,pozicija_n] != "."){ - if (as.numeric(tabela[i,pozicija_n]) < 4 & izbrisi == 1){ - tabela[i,pozicija_izbrisa] <- "." - } - if (as.numeric(tabela[i,pozicija_n]) < 5){ - tabela[i,pozicija_oklepajev] <- paste0("((", tabela[i,pozicija_oklepajev], "))") - } else if (as.numeric(tabela[i,pozicija_n]) >= 5 & as.numeric(tabela[i,pozicija_n]) < 10){ - tabela[i,pozicija_oklepajev] <- paste0("(", tabela[i,pozicija_oklepajev], ")") - } - } - } - return(tabela) -} - -# Ce ima vektor pod 10 enot mu dodamo oklepaje -oklepajiVektor_f <- function(x, y=5, z=10){ -x <- as.list(x) - -for (i in (1:length(x))){ - if (x[[i]] < y ){ - x[[i]] <- paste0("((", formatC2(x[[i]], digits=0, format="f"), "))") - }else if (x[[i]] < z ){ - x[[i]] <- paste0("(", formatC2(x[[i]], digits=0, format="f"), ")") - }else{ - x[[i]] <- formatC2(x[[i]], digits=0, format="f") - } - -} -return(unlist(x)) -} - -# Uporabimo pri izpisu tabel z xtable -bold <- function(x) { - paste0('\\bfseries{', x, '}') -} - -@ - -<>= - -stopnjeUQ <- as.character(unique(studijskiProgramiT$Vrsta)) -stopnjeUQ <- cbind(stopnjeUQ, 1:length(stopnjeUQ)) -stopnjeUQ <- rbind(stopnjeUQ, c("-2", (length(stopnjeUQ)/2)+1)) -st.kratkoIme <- c("Uni", "Uni*", "Vis", "Spec", "Mag*", - "Dr*", "Mag", "Mag1", "Vis", "Dr", "Mag2", "Izp", "-2") -stopnjeUQ <- cbind(stopnjeUQ, st.kratkoIme) - -# Pripisovanje tipov studijskih programov, ki ga uporabimo v tabeli 1. -# Tu unikatnim idprog pripisemo naziv (=Ime programa), vrsto(=npr. Univerzitetni) in -# okrajsavo(=npr. # Uni.) -idprog_uq_vsi <- list() -tip_programa <- list() - -for (i in podatki_programi[podatki_programi != 3]){ - idprog_uq_vsi[[i]] <- unique(podatki_trenutni[[i]]$idprog) - - tip_programa[[i]] <- data.frame(idprog_uq_vsi[[i]], stringsAsFactors = F) - tip_programa[[i]]$naziv <- sapply(tip_programa[[i]]$idprog_uq_vsi, function(x){ - unique(podatki_trenutni[[i]]$program[podatki_trenutni[[i]]$idprog == x]) - }) - - # df uredimo glede na padajoce ime programov - tip_programa[[i]] <- arrange(tip_programa[[i]], naziv) - colnames(tip_programa[[i]]) <- c("idprog_uq_vsi", "naziv") -} - -# Ponovljen postopek, za izracune v prilogi - -idprog_uq_veljavni <- list() -tip_programa_veljavni2 <- list() -idprog_uq_vsi <- list() -tip_programa_veljavni <- list() - -for (i in podatki_programi[podatki_programi != 3]){ - idprog_uq_veljavni[[i]] <- unique(veljavneEnote_trenutne[[i]]$idprog) - - # Tu izlocimo program (ime), idprog, ki jih bomo pripisali, kot tip programa v tabeli 1 - tip_programa_veljavni[[i]] <- data.frame(idprog_uq_veljavni[[i]], stringsAsFactors = F) - tip_programa_veljavni[[i]]$naziv <- sapply(tip_programa_veljavni[[i]][,1], function(x){ - unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog == x]) - }) - - tip_programa_veljavni[[i]] <- arrange(tip_programa_veljavni[[i]], naziv) - - # Napisom iz tabele studijski program priredimo veliko zacetnico - tip_programa_veljavni2[[i]] <- sapply(tip_programa_veljavni[[i]], function(x){ - x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) - }) - - colnames(tip_programa_veljavni[[i]]) <- c("idprog_uq_veljavni", "naziv") -} - -poProgramih_N_veljavni <- vector('list', 2) -vsehT1 <- list() -odgovori_pct <- list() -podatki_trenutni.r <- list() -vektorProgrami <- vector('list', 2) -odstotkiT1 <- vector('list', 2) -podatki_trenutni.r.pct <- list() -programiV1 <- list() -poProgramih_N_veljavni_z_oklepaji <- list() -podatki_trenutni.r.pct <- list() -odgovorili.n <- list() -podatki_N_vsi <- vector('list', 2) -podatki_trenutni.r <- list() -stolpec100 <- list() -struktura_studijski_program <- vector('list', 2) -struktura_studijski_program_po_stolpcih <- vector('list', 2) -hlines <- vector('list', 2) -ni_pristopilo <- list() -ni_pristopilo_pct <- list() - -for (i in podatki_programi[podatki_programi != 3]){ - -# Te podatke shrani v vektor, da jih lahko prestejemo / izpisemo v tabeli -# Stevilo veljavnih enot na program -# Primerjavo z ID-ji vseh enot delamo, ker imajo vse enote lahko razlicen id od veljavnih -# ker ne bi imeli vrednosti bi dobili napacne izracune - - for (j in 1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni)){ - poProgramih_N_veljavni[[i]][j] <- as.numeric(length(veljavneEnote_trenutne[[i]]$Q3a[veljavneEnote_trenutne[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) - } - - - #Vseh enot za tabelo: 'Struktura študentov glede na študijski program' (n) - vsehT1[[i]] <- sum(poProgramih_N_veljavni[[i]]) - - #Izračunamo število VSEH enot glede na posamezen program - for (j in 1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni)){podatki_N_vsi[[i]][j]<-as.numeric(length(podatki_trenutni[[i]]$Q3a[podatki_trenutni[[i]]$idprog == tip_programa[[i]]$idprog_uq_vsi[[j]]])) - } - - odgovori_pct[[i]] <- formatC2((poProgramih_N_veljavni[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") - - #Izracun stevila tistih, ki niso odgovorili - podatki_trenutni.r[[i]] <- podatki_N_vsi[[i]] - poProgramih_N_veljavni[[i]] - - #Z lapply poženemo funkcijo cez poProgramih_N_veljavni, kjer so shranjene dolžine seznama sodelujoci - #in dobimo seznam odstotkov - odstotkiT1[[i]] <- sapply(poProgramih_N_veljavni[[i]], function(x){ - x <- (x/vsehT1[[i]]*100) - x <- round2(x, digits=0) - }) - podatki_trenutni.r.pct[[i]] <- formatC2((podatki_trenutni.r[[i]]/podatki_N_vsi[[i]])*100, digits = 0, format="f") - - - #Odstotke iz seznama prenesemo v vektor - for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq_veljavni))){vektorProgrami[[i]][j]<-odstotkiT1[[i]][j]} - - odstotkiT1[[i]] <- c(odstotkiT1[[i]], formatC2(sum(unlist(odstotkiT1[[i]])), digits=0, format="f")) - - #Dodamo vrstico 'skupaj' - programiV1[[i]] <- c(tip_programa_veljavni[[i]]$naziv)#, "Skupaj") - poProgramih_N_veljavni_z_oklepaji[[i]] <- oklepajiVektor_f(poProgramih_N_veljavni[[i]]) - - #za 'r%' - #podatki_trenutni.r.pct[[i]] <- c(podatki_trenutni.r.pct[[i]], formatC2((sum(podatki_trenutni.r[[i]])/sum(podatki_N_vsi[[i]]))*100, digits = 0, format ="f")) - - odgovorili.n[[i]] <- sum(podatki_N_vsi[[i]]) - - #Dodamo vrstico skupaj - ni_pristopilo[[i]] <- stevilo_vpisanih[[i]] - as.numeric(podatki_N_vsi[[i]]) - ni_pristopilo_pct[[i]] <- formatC2(ni_pristopilo[[i]]/stevilo_vpisanih[[i]]*100, digits=0, format ='f') - podatki_N_vsi[[i]] <- formatC2(podatki_N_vsi[[i]], digits=0, format='f') - - - #vektorProgrami[[i]] <- c(vektorProgrami[[i]], sum(vektorProgrami[[i]])) - - # Odebeljena vsota udelezenih, tistih, ki niso odgovorili - podatki_trenutni.r[[i]] <- formatC2(podatki_trenutni.r[[i]], digits=0, format='f') - stolpec100[[i]] <- formatC2(rep(100, length(podatki_N_vsi[[i]])), digits=0, format ='f') - - - #Sestavimo podatkovni okvir za prvo tabelo - struktura_studijski_program[[i]] <- data.frame(programiV1[[i]], stevilo_vpisanih[[i]], stolpec100[[i]], ni_pristopilo[[i]], ni_pristopilo_pct[[i]], podatki_N_vsi[[i]], stolpec100[[i]], poProgramih_N_veljavni[[i]], odgovori_pct[[i]], podatki_trenutni.r[[i]], podatki_trenutni.r.pct[[i]]) - - a <- data.frame(paste0(struktura_studijski_program[[i]][1,1], " (vpisani)"), struktura_studijski_program[[i]][1,c(2:6)], - #paste0("\\textbf{", struktura_studijski_program[[i]][1,c(3)],"}"), struktura_studijski_program[[i]][1,c(4:6)], - formatC2((as.numeric(as.character(struktura_studijski_program[[i]][1,6]))/ as.numeric(struktura_studijski_program[[i]][1,2])*100), digits=0, format='f'), - formatC2(as.numeric(struktura_studijski_program[[i]][1,8]), digits=0, format='f'), - formatC2((as.numeric(as.character(struktura_studijski_program[[i]][1,8]))/ as.numeric(struktura_studijski_program[[i]][1,2])*100), digits=0, format='f'), - - formatC2(as.numeric(as.character(struktura_studijski_program[[i]][1,10])), digits=0, format='f'), - formatC2((as.numeric(as.character(struktura_studijski_program[[i]][1,10]))/ as.numeric(struktura_studijski_program[[i]][1,2])*100), digits=0, format='f')) - - - b <- data.frame(paste0(struktura_studijski_program[[i]][1,1], " (pristopili)"), "", "", "", "", struktura_studijski_program[[i]][1,c(6:11)]) - colnames(a) <- 1:11 - colnames(b) <- 1:11 -for (k in c(3,5,7,9,11)){ - if (as.character(a[,k]) == 100){ - a[,k] <- as.character(a[,k]) - a[,k] <- "\\textbf{100}" - } -} - for (k in c(3,5,7,9,11)){ - if (as.character(b[,k]) == 100){ - b[,k] <- as.character(b[,k]) - b[,k] <- "\\textbf{100}" - } -} - struktura_studijski_program[[i]] <- rbind(a,b) - struktura_studijski_program[[i]][8] <- poProgramih_N_veljavni_z_oklepaji[[i]] - - # Prva tabela drugi letnik - # Druga tabela prvi letnik - # Nejasno, bolj opisi - - struktura_studijski_program_po_stolpcih[[i]] <- struktura_studijski_program[[i]][-c(2,3)] - struktura_studijski_program_po_stolpcih[[i]][4] <- formatC2(((as.numeric(poProgramih_N_veljavni[[i]]) / as.numeric(poProgramih_N_veljavni[[i]][length(poProgramih_N_veljavni[[i]])])) * 100), digits=0, format = 'f') - - - struktura_studijski_program_po_stolpcih[[i]][6] <- formatC2(((as.numeric(podatki_trenutni.r[[i]]) / as.numeric(podatki_trenutni.r[[i]][length(podatki_trenutni.r[[i]])])) * 100), digits=0, format = 'f') - struktura_studijski_program_po_stolpcih[[i]][6][struktura_studijski_program_po_stolpcih[[i]][6] == "NaN"] <- 0 - # Druga tabela, drugi letnik - # Nejasno, bolj opisi - - - - colnames(struktura_studijski_program_po_stolpcih[[i]]) <- c("", "$n_0$", "n", "\\%", "r", "\\%") - colnames(struktura_studijski_program[[i]]) <- c("", "N", "\\%", "N", "\\%", "$n_0$", "\\%", "n", "\\%", "r", "\\%") -} - -@ -<>= -vrstaProg <- list() -imena_output <- list() -vrstaProg_T2_output <- list() -vrstaProg_output <- list() - -# Dodal sort, in zdaj oba letnika ne prikaze pravilno -for (i in podatki_programi[podatki_programi != 3]){ - vrstaProg[[i]] <- sort(sapply(unique(veljavneEnote_trenutne[[i]]$idprog), - function(x){unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog == x]) - })) - - - #Vsebina prvega stolpca - if (length(vrstaProg[[i]])>1){ - imena_output[[i]] <- c(names(vrstaProg[[i]]), 25) - vrstaProg_T2_output[[i]] <- c(vrstaProg[[i]], "Skupaj") - vrstaProg_output[[i]] <- c(vrstaProg[[i]], "Skupaj") - }else if(length(vrstaProg[[i]])==1){ - # V drugi tabeli, prikazemo "Skupaj", tudi ce je samo en tip programa - # Pri tabelah in grafih po letniku "Skupaj", v primeru enega tipa ne prikazujemo - # to je razvidno iz razlicnih vrstaProg in imen - vrstaProg_output[[i]] <- vrstaProg[[i]] - imena_output[[i]] <- names(vrstaProg[[i]]) - vrstaProg_T2_output[[i]] <- c(vrstaProg[[i]], "Skupaj") - } - } - -stVrsta.vsi_output <- list() -stVrsta.r_output <- list() - -for (i in 1:length(vrstaProg)){ - stVrsta <- as.numeric() - stVrsta.vsi <- as.numeric() - for (j in 1:length(vrstaProg[[i]])){ - # Stevilo veljavnih enot po programih (izpolnjevali) - stVrsta[j] <- length(veljavneEnote_trenutne[[i]]$Q3a[veljavneEnote_trenutne[[i]]$idprog == names(vrstaProg[[i]])[j]]) - # Stevilo vseh enot po programih (izpolnjevali) - stVrsta.vsi[j] <- length( - podatki_trenutni[[i]]$Q3a[podatki_trenutni[[i]]$idprog == names(vrstaProg[[i]])[j]]) - } - - stVrsta_oklepaji <- oklepajiVektor_f(stVrsta) - # Izracun vrstice, ki sesteje stevilo tistih, ki so sodelovanje zavrnili - stVrsta.r <- stVrsta.vsi - stVrsta - stVrsta.vsi_output[[i]] <- stVrsta.vsi - stVrsta.r_output[[i]] <- stVrsta.r -} -@ - -<>= -odgSt <- list() -odgMean <- list() -odgSd <- list() -odgMin <- list() -odgMax <- list() -odgSklop <- list() -odgSklop_R <- list() - - -for (i in podatki_programi[podatki_programi != 3]){ - #Izracuni iz odgVeljavni (stevilo, povprecje....) - odgSt[[i]] <- lengths(odgVeljavni[[i]]) - odgMean[[i]] <- sapply(odgVeljavni[[i]], mean) - odgSd[[i]] <- sapply(sapply(odgVeljavni[[i]], sd), function(x){ - formatC2(x, digits=1, format='f') - }) - odgMin[[i]] <-sapply(odgVeljavni[[i]], min) - odgMax[[i]] <-sapply(odgVeljavni[[i]], max) - - #odgSd[[1]][odgSd[[1]] == "NA"] <- "." - #odgSd[[2]][odgSd[[2]] == "NA"] <- "." -} - -# Tu izracunamo povprecja za oba letnik skupaj -if (length(podatki_programi) == 3){ - veljavniOdg_oba_letnika <- list() - - for(i in 1:length(odgMean[[1]])){ - veljavniOdg_oba_letnika[[i]] <- c(as.numeric(unlist(odgVeljavni[[1]][i])), as.numeric(unlist(odgVeljavni[[2]][i]))) - } - - odgSt[[3]] <- lengths(veljavniOdg_oba_letnika) - stEnot[[3]] <- stEnot[[1]] + stEnot[[2]] - odgMean[[3]] <- sapply(veljavniOdg_oba_letnika, mean) - odgSd[[3]] <- sapply(sapply(veljavniOdg_oba_letnika, sd), function(x){ - formatC2(x, digits=1, format='f') - }) - odgMin[[3]] <-sapply(veljavniOdg_oba_letnika, min) - odgMax[[3]] <-sapply(veljavniOdg_oba_letnika, max) - - names(odgMean[[3]]) <- vprZ[[1]]$kratkoIme - odgVeljavni[[3]] <- veljavniOdg_oba_letnika -} - -# Izbrisemo povprecja, ki temeljijo, na manj, kot 4 enotah -odgMean_temp <- list() - -for (i in podatki_programi){ - odgMean_temp[[i]] <- odgMean[[i]] - for (j in 1:length(odgSt[[i]])){ - if (odgSt[[i]][j] < 4){ - odgMean_temp[[i]][j] <- 0 - } - } - #Izracuni po sklopih - odgSklop[[i]] <- list(median(odgMean_temp[[i]][1:6][odgMean_temp[[i]][1:6] != 0]), - median(odgMean_temp[[i]][7:11][odgMean_temp[[i]][7:11] != 0]), - median(odgMean_temp[[i]][12:17][odgMean_temp[[i]][12:17] != 0]), - median(odgMean_temp[[i]][18:21][odgMean_temp[[i]][18:21] != 0]), - median(odgMean_temp[[i]][22:25][odgMean_temp[[i]][22:25] != 0])) - - - - #Pripravimo stolpec z medianami povprecij sklopa, da lahko t3 razvrcamo znotraj median povprecij sklopov - odgSklop_R[[i]] <- c(rep(odgSklop[[i]][[1]],6), - rep(odgSklop[[i]][[2]],5), - rep(odgSklop[[i]][[3]],6), - rep(odgSklop[[i]][[4]],4), - rep(odgSklop[[i]][[5]],4)) -} -#if (dodatniSklop == 1){ -# odgSklop <- c(odgSklop, median(odgMean[28:30])) -# odgSklop_R <- c(odgSklop_R, rep(odgSklop[[9]], 3)) -# napisiSklop <- c(napisiSklop, "Zadovoljstvo s programom") -#} - -napisiSklop <- c("Infrastruktura in urniki", - "Zadovoljstvo z izvajanjem programov", - "Pomoč in podpora mentorja", - "Del študija in ostale aktivnosti v tujini", - "Svetovalna pomoč študentom") - -# Nejasno: - -sklop_Z <- list() -povpSklopi_zaIzpis_output <- list() - -for (i in podatki_programi){ - odgMean_rounded <- as.numeric(formatC2(odgMean[[i]], digits=1, format ='f')) - povpSklopi_zaIzpis <- as.data.frame(cbind(odgMean_rounded, odgSklop_R[[i]]),stringsAsFactors =F) - - idSklopov_zaIzpis <- c(rep(1,6), - rep(2,5), - rep(3,6), - rep(4,4), - rep(5,4)) - - #if (dodatniSklop == 1){ - # idSklopov_zaIzpis <- c(idSklopov_zaIzpis, rep(9,3)) - #} - - povpSklopi_zaIzpis <- cbind(povpSklopi_zaIzpis, idSklopov_zaIzpis) - povpSklopi_zaIzpis <- arrange(povpSklopi_zaIzpis, desc(V2), desc(odgMean_rounded)) - povpSklopi_zaIzpis_output[[i]] <- povpSklopi_zaIzpis - - sklop_Z[[i]] <- cbind(napisiSklop, 1:length(odgSklop[[i]]), as.numeric(formatC2(unlist(odgSklop[[i]]), digits=1, format = 'f')), "id", "tip") - - colnames(sklop_Z[[i]]) <- c("napisiSklop", "id", "odgSklop", "opis", "tip") - - for (j in (1:length(sklop_Z[[i]][,3]))){ - - if (is.na(sklop_Z[[i]][j,3])){ - sklop_Z[[i]][j,4] <- gsub("id", "NA", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 0, sklop_Z[[i]][j,5]) - } - else if (sklop_Z[[i]][j,3] > 4.5){ - sklop_Z[[i]][j,4] <- gsub("id", "nad 4.5", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 1, sklop_Z[[i]][j,5]) - } - else if (sklop_Z[[i]][j,3] > 4 ){ - sklop_Z[[i]][j,4] <- gsub("id", "nad 4", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 2, sklop_Z[[i]][j,5]) - } - - else if (sklop_Z[[i]][j,3] > 3.5){ - sklop_Z[[i]][j,4] <- gsub("id", "3.5do4", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 3, sklop_Z[[i]][j,5]) - } - - else if(sklop_Z[[i]][j,3] >= 3){ - sklop_Z[[i]][j,4] <- gsub("id", "nad 3", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 4, sklop_Z[[i]][j,5]) - } - - else if (sklop_Z[[i]][j,3] < 3){ - sklop_Z[[i]][j,4] <- gsub("id", "pod 3", sklop_Z[[i]][j,4]) - sklop_Z[[i]][j,5] <- gsub("tip", 5, sklop_Z[[i]][j,5]) - } - } - -} - -#Barvanje -barvanje_f <- function(y){ - sapply(unlist(y, use.names = F), function(x){ - if(!is.nan(x) & !is.na(x) & x != "."){ - x <- formatC2(round2(as.numeric(x),1), digits=1, format='f') - - if(!is.nan(x) & !is.na(x) & x >= 4.8){ - paste0("\\textbf{\\textcolor[HTML]{006666}{", - x, "}}") - }else if (!is.nan(x) & !is.na(x) & x >= 4.5 & x <=4.7){ - paste0("\\textbf{\\textcolor[HTML]{36BF4B}{", - x, "}}") - }else if (!is.nan(x) & !is.na(x) & x >= 4 & x <= 4.4){ - x <- x - }else if (!is.nan(x) & !is.na(x) & x >= 3.5 & x <= 3.9){ - paste0("\\textbf{\\textcolor[HTML]{F58137}{", - x, "}}") - }else if(!is.nan(x) & !is.na(x) & x <= 3.4 & x >=1){ - paste0("\\textbf{\\textcolor[HTML]{B6321C}{", - x, "}}") - }else{paste0(".")} - }else{paste0(".")} -}) -} - - -#Izracuni za barplot, glede na vrsto programa ('prog_r2') -# Koncni rezultat je seznam s stolpci stopnjaMean_v, stopnjaId_v -# ..., iii (napis), stopnjaMeanSkupaj_v -graf_p <- vector('list', 2) -# Za shranjevanje zacasnih rezultatov -graf_p_temp <- list() - -# Pri tabelah ne izlocimo povp., glede na letnik / stopnjo, ki imajo -# st. enot manjse od 4, tam povprecju dodamo dva oklepaja oz. enega -# za st. enot manjse od 10 - -tabela_p <- vector('list', 2) -tabela_p_temp <- list() - -stopnjaMean_v <- list() -stopnjaId_v <- list() -stevilo_PoStopnjah <- list() -graf_vrstica <- list() -stopnjaMeanSkupaj_v <- list() - -vklop <- as.character() - -for (i in podatki_programi[podatki_programi != 3]){ - for (j in (1:length(vprZ[[i]]$kratkoIme))){ - ii <- vprZ[[i]]$kratkoIme[j] - iii <- vprZ[[i]]$kljucnaBeseda[j] - iii2 <- vprZ[[i]]$grafBeseda[j] - - # Izracun povprecij po programih - stopnjaMean_v[[i]] <- as.numeric(subset(veljavneEnote_trenutne[[i]][[ii]], veljavneEnote_trenutne[[i]][[ii]]>0)) - stopnjaId_v[[i]] <- as.numeric(subset(veljavneEnote_trenutne[[i]][["idprog"]], veljavneEnote_trenutne[[i]][ii]>0)) - - if (length(stopnjaMean_v[[i]]) >= 1){ - graf_p_temp[[i]] <- cbind(Hmisc::summarize(stopnjaMean_v[[i]], - by = stopnjaId_v[[i]], - FUN = mean), iii) - # vklop[i] <- 0 - }else { - graf_p_temp[[i]] <- data.frame(stopnjaMean_v = 099, - stopnjaId_v = 099, - iii = iii, - stringsAsFactors =F) - colnames(graf_p_temp[[i]]) <- c("stopnjaMean_v[[i]]", "stopnjaId_v[[i]]", "iii") - # vklop[i] <- 1 - } - - - - # Povprecja glede na stopnjo / letnik, ki jih bomo prikazali v tabelah zaokrozimo na 1 dec. - tabela_p_temp <- graf_p_temp[[i]] - tabela_p_temp[,2] <- barvanje_f(tabela_p_temp[,2]) - colnames(tabela_p_temp) <-c("stopnjaId_v", "stopnjaMean_v", "iii") - - # Prestejemo stevilo enot na posamezen dejavnik in iz graf_p_temp izkljucimo: - # povp studijskih stopenj in letnike, ki imajo stevilo enot manjse od 4 - - # paste0 oklepaj, dva - - stevilo_PoStopnjah[[i]] <- table(graf_p_temp[[i]][,1]) - - - for (k in 1:length(stevilo_PoStopnjah[[i]])){ - if (stevilo_PoStopnjah[[i]][k] < 4 ){ - # Izkljucimo prikaz povprecij, ki imajo manj, kot stiri enote - #graf_p_temp$stopnjaMean_v[i] <- NA - #graf_p_temp2$stopnjaMean_v[i] <- NA - tabela_p_temp$stopnjaMean_v[k] <- paste0("((", tabela_p_temp$stopnjaMean_v[k], "))") - #tabela_p_temp2$stopnjaMean_v[i] <- paste0("((", tabela_p_temp2$stopnjaMean_v[i], "))") - } - else if (stevilo_PoStopnjah[[i]][k] >=5 & stevilo_PoStopnjah[[i]][k] < 10){ - tabela_p_temp$stopnjaMean_v[k] <- paste0("(", tabela_p_temp$stopnjaMean_v[k], ")") - } - } - - #Vrstica s povprecji fakultete (25 je nek umeten ID) - graf_vrstica[[i]] <- c(25, formatC2(odgMean[[i]][ii], digits=1, format='f'), iii) - graf_p_temp[[i]] <- rbind(graf_p_temp[[i]], graf_vrstica[[i]]) - - - barve <- c("#FFE4E1", "#468fd7", "#CD2626", "#D9E2E1", "#B7AFA3") - names(barve) <- c("1", "7", "9", "25", "30") - - - tabela_p_temp <- rbind(tabela_p_temp, graf_vrstica[[i]]) - - # Pripisemo stolpec s poprecji za vse stopnje / letnike - # z namenom razvrscanja sklopov glede na to povprecje - stopnjaMeanSkupaj_v[[i]] <- odgMean[[i]][ii] - - graf_p[[i]][[ii]] <- cbind(graf_p_temp[[i]], stopnjaMeanSkupaj_v[[i]]) - tabela_p[[i]][[ii]] <- cbind(tabela_p_temp, stopnjaMeanSkupaj_v[[i]]) - } -} - -barve <- c("#FFE4E1", "#1874CD", "#CD2626", "#D9E2E1", "#B7AFA3") -barva_font = "black" - -#Funkcija za risanje barchartov glede na 'prog_r2' - -font.add("CM Roman", regular = paste0("cmunrm.ttf")) - -graf_program_f <- function(x, y, z, letnik){ - # x = podatki_trenutni - # y = caption - # z = zaporedna stevilka - # Izbrisemo dejavnike, ki imajo manj, kot 4 enote - dejavniki <- subset(dejavniki, !is.na(dejavniki$meanGraf)) - # Podatke uredimo glede na skupno povprecje dejavnikov - dejavniki <- arrange(dejavniki, desc(dejavniki[,15])) - dejavniki$iii2 <- factor(dejavniki$iii2, levels=rev((unique(dejavniki$iii2)))) - - nivojiFaktorjev <- factor(dejavniki$stopnjaId_v) - vrstniRedNivojev <- sort(unique(as.numeric((dejavniki$stopnjaId_v)))) - nivojiFaktorjev <- factor(nivojiFaktorjev, levels=(vrstniRedNivojev)) - - manjsi.font <- 0 - manjsi.kvadrat <- 0 - manjsi.height <- 0 - manjsi.width <- 0 - - if(nrow(dejavniki)==2){ - asp.ratio <- 0.75 - manjsi.height <- 3 - }else if (nrow(dejavniki)==3){ - asp.ratio <- 0.95 - manjsi.height <- 1.5 - }else if(nrow(dejavniki)==4){ - asp.ratio <- 1.5 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - }else if(nrow(dejavniki)==5){ - asp.ratio <- 1.4 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - }else if(nrow(dejavniki)==6){ - asp.ratio <- 1.55 - manjsi.font <- 3.5 - manjsi.kvadrat <- 0.3 - manjsi.width <- 1.3 - manjsi.height <- 0.8 - }else{ - asp.ratio <- 0.55 - manjsi.height <- 3.5 - } - - #asp.ratio <- 1.5 - #manjsi.font <- 0.5 - #manjsi.height <- 0.5 - - izpis <- ggplot(dejavniki, - aes(x=iii2,y=round2(as.numeric(meanGraf), digits=1), - fill=nivojiFaktorjev, - label = meanGraf))+ - geom_bar(stat="identity", position="dodge")+ #Pozicija value label-ov - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = barva_font, - size = 5.5)+ - - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none) + - - scale_fill_manual(name = "", breaks=(nivojiFaktorjev), - values= (dejavniki$barve), - labels= dejavniki$napis, - guide= guide_legend())+ - - xlab("")+ - ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(aspect.ratio=asp.ratio)+ - - theme(axis.text=element_text(size=18-manjsi.font, - family='CM Roman'), - axis.title=element_text(size=18-manjsi.font, - family='CM Roman'), - legend.position="none", - # Dodamo crto pri x in y osi, ki je drugace pri tej temi ni - axis.line.x = element_line(colour = 'black', - size=0.5, - linetype='solid'), - axis.line.y = element_line(colour = 'black', - size=0.5, - linetype='solid'))+ - - coord_flip() - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/izpis", stevec,"_",letnik, "letnik.pdf") - - ggsave(izpis, filename=ime, width=12-manjsi.width, height=8.5-manjsi.height, units="in", device=cairo_pdf ) - - caption <- as.character(y) - cat(paste0('\\begin{figure}[!ht] - \\flushleft \\caption{', caption, ' - dejavniki (grafični prikaz povprečij)} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} - - -# Ustvarimo prazna df-ja -# da tam nadomescamo povprecja glede na dejavnik -# to prikazujemo pri tabelah po študijskem programu / letniku - -sklopi_po_programih <- list() -sklopi_po_programih_oba <- list() -prazen_df_output <- list() -# Kasneje vkljuci v spodnjo zanko -for (i in podatki_programi){ - odgSd[[i]][odgSd[[i]] == "NA"] <- "." - odgMax[[i]][odgMax[[i]] == "Inf" | odgMax[[i]] == "-Inf"] <- "." - odgMin[[i]][odgMin[[i]] == "Inf" | odgMin[[i]] == "-Inf"] <- "." -} - -for (i in podatki_programi[podatki_programi != 3]){ - stID_v <- as.matrix(rep(c(as.numeric(imena_output[[i]])), nrow(vprZ[[i]])), ncol=1) - stMean_v <- as.matrix(rep("0", length(vrstaProg_output[[i]])*nrow(vprZ[[i]])), ncol=1) - stMean_v_graf <- as.matrix(rep("0", length(vrstaProg_output[[i]])*nrow(vprZ[[i]])), ncol=1) - iii3 <- sapply(vprZ[[i]]$kljucnaBeseda, function(x){rep(x,length(vrstaProg_output[[i]]))}) - iii3 <- matrix(iii3, ncol=1) - - nap <- as.character() - - for (j in 1:length(vrstaProg_output[[i]])){ - if (nchar(as.character(vrstaProg_output[[i]][j])) > 20){ - nap[j] <- paste0(strtrim(as.character(vrstaProg_output[[i]][j]), 20), ".") - }else if (nchar(as.character(vrstaProg_output[[i]][j])) <= 20){ - nap[j] <- as.character(vrstaProg_output[[i]][j]) - } - } - - nap <- as.matrix(rep(nap, nrow(vprZ[[i]])), ncol=1) - - # B7 - siva, D9 - sivomodra, CD - rdeca, 1874-modra, ffe - roza - # c7 - sivoroza - barve1 <- c("#468fd7", "#CD2626", "#C7AFA3", "#D9E2E1", "#B7AFA3", "#AD571D", "#FF8200") - # Pomembno, da je skupaj tako v grafih po programih, kot v grafih - # po letnikih, prikazan z isto barvo - # samo ob pogoju, da nastopa vec tipov programov, drugace dejavnike prikazemo z rdeco - barveStopnja <- barve1 - barveStopnja[length(vrstaProg_output[[i]])] <- "#FFE4E1" - - - - bar <- as.matrix(rep(c(barveStopnja[1:length(vrstaProg_output[[i]])]), nrow(vprZ[[i]])), ncol=1) - - stMeanSk_v <- as.matrix(rep("0", length(vrstaProg_output[[i]])*nrow(vprZ[[i]])), ncol=1) - odgSklopR_2 <- as.vector(sapply(odgSklop_R[[i]], function(x){rep(x, length(vrstaProg_output[[i]]))})) - - vprZsklop2 <- as.vector(sapply(vprZ[[i]]$sklop, function(x){rep(x, length(vrstaProg_output[[i]]))})) - - # Grafom po letnikih pripisemo napise za v legendo - napisiLetnik <- c("Prvi letnik", "Drugi letnik", "Tretji letnik", - "Četrti letnik", "Skupaj") - idLetnik <- c(1, 2, 3, 4, 25) - napisiLetnik <- data.frame(napisi = napisiLetnik, - id = idLetnik, stringsAsFactors =F) - - odgMeanSkupaj <- as.vector(sapply(odgMean[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - kratkoIme <- as.vector(sapply(vprZ[[i]]$kratkoIme, function(x){rep(x,length(vrstaProg_output[[i]]))})) - - prazen_n <- as.vector(sapply(odgSt[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - prazen_min <- as.vector(sapply(odgMin[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - prazen_max <- as.vector(sapply(odgMax[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - prazen_sd <- as.vector(sapply(odgSd[[i]], function(x){rep(x,length(vrstaProg_output[[i]]))})) - - # Row names dodamo, ker drugace javi opozorilo - prazen_df <- data.frame(kratkoIme, stID_v, prazen_n, prazen_min, prazen_max, prazen_sd, stMean_v, stMean_v_graf, iii3, nap, bar, stMeanSk_v, odgSklopR_2, vprZsklop2, odgMeanSkupaj, row.names = 1:length(kratkoIme), stringsAsFactors = F) - - # Imena dejavnikov shranimo, da lahko poimenujemo posamezne kose, tega - # df, potem ko ga razdelimo glede na dejavnike - - vrstiRedImen <- prazen_df$kratkoIme[seq(1, length(prazen_df$kratkoIme), by=length(vrstaProg_output[[i]]))] - - prazen_df$prazen_sd[prazen_df$prazen_sd == "NA"] <- "." - # prvotni prazen_df, razbijemo na posamezna vprasanja - prazen_df <- split(prazen_df, rep(1:nrow(vprZ[[i]]),each=length(imena_output[[i]]))) - - - for (j in (1:length(vrstaProg_output[[i]]))){ - ii <- imena_output[[i]][j] - for (k in 1:length(tabela_p[[i]])){ - - colnames(prazen_df[[k]]) <- c("imeKratko","stopnjaId_v", "n", "min", "max", "sd", - "stopnjaMean_v", "meanGraf", "iii2", "napis", "barve", - "stopnjaMeanSkupaj_v", "odgSklop_R", "vprZ_sklop", "odgMeanSkupaj") - - if (ii %in% tabela_p[[i]][[k]][,1]){ - - if (length(tabela_p[[i]][[k]]['stopnjaMean_v'][tabela_p[[i]][[k]]['stopnjaId_v']==ii])!= 0){ - prazen_df[[k]]$stopnjaMean_v[[j]] <- tabela_p[[i]][[k]]['stopnjaMean_v'][tabela_p[[i]][[k]]['stopnjaId_v']==ii] - } - }else {prazen_df[[k]]$stopnjaMean_v[[j]] <- "0"} - - if (ii %in% graf_p[[i]][[k]][,1]){ - if (length(graf_p[[i]][[k]]['stopnjaMean_v[[i]]'][graf_p[[i]][[k]]['stopnjaId_v[[i]]']==ii])!= 0){ - if (prazen_df[[k]]$n[[j]] > 3){ - prazen_df[[k]]$meanGraf[[j]] <- formatC2(round2(as.numeric(graf_p[[i]][[k]]['stopnjaMean_v[[i]]'][graf_p[[i]][[k]]['stopnjaId_v[[i]]']==ii]), digits = 1), digits = 1, format = 'f') - }else{prazen_df[[k]]$meanGraf[[j]] <- NA} - - - } - }else{prazen_df[[k]]$meanGraf[[j]] <- 000} - } - } - - - ### Podatke primerne za izris grafov transformiramo v obliko za tabele - ### Povprecja, ki so prvotno v enem stoplcu, razdelimo v vec stolpcev - ### Odvisno od stevila prisotnih stopenj. - - for (j in (1:length(prazen_df))){ - for (k in (1:nrow(prazen_df[[j]]))){ - prazen_df[[j]][paste0("povp",k)] <- barvanje_f(prazen_df[[j]]$meanGraf[[k]]) - } - # Izlocimo samo eno vrstico - # in potrebne stolpce za izpis tabele - # 14 - idSklopa; 9 - ime; 3:6 - n min max sd, 16... uni, mag... - sklopi_po_programih[[j]] <- prazen_df[[j]][1, c(14, 9, 3:6, 15:(16+length(vrstaProg_output[[i]])-1))] - } - - sklopi_po_programih_oba[[i]] <- sklopi_po_programih - - names(prazen_df) <- vrstiRedImen - prazen_df_output[[i]] <- prazen_df - - names(sklopi_po_programih_oba[[i]]) <- vrstiRedImen - # data.frame zdruzimo v enega - sklopi_po_programih_oba[[i]] <- do.call(rbind, sklopi_po_programih_oba[[i]]) - - # podatke uredimo glede na id sklopa in padajoce povprecje za vse sklope - sklopi_po_programih_oba[[i]] <- arrange(sklopi_po_programih_oba[[i]], vprZ_sklop, desc(sklopi_po_programih_oba[[i]][,7])) - - # Izlocimo stolpec z id-jem sklopa - sklopi_po_programih_oba[[i]] <- sklopi_po_programih_oba[[i]][,-c(1, 7)] - - - - # Dolocimo napise za tabele po studijskih stopnjah: - if (length(vrstaProg_output[[i]]) > 1){ - napisiT5 <- lapply(imena_output[[i]][-length(imena_output[[i]])], function(x){ - if (nchar(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x])) >6){ - if (substr(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]), 6, 6) == " "){ - paste0(strtrim(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]), 5), ".") - }else{ - paste0(strtrim(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]), 6), ".") - } - }else{ - unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]) - } - }) - colnames(sklopi_po_programih_oba[[i]]) <- c("\\textbf{Dejavnik}", "n", "min", "max", "sd", unlist(napisiT5), "Skupaj") - }else if (length(vrstaProg_output[[i]]) == 1){ - napisiT5 <- lapply(imena_output[[i]], function(x){ - if (nchar(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x])) >10){ - if (substr(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]), 10, 10) == " "){ - paste0(strtrim(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]), 9), ".") - }else{ - paste0(strtrim(unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]), 10), ".") - } - }else{ - unique(veljavneEnote_trenutne[[i]]$program[veljavneEnote_trenutne[[i]]$idprog==x]) - } - }) - - colnames(sklopi_po_programih_oba[[i]]) <- c("\\textbf{Dejavnik}", "n", "min", "max", "sd", unlist(napisiT5)) - } - - sklopi_po_programih_oba[[i]][sklopi_po_programih_oba[[i]] == 0] <- "." - sklopi_po_programih_oba[[i]] <- obdaj_z_oklepaji_f(sklopi_po_programih_oba[[i]],2,2,1,c(5:6)) - -} - - -d3 <- list() -poSklopih <- list() -# Tabela: Povprečne vrednosti za vse dejavnike (kasneje urejena) -for (i in podatki_programi){ - # Tabela: Povprečne vrednosti za vse dejavnike (kasneje urejena) - d3[[i]] <- data.frame(vprZ[[i]]$dolgoIme, - vprZ[[i]]$kljucnaBeseda, - odgSt[[i]], - odgMin[[i]], - odgMax[[i]], - odgMean[[i]], - odgSd[[i]], - vprZ[[i]]$sklop, - odgSklop_R[[i]], - stringsAsFactors = FALSE) - -colnames(d3[[i]]) <- c("vprZ_dolgoIme", "vprZ_kljucnaBeseda", "odgSt", - "odgMin", "odgMax", "odgMean", "odgSd", - "vprZ_sklop", "odgSklop_R") - - -# Tabela vseh dejavnikov glede na njihovo padajoce povprecje tabela: -poSklopih[[i]] <- arrange(d3[[i]][,c(1, 3, 6, 7)], desc(odgMean)) - -# Manjsim n-jem dodamo oklepaje in obarvamo povprecja -poSklopih[[i]] <- obdaj_z_oklepaji_f(poSklopih[[i]], 2, 2, 1, 3:4) - -poSklopih[[i]]$povp <- unname(poSklopih[[i]][3]) -poSklopih[[i]]$odgMean <- barvanje_f(poSklopih[[i]][3]) -colnames(poSklopih[[i]]) <- c("Dejavniki", "n", "povprečje", "sd") - -} - - -# 1, 2, 3 = za oba letnika skupaj -povzetek_kratek <- function(letnik){ - poSklopih_output <- poSklopih[[letnik]][!is.nan(unlist(poSklopih[[letnik]][,5])),] - poSklopih_output <- subset(poSklopih_output, poSklopih_output[,3] != ".") - if (nrow(poSklopih_output) != 0){ - povzetek_najboljsi <- poSklopih_output[,5][unlist(poSklopih_output[,5]) == max(unlist(poSklopih_output[,5]))] - - stNajboljsih <- length(povzetek_najboljsi) - - povzetek_najslabsi <- poSklopih_output[,5][unlist(poSklopih_output[,5]) == min(unlist(poSklopih_output[,5]))] - - stNajslabsih <- length(povzetek_najslabsi) - - - - for(i in (1:length(stNajboljsih))){ - if (stNajboljsih == 1){ - text <- paste0('Najboljše je ocenjen dejavnik "', poSklopih_output[i, 1], '" (', - poSklopih_output[i, 3], ')') - }else if (stNajboljsih == 2){ - text <- paste0('Najbolje sta ocenjena dejavnika "', poSklopih_output[1, 1], '" (', - poSklopih_output[1, 3], ') in "', poSklopih_output[2, 1], '" (', - poSklopih_output[2, 3], ')') - }else if (stNajboljsih > 2){ - krajsi_vseh <- stNajboljsih - text <- ('Najboljše so ocenjeni dejavniki ') - for ( j in 1:stNajboljsih){ - if(j == krajsi_vseh){ - locilo <- ". " - }else if(j== krajsi_vseh - 1){ - locilo <- " in " - }else{ - locilo <- ", " - } - text <- paste0(text, '"',poSklopih_output[j, 1], - '" (', poSklopih_output[j, 3], - ')', locilo) - - } - - } - } - - cat(paste0(text, " \\\\ \\\\")) - - - for(i in (1:length(stNajslabsih))){ - if (stNajslabsih == 1){ - text <- paste0('Najslabše je ocenjen dejavnik "', - poSklopih_output[nrow(poSklopih_output), 1], '" (', - poSklopih_output[nrow(poSklopih_output), 3], ')') - }else if (stNajslabsih == 2){ - text <- paste0('Najslabše sta ocenjena dejavnika "', poSklopih_output[nrow(poSklopih_output), 1], '" (', - poSklopih_output[nrow(poSklopih_output), 3], ') in "', poSklopih_output[nrow(poSklopih_output)-1, 1], '" (', - poSklopih_output[nrow(poSklopih_output)-1, 3], ')') - }else if (stNajslabsih > 2){ - krajsi_vseh <- stNajslabsih - text <- ('Najslabše so ocenjeni dejavniki ') - for ( j in 1:stNajslabsih){ - if(j == krajsi_vseh){ - locilo <- ". " - }else if(j== krajsi_vseh - 1){ - locilo <- " in " - }else{ - locilo <- ", " - } - text <- paste0(text, '"', - poSklopih_output[nrow(poSklopih_output)-(j-1), 1], - '" (', poSklopih_output[nrow(poSklopih_output)-(j-1), 3], - ')', locilo) - - } - - } - } - - cat(text) - } -} - -poSklopih_graf <- list() -poSklopih_urejena <- list() -napisiSklopov_addtorow <- list() -napisiSklopov_addtorow_frekvencna <- list() -d4_R2_output <- list() -mesta_addtorow <- list() -vsiDejavniki_povzetek <- list() - -for (i in podatki_programi){ - poSklopih_graf[[i]] <- d3[[i]][,c(1, 3, 6)] - poSklopih_graf[[i]][1] <- vprZ[[i]]$grafBeseda - - # Izbris enot, ki imajo manj, kot 4 enote - poSklopih_graf[[i]] <- subset(poSklopih_graf[[i]], poSklopih_graf[[i]][,2] > 3) - poSklopih_graf[[i]] <- poSklopih_graf[[i]][,c(1,3)] - - poSklopih_graf[[i]] <- arrange(poSklopih_graf[[i]], desc(odgMean)) - poSklopih_graf[[i]]$odgMean <- round2(poSklopih_graf[[i]]$odgMean, digits=1) - colnames(poSklopih_graf[[i]]) <- c("grafBeseda", "odgMean") - # Zakaj? - if (nrow(poSklopih_graf[[i]]) != 0){ - poSklopih_graf[[i]]$id <- rev(1:nrow(poSklopih_graf[[i]])) - } - - # Po Sklopih urejena - # V poSklopih_urejena so povprecja glede na dejavnik urejena po sklopih in padajocem povprecju sklopa - # in padajocem povp dejavnikov - poSklopih_urejena[[i]] <- arrange(d3[[i]], desc(odgSklop_R), vprZ_sklop, desc(odgMean)) - - #Za barvanje vrstic - stVprasanj <- as.numeric() - stVprasanj.uQ <- unique(poSklopih_urejena[[i]]$vprZ_sklop) - for (j in stVprasanj.uQ){ - stVprasanj <- c(stVprasanj, length(poSklopih_urejena[[i]]$odgSt[poSklopih_urejena[[i]]$vprZ_sklop == j])) - } - - # Pridobimo unikatne ID-je sklopov, ki jih bomo nato povezali z napisi sklopov - idSklopov <- unique(poSklopih_urejena[[i]]$vprZ_sklop) - # Napise sklopov uredimo glede na pripadajoce urejene dejavnike - napisiSklopov_addtorow[[i]] <- sapply(idSklopov, function(x){napisiSklop[x]}) - # Pomembno, da so v tabeli s frekvencno porazdelitvijo odg, napisi sklopov prikazani v eni vrstici - napisiSklopov_addtorow_frekvencna[[i]] <- paste0("\\multicolumn{11}{l}{\\textbf{", napisiSklopov_addtorow[[i]], "}}\\\\ ") - # Pomembno, da so v tabeli, kjer so dejavniki grupirani po sklopih, napisi sklopov - # prikazani v eni vrstici - napisiSklopov_addtorow[[i]] <- paste0("\\multicolumn{6}{l}{\\textbf{", napisiSklopov_addtorow[[i]], "}}\\\\ ") - - napisiSklopov_addtorow[[i]][seq(2,length(napisiSklopov_addtorow[[i]]), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow[[i]][seq(2,length(napisiSklopov_addtorow[[i]]), by=2)]) - - napisiSklopov_addtorow_frekvencna[[i]][seq(2,length(napisiSklopov_addtorow_frekvencna[[i]]), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow_frekvencna[[i]][seq(2,length(napisiSklopov_addtorow_frekvencna[[i]]), by=2)]) - # Za vrstico z imeni stoplcev pri tabeli s frekvencno porazdelitvijo narisemo crto - napisiSklopov_addtorow_frekvencna[[i]][1] <- paste0("\\hline ", napisiSklopov_addtorow_frekvencna[[i]][1]) - - # Mesta na katera bomo z addtorow v xtable izpisali sklope - mesta_addtorow[[i]] <- c(1, cumsum(stVprasanj)[-length(stVprasanj)]) - - - # Indeksi - poSklopih_urejena[[i]] <- poSklopih_urejena[[i]][,2:7] - poSklopih_urejena[[i]][,5] <- barvanje_f(poSklopih_urejena[[i]][,5]) - - # in poimenujemo stolpce - colnames(poSklopih_urejena[[i]]) <- c("\\textbf{Dejavnik}", "n", "min", "max", "povprečje", "sd") - - #### katere vrstice naj bodo obarvane: - d4_temp <- 0 - d4_R2 <- as.numeric() - for (j in (1:length(stVprasanj))){ - if (j %% 2 == 0){ - for(k in(1:stVprasanj[j])){ - d4_R2 <- c(d4_R2, k+d4_temp) - } - d4_temp <- d4_temp + stVprasanj[j] - } - else{ - d4_temp <- d4_temp + stVprasanj[j] - } - } - - #Drugace obarvanje zamakne za eno vrstico - d4_R2_output[[i]] <- d4_R2 - 1 - - vsiDejavniki_povzetek[[i]] <- arrange(d3[[i]][,c(1, 3, 6, 7)], desc(odgMean)) - -} - - -#Data frame z arrange iz dplyr uredimo glede na mean narascajoce -#z digits dolocamo st. decimalnih mest po stolpcih -#align povravnava in sirina stolpcev -#add.to.row: alternirajoce baravanje vrstic -#'longtable', za to, da se tabela nadaljuje -#floating = false, mora biti pri longtable drugace lahko vrne opozorilo -cat('\\section{Povzetek}') -cat(paste0('Povzemamo glavne ugotovitve evalvacijske ankete zadovoljstva študentov tretje stopnje "', fakulteta, ' ', unique(as.character(vrstaProg_output)), ' (', celaLetnica_dolga[[1]], ')".')) -if (length(podatki_letnik) > 1){ - cat(paste0(' V anketi je odgovarjalo ', poProgramih_N_veljavni[[1]][1], ' študentov prvega letnika (od ', stevilo_vpisanih[[1]][1], ' vpisanih) in ', poProgramih_N_veljavni[[2]][1], ' študentov drugega letnika (od ', stevilo_vpisanih[[2]][1], ' vpisanih).')) -}else{ - cat(paste0(' V anketi je odgovarjalo ', poProgramih_N_veljavni[[podatki_letnik]][1], ' študentov prvega letnika (od ', stevilo_vpisanih[[podatki_letnik]][1], ' vpisanih). ')) -} -@ -V povzetku se omejujemo predvsem na prikaz ocen za dejavnike splošnega zadovoljstva na lestvici 1 - 5. Povprečja, ki izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji). \\ \\ -<>= - -############ -### POVZETEK -############ -############ - -# Splosna struktura: 1) funkcija z argumenti 'stVecjih', 'stManjsih', 'stSledijo', -# 'izhodisce' - -# 2) Sestavimo okvir z urejenimi sklopi GLEDE NA, tipa 1-5 -# Poklicemo funkcijo, ki izpise text za sklope v okviru tipa 1-5 -# tip 1: >4.5; tip2: vecje ali enako 4 in manjse od 4.5; tip 1: <3 - - - -# Dolocimo napise izhodisca, ki jih poklicemo v funkciji povzetek_f - -napisiIzhodisce <- list() - -#Za povprečja manjsa od 3 -napisiIzhodisce[[1]] <- c("Kritično je ocenjen dejavnik:", - "Kritično sta ocenjena dejavnika:", - "Kritično so ocenjeni dejavniki:", - "") - -# Za povprečja manjsa od 3.5 in vecja od 3 -napisiIzhodisce[[2]] <- c("Zelo veliko prostora za izboljšave ima dejavnik:", - "Zelo veliko prostora za izboljšave imata dejavnika:", - "Zelo veliko prostora za izboljšave je pri dejavnikih:", - "") - -# Za povprečja manjsa od 4 in vecja od 3.5 -napisiIzhodisce[[3]] <- c("Dobro je ocenjen dejavnik:", - "Dobro sta ocenjena dejavnika:", - "Dobro so ocenjeni naslednji dejavniki:", - "") - -# Za povprečja manjsa od 4.5 in vecja od 4 -napisiIzhodisce[[4]] <- c("Zelo dobro je ocenjen dejavnik:", - "Zelo dobro sta ocenjena dejavnika:", - "Zelo dobro so ocenjeni naslednji dejavniki:", - "") - -#Napisi za povprečja večja od 4.5 -napisiIzhodisce[[5]] <- c("Odlično je ocenjen dejavnik:", - "Odlično sta ocenjena dejavnika:", - "Odlično so ocenjeni naslednji dejavniki:", - "") - - -#Funkcija, ki določi napis in ločilo za izpis 'stSledijo' -# 'stSledijo' so tisti, ki spadajo v ta (izhodiscni) sklop - -# Funkcija, ki določi napis in ločilo za izpis pri tistih sklopih, ki nimajo -# vecjih ali manjsih - -napisLocilo <- function(k){ - if((stSledijo==1 & k == 1) | k == stSledijo){ - locilo <- "." - y <- 1 - } - else if (stSledijo >= 2 & k == stSledijo-1) { - locilo <- " in" - y <- 2 - } - else if ((stSledijo>2 & k!= 1) & k!= stSledijo ){ - locilo <- "," - y <- 3 - } - else if (stSledijo > 2 & k == 1){ - locilo <- "," - y <- 3 - } - return(list(locilo, y)) -} - -# To Do: zamenjaj vrstni red, da bo pri klicanju enako kot tu -# (stVecjih, stSledijo, stManjsih) -# Funkcija, ki izpise povzetek glede na -# x - stVecjih, x2 - stManjsih, x3 - stSledijo, x4 - izhodisce -# glede na izhodisce dolocimo napise glede na razdaljo povprecja -# od povprecja sklopa -# Izhodisca: > 4.5 = 5; vecje ali enako 4 in manjse od 4.5 = 4;... <3 = 1 - -povzetek_f <- function(x, x2, x3, x4){ - - # ki nam pomaga dolociti napise (npr. neprimerno boljse / slabse, izrazito...) - izhodisce <- x4 - - - # Ce obstaja kaksen dejavnik, ki je vecji od sklopa v katerega je umescen - if (x > 0){ - - #S krepko pisavo izpise ime sklopa - text <- paste0(text, "\\item \\textbf{", dfX[,1][[i]], ":} ") - - # Padajoce urejena povprecja dejavnikov za i-ti sklop v dfX - # V dfX so sklopi izbranega tipa - povp_zaIzpis <- povpSklopi_zaIzpis_output[[i]]$odgMean_rounded[povpSklopi_zaIzpis_output[[i]]$idSklopov_zaIzpis==dfX[i,2]] - - # Izlocimo samo vecja povprecja od sklopa, da jim lahko dolocimo razdaljo - # od izhodisca - vecji <- povp_zaIzpis[c(1:stVecjih)] - vecji_opis <- list() - razdalja <- list() - - # Vsakemu povprecju doloci razdaljo od izhodisca - # Mozne razdalje so od 3 - 0 - # 3 izraza neprimerno boljse; 0 pa nekoliko boljse - for (ix in 1:length(vecji)){ - - if (vecji[[ix]] > 4.5) { - vecji_opis[[ix]] <- 4 - }else if(vecji[[ix]] > 4 ) { - vecji_opis[[ix]] <- 3 - }else if (vecji[[ix]] > 3.5) { - vecji_opis[[ix]] <- 2 - }else if (vecji[[ix]] > 3) { - vecji_opis[[ix]] <- 1 - } - razdalja[[ix]] <- vecji_opis[[ix]] - izhodisce - - } - - # Dolocimo napise glede na razdaljo - - vecji.napis_tip0 <- c("Nekoliko bolje ") - vecji.napis_tip1 <- c("Precej bolje ") - vecji.napis_tip2 <- c("Izrazito bolje ") - vecji.napis_tip3 <- c("Neprimerno bolje ") - - - st_razdalja_stiri <- length(unlist(razdalja)[razdalja==3]) - - if(st_razdalja_stiri > 0){ - # Dolocimo locila in napis glede na stevilo dejavnikov razdalje 3 - # locilo pripisemo vsakemu dejavniku posebej - # napisiText upostevamo samo pri prvem dejavniku - for (j in (1: st_razdalja_stiri)){ - - if(st_razdalja_stiri==1 | j == st_razdalja_stiri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_stiri==2 | j == st_razdalja_stiri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 3 - # npr. vecji.napis_tip3 = "Neprimerno boljše " - # napisiText = "sta ocenjena dejavnika" - # vprZ3... = Dolgo ime vidika - # odgMean.. = povprecje vidika - - if (j==1){ text <- paste0(text, vecji.napis_tip3, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - - if(st_razdalja_tri > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 2 - for (j in (1: st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 2 - if (j==1){ text <- paste0(text, vecji.napis_tip2, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - - if(st_razdalja_dve > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 1 - for (j in (1: st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 1 - if (j==1){ text <- paste0(text, vecji.napis_tip1, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_ena <- length(unlist(razdalja)[razdalja == 0]) - - if(st_razdalja_ena > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 0 - for (j in (1: st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 0 - # Sprememba - if (j==1){ text <- paste0(text, vecji.napis_tip0, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - # 2. Sledijo: to so tisti dejavniki, katerih povprecje spada v povprecje sklopa - # Kljub temu imajo vsaj en dejavnik, ki ima povp vecjo od intervala mediane - # kamor je uvrscen sklop. - if (x3 > 0){ - for (k in ((stVecjih+1):(stVecjih+stSledijo))){ - # k- stvecjih - # pomembno, da pravilno doloci locilo - locilo <- napisLocilo(k-stVecjih)[[1]] - - # Dolocimo 'je / sta / so' za napisiIzhodisce - if (stSledijo == 1){ - y2 <- 1 - napisSledijo <- " Sledi " - }else if(stSledijo == 2){ - y2 <- 2 - napisSledijo <- " Sledita " - }else if(stSledijo > 2){ - y2 <- 3 - napisSledijo <- " Sledijo " - ### ???? - }else if(stSledijo+stVecjih == 0){ - y2 <- 4 - } - - if (k == stVecjih+1){text <- paste0(text, napisSledijo)} - #if (k == stVecjih+1){text <- paste0(text, napisSledijo, napisiIzhodisce[[x4]][y2])} - - text <- paste0(text, - " \\textit{'", - vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - } - } - } - - # Izpis povzetka za sklop, katerega dejavniki glede na povprecja v celoti pasejo vanj - else { - text <- paste0(text, "\\item \\textbf{", dfX[,1][i], ":} ") - for (k in (1:(x3))){ - izhodisce <- x4 - # x3 - stevilo dejavnikov, ki pasejo v ta sklop - # izberemo obliko je / sta / so - # glede na stevilo vidikov - - if(x3==1){ - st <- 1 - }else if(x3==2){ - st <- 2 - }else if(x3>2){ - st <- 3 - } - - #if(k==1){text <- paste0(text, napisiIzhodisce[[izhodisce]][st])} - if(k==1){text <- paste0(text)} - - locilo <- napisLocilo(k)[[1]] - x <- napisLocilo(k)[[2]] - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - - } - } - - ############################################## - # 3. stManjsih - # Glej opis za 1.) stVecjih - - #Ce je v sklopu kaksen dejavnik s povprecjem manjsim od povp. skopa - if (x2>0){ - izhodisce <- x4 - - povp_zaIzpis <- povpSklopi_zaIzpis_output[[i]]$odgMean_rounded[povpSklopi_zaIzpis_output[[i]]$idSklopov_zaIzpis==dfX[i,2]] - - manjsi <- povp_zaIzpis[c((stVecjih+stSledijo+1):length(povp_zaIzpis))] - manjsi_opis <- list() - razdalja <- list() - - - for (ix in 1:length(manjsi)){ - - if (manjsi[[ix]] <= 4.5 & manjsi[[ix]]>4) { - manjsi_opis[[ix]] <- 5 - }else if(manjsi[[ix]] <= 4 & manjsi[[ix]]>3.5) { - manjsi_opis[[ix]] <- 4 - }else if (manjsi[[ix]] <= 3.5 & manjsi[[ix]]>3) { - manjsi_opis[[ix]] <- 3 - }else if (manjsi[[ix]] <= 3) { - manjsi_opis[[ix]] <- 2 - } - # Pri vecjih dodamo +11 - razdalja[[ix]] <- manjsi_opis[[ix]] - izhodisce - - } - manjsi.napis_tip0 <- c(" Nekoliko slabše ") - manjsi.napis_tip1 <- c(" Precej slabše ") - manjsi.napis_tip2 <- c(" Izrazito slabše ") - manjsi.napis_tip3 <- c(" Neprimerno slabše ") - - - st_razdalja_ena <- length(unlist(razdalja)[razdalja==0]) - - # Ce obstaja vsaj eno povprecje, ki je za eno razdaljo manjse od sklopa - if (st_razdalja_ena > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_ena){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip0, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - if(st_razdalja_dve > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_dve){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip1, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip2, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==3]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip3, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - } - - return(text) -} - - -# Funkcija, ki doloci napise pri n -auto.NapisSklop_f <- function(x=0){ - # Pri tem napisu je struktura nekoliko drugacna - if (x==1){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pri naslednjem sklopu " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "je pri naslednjih dveh sklopih " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "je pri naslednjih sklopih " - } - }else if(x==2){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pozitivno ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta pozitivno ocenjena naslednja sklopa, ki pa imata še precej prostora za izboljšave " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so pozitivno ocenjeni naslednji sklopi, ki pa imajo še precej prostora za izboljšave " - } - # Pri teh napisih ne potrebujemo presledka - }else if (x==5){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pri naslednjem sklopu" - }else if (nrow(dfX)==2){ - auto.napis_NS <- "je pri naslednjih dveh sklopih" - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "je pri naslednjih sklopih" - } - - }else{ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je ocenjen naslednji sklop " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta ocenjena naslednja sklopa " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so ocenjeni naslednji sklopi " - } - } - return(auto.napis_NS) -} - - - -# Sestavimo okvir za vsak tip (1-5) -# Za vse sklope s povprečjem >=4.5 & <5 -# Znotraj dolocimo argumente funkcije povzetek_f -# in jo poklicemo znotraj vsakega tipa -# tipe smo dolocili pri z zanko, ki gre cez sklop_Z (povprecja sklopov) -# *podroben opis samo pri prvem pri ostalih se ponovi -# Pomoznim podatkom dejavnikov pripisemo povprecja, da jih lahko razvrscamo / klicemo -# po padajocem povprecju znotraj posameznega sklopa - -text <- as.character() -text_povzetek_output <- list() -# +1, ker zelimo tudi povzetek za oba letnika skupaj -for (letnik in podatki_programi){ - - odgMean_povzetek <- unlist(odgMean[[letnik]]) - vprZ3 <- cbind(vprZ[[letnik]], odgMean_povzetek, stEnot[[letnik]]) - vprZ3 <- subset(vprZ3, vprZ3[,11] > 3 ) - vprZ3 <- arrange(vprZ3, sklop, desc(odgMean_povzetek)) - - - odgMean1 <- round2(odgMean_povzetek, digits=1) - odgMean1 <- c(sort(odgMean1[1:6], decreasing=TRUE), - sort(odgMean1[7:11], decreasing=TRUE), - sort(odgMean1[12:17], decreasing=TRUE), - sort(odgMean1[18:21], decreasing=TRUE), - sort(odgMean1[22:25], decreasing=TRUE)) - - #Barvanje povprecij dejavnikov - #Zaokrozimo na eno decimalko - odgMean1 <- barvanje_f(odgMean1) - - - #Zaradi kasnejsega urejanja po velikosti glede na povp. seznam pretvorimo v df. - dfZ <- as.data.frame(sklop_Z[[letnik]], stringsAsFactors = FALSE) - dfZ <- as.data.frame(lapply(dfZ, unlist), stringsAsFactors = FALSE) - - - #Uredimo po velikosti glede na odgSklop (povp. sklopa) - dfZ <- dfZ[with(dfZ, order(dfZ$odgSklop, decreasing = TRUE)), ] - izpisi_povzetek <- as.numeric() - for(i in 1:nrow(dfZ)){ - if (nrow(subset(vprZ3, vprZ3$id == dfZ$id[i]))>0){ - izpisi_povzetek <- c(izpisi_povzetek, 1) - }else{izpisi_povzetek <- c(izpisi_povzetek, 0)} - } - dfZ <- cbind(dfZ, izpisi_povzetek) - - dfX <- subset(dfZ, dfZ$tip == 1) - if (nrow(dfX) != 0){ - if(sum(dfX$izpisi_povzetek) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, "Odlično ", auto.napis_NS, - "(mediana dejavnikov je v intervalu 4.5 - 5.0): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - # Dolocimo kratkoIme vprasanj v tem sklopu - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - # V tem sklopu ne more biti dejavnikov z vecjim povprecjem od njega - stVecjih <- 0 - - # Povprecje tega sklopa je vecje od 4.5 (tip = 1) - # prestejemo dejavnike, ki imajo sklop enak i-temu elementu dfX-a - # in so manjsi od 4.5 - - stManjsih <- 0 - - stSledijo <- stDejavnikov - stManjsih - - # zadnji argument je izhodisce od katerega v funkciji povzetek_f - # racunamo razdaljo in dolocamo napise za dejavnike, ki imajo povp. - # vecje ali manjse od svojega sklopa - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 5) - - } - text <- paste0(text," \\end{itemize}") - } - } - - # Izpis texta za ocene med 4 in 4.5 - dfX <- subset(dfZ, dfZ$tip == 2) - if (nrow(dfX) != 0){ - if(sum(dfX$izpisi_povzetek) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, "Zelo dobro ", auto.napis_NS, - "(mediana dejavnikov je v intervalu 4.0 - 4.5): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - stVecjih <- 0 - stManjsih <- 0 - - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 4) - - } - text <- paste0(text," \\end{itemize}") - } - } - - - #Ocene med 3.5 in 4 - dfX <- subset(dfZ, dfZ$tip == 3) - - if (nrow(dfX) != 0){ - if(sum(dfX$izpisi_povzetek) != 0){ - auto.napis_NS <- auto.NapisSklop_f(2) - text <- paste0(text, "V celoti gledano ", auto.napis_NS, "(mediana dejavnikov je v intervalu 3.5 - 4.0): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 3) - } - - text <- paste0(text," \\end{itemize}") - } - } - - #Ocene nad 3 in manj kot 3.5 - dfX <- subset(dfZ, dfZ$tip == 4) - if (nrow(dfX) != 0){ - if(sum(dfX$izpisi_povzetek) != 0){ - - # 5, zato, ker so tu napisi nekoliko drugacni (ne potrebujemo presledka) - auto.napis_NS <- auto.NapisSklop_f(5) - - text <- paste0(text, "Veliko prostora za izboljšave ", - auto.napis_NS, ", kjer je pozitivno oceno (4 ali 5) podala manj kot polovica študentov", - " (mediana dejavnikov je v intervalu 3.0 - 3.5): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] - & vprZ3$odgMean < 3]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 2) - - } - text <- paste0(text," \\end{itemize}") - } - } - - #Ocene pod 3 - dfX <- subset(dfZ, dfZ$tip == 5) - if (nrow(dfX) != 0){ - if(sum(dfX$izpisi_povzetek) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, - "Kritično nizko ", auto.napis_NS, - "(mediana dejavnikov je manjša od 3.0): \\begin{itemize}") - for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] ) -stVecjih - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 1) - - } - text <- paste0(text," \\end{itemize}") - } - } - text_povzetek_output[[letnik]] <- text - text <- as.character() -} - -if (length(podatki_programi) == 3){ - podatki_povzetek <- c(3) -}else{ - podatki_povzetek <- podatki_programi -} - -letnik_beseda <- c("Prvi letnik", "Drugi letnik", "Oba letnika združeno") -for (i in podatki_povzetek){ - if(length(text_povzetek_output[[i]]) != 0){ - cat(gsub("\\[BR\\]", "\\\\\\\\", text_povzetek_output[[i]])) - cat(" Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana.") - cat("\\newpage") - } -} -@ -\newpage -\tableofcontents -\newpage -\section{Metodologija} - -<>= - -library(rvest) -page <- read_html("http://ul.1ka.si/c/6/") -plain.text <- page %>% html_nodes ("#main p") %>% html_text()%>%as.character() - -text <- gsub("\\[seznam\\]", "\\\\begin{itemize} ", plain.text) -text <- gsub("\\[\\\\seznam\\]", "\\\\end{itemize} ", text) -text <- gsub("• ", "\\\\item ", text) -text <- gsub("%", "\\\\% ", text) -text <- gsub("\\[br\\]", "\\\\\\\\", text) -text <- gsub("\\[link\\]", "{\\\\url{", text) -text <- gsub("\\[\\\\link\\]", "}}", text) -text <- gsub("\\[koren\\]", "$\\\\sqrt{", text) -text <- gsub("\\[\\\\koren\\]", "}$", text) -text <- gsub("\\[rdeca\\]", "\\\\textcolor[HTML]{B6321C}{\\\\textbf{", text) -text <- gsub("\\[\\\\rdeca\\]", "}}", text) -text <- gsub("\\[oranzna\\]", "\\\\textcolor[HTML]{F58137}{\\\\textbf{", text) -text <- gsub("\\[\\\\oranzna\\]", "}}", text) -text <- gsub("\\[zelena\\]", "\\\\textcolor[HTML]{36BF4B}{\\\\textbf{", text) -text <- gsub("\\[\\\\zelena\\]", "}}", text) -text <- gsub("\\[temnoZelena\\]", "\\\\textcolor[HTML]{006666}{\\\\textbf{", text) -text <- gsub("\\[\\\\temnoZelena\\]", "}}", text) -text <- gsub("\\[it\\]", "\\\\textit{", text) -text <- gsub("\\[\\\\it\\]", "}", text) -cat(text) - -cat('Povzemimo še odziv študentov: - \\begin{itemize}') -letnik_beseda_metodologija <- c("prvega", "drugega") -letnik_beseda_metodologija2 <- c("prvi", "drugi") - -if (length(podatki_programi)>1){ - nova_vrstica_metodologija <- c(" ", " \\end{itemize} ") -}else{ nova_vrstica_metodologija <- c(" \\end{itemize} ", "\\end{itemize}" ) -} - -# Popravi -for (i in podatki_programi[podatki_programi != 3]){ - -vpisanih_text <- paste0("V ", letnik_beseda_metodologija2[[i]], " letnik je vpisanih ", stevilo_vpisanih[[i]][length(stevilo_vpisanih[[i]])], " študentov, od tega ") - - if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] == 1){ - pristopili_text <- paste0("je k anketi pristopil 1 študent, ") - }else if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] == 2){ - pristopili_text <- paste0("sta k anketi pristopila 2 študenta, ") - }else if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] > 2 & stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] < 5){ - pristopili_text <- paste0("so k anketi pristopili ", stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])], " študenti, ") - }else if (stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])] > 4){ - pristopili_text <- paste0("je k anketi pristopilo ", stVrsta.vsi_output[[i]][length(stVrsta.vsi_output[[i]])], " študentov, ") - } - - - if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] == 1){ - zavrnili_text <- paste0("1 študent je nato sodelovanje izrecno zavrnil,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] == 2){ - zavrnili_text <- paste0("2 študenta sta nato sodelovanje izrecno zavrnila,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] > 2 & stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] < 5){ - zavrnili_text <- paste0(stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] ," študenti so nato sodelovanje izrecno zavrnili,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] > 4){ - zavrnili_text <- paste0(stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] ," študentov je nato sodelovanje izrecno zavrnilo,") - }else if (stVrsta.r_output[[i]][length(stVrsta.r_output[[i]])] == 0){ - zavrnili_text <- paste0("sodelovanja ni zavrnil nihče izmed študentov,") - } - - if (vsehT1[[i]] == 1){ - izpolnili_text <- paste0(" anketo je tako izpolnjeval 1 študent.") - }else if (vsehT1[[i]] == 2){ - izpolnili_text <- paste0(" preostala 2 študenta pa sta na anketo odgovorila.") - }else if (vsehT1[[i]] > 2 & vsehT1[[i]] < 5){ - izpolnili_text <- paste0(" preostali ", vsehT1[[i]] ," študenti pa so na anketo odgovorili.") - }else if (vsehT1[[i]] > 4){ - izpolnili_text <- paste0(" preostalih ", vsehT1[[i]] ," študentov pa je na anketo odgovorilo.") - } - cat(" \\item ", vpisanih_text, pristopili_text, zavrnili_text, izpolnili_text, nova_vrstica_metodologija[i]) -} - -@ -\newpage -\section{Sodelovanje študentov v anketi} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov v študijskem programu "\Sexpr{unique(as.character(vrstaProg_output[podatki_programi[1]]))}" po letnikih. - -V koloni "odgovoril" je z enojnimi (<10) ali dvojnimi ((<5)) oklepaji označeno morebitno nižje število odgovorov "n" (glej poglavje Metodologija), ki v analizah zahteva več previdnosti pri interpretacijah. -<>= - -# \\multicolumn{2}{r|}{\\textbf{zavrnili}} Za r, moramo ponoviti crto (|) iz align -# Drugace se pri multicolumn konca -# Vse vrstice nad \endhead se ponovijo na vsaki strani -# Pomembno, da ponovi glavo tudi pri naslednjih straneh pri longtable -# /toprule /hline, namesto dvakrat /hline, ker drugace -# longtable izpise samo eno odebeljeno crto - -if (1 %in% podatki_programi){ - - #Dodamo multicolumns in črto nad njimi - addtorow <- list() - addtorow$pos <- list(-1, -1, 0) - addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{2}{r|}{\\textbf{vpisanih}} & \\multicolumn{2}{r||}{\\textbf{ni pristopil}} & \\multicolumn{2}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{2}{|r|}{\\textbf{vpisanih}} & - \\multicolumn{2}{|r||}{\\textbf{ni prostopil}} & - \\multicolumn{2}{r|}{\\textbf{pristopili}} & - \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & N & \\% & $n_0$ & \\% & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - - - print(xtable(struktura_studijski_program[[1]], - align=c("l", "p{7.4cm}", "|c", "c|", "c", "c||", "c", "c|", "c", "c|", "c", "c|"), - caption = "Sodelovanje študentov glede na študijski program - prvi letnik"), - caption.placement="top", - include.rownames = FALSE, - add.to.row = addtorow, - floating = FALSE, - tabular.environment = "longtable", - sanitize.colnames.function = function(x){x}, - # Pomembno, da delujejo latex ukazi v textu znotraj vrstic - sanitize.text.function = function(x){x}, - hline.after = c(1)) #aktiviramo dolocene crte -} - -# Drugi letnik - -#Dodamo multicolumns in črto nad njimi -if (2 %in% podatki_programi){ - addtorow <- list() - addtorow$pos <- list(-1, -1, 0) - # \\multicolumn{2}{r|}{\\textbf{zavrnili}} Za r, moramo ponoviti crto (|) iz align - # Drugace se pri multicolumn konca - - # Vse vrstice nad \endhead se ponovijo na vsaki strani - # Pomembno, da ponovi glavo tudi pri naslednjih straneh pri longtable - # /toprule /hline, namesto dvakrat /hline, ker drugace - # longtable izpise samo eno odebeljeno crto - - addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{2}{r|}{\\textbf{vpisanih}} & \\multicolumn{2}{r||}{\\textbf{ni pristopil}} & \\multicolumn{2}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{2}{|r|}{\\textbf{vpisanih}} & - \\multicolumn{2}{|r||}{\\textbf{ni pristopil}} & - \\multicolumn{2}{r|}{\\textbf{pristopili}} & - \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & N & \\% & $n_0$ & \\% & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - - - print(xtable(struktura_studijski_program[[2]], - align=c("l", "p{7.4cm}", "|c", "c", "|c", "c||", "c", "c|", "c", "c|", "c", "c|"), - caption = "Sodelovanje študentov glede na študijski program - drugi letnik"), - caption.placement="top", - include.rownames = FALSE, - add.to.row = addtorow, - floating = FALSE, - tabular.environment = "longtable", - sanitize.colnames.function = function(x){x}, - # Pomembno, da delujejo latex ukazi v textu znotraj vrstic - sanitize.text.function = function(x){x}, - hline.after = c(1)) #aktiviramo dolocene crte -} -@ - -<>= -grafDejavnikov <- function(data, letnik, obaLetnika=0){ - data <- data[!is.nan(data$odgMean),] - data <- data[data$odgMean != 0, ] - if (nrow(data) != 0){ - p2 <- ggplot(data, aes(x=reorder(grafBeseda, id), y=odgMean) ) + - geom_bar(stat="identity", fill="#468fd7")+ - geom_hline(yintercept = c(3), linetype="dotted", colour="#B6321C") + - geom_hline(yintercept = c(3.5), linetype="dotted", colour="#F58137") + - geom_hline(yintercept = c(4, 4.5), linetype="dotted") + - - #geom_hline(data = vlines, aes(yintercept = xint, colour = c("#B6321C", "#F58137", "#000000", - #"#000000")), - # linetype = "dashed", show.legend = FALSE)+ - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = "white", - #fontface = "bold", - size = 4.2, - label = formatC2(sort(data$odgMean), - digits=1, format='f'))+ - coord_flip(ylim=c(1,5))+ - xlab("")+ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(axis.line.x = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.text= element_text(size=11, family="CM Roman"), - axis.title= element_text(size=11, family='CM Roman')) - - ime <- paste0("rezultati/", ID,"/grafi/grafVsehDejavnikov","_",letnik,".pdf") - showtext.auto() - ggsave(p2, filename=ime, units="in", device=cairo_pdf ) - - dodatenNapis <- "" - if (obaLetnika == 1){ - dodatenNapis <- " - oba letnika združeno" - } - cat(paste0('\\begin{figure}[ht] - \\caption{Opisne statistike za dejavnike, urejene po povprečjih', dodatenNapis, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\end{figure}')) - } -} - - - -# S to funkcijo izpisemo krajsi povzetek -#x - podatki_trenutni -#y - kritičen, kritična, kritični -#z - meja -#primerjava: 0 - manjse, 1 - vecje ali enako - - -stevecPovzetkov <- 0 - -krajsiPovzetek_f <- function(x,y,z,primerjava, locilaBesede, - textPred="", textPo="", stevilo_izpis=0){ - dejavnikiBesede <- c("dejavnik: ", "dejavnika: ", "dejavniki: ") - x$odgMean <- formatC2(x$odgMean, digits=1, format='f') - - if(primerjava == 0){ - izbraniDejavniki <- x$vprZ.dolgoIme1[x$odgMean < z[1]] - povp_krajsi <- x$odgMean[x$odgMean < z[1]] - }else if (primerjava == 2){ - izbraniDejavniki <- x$vprZ.dolgoIme1[x$odgMean < z[2] & x$odgMean >=z[1]] - povp_krajsi <- x$odgMean[x$odgMean < z[2] & x$odgMean >=z[1]] - }else{ - izbraniDejavniki <- x$vprZ.dolgoIme1[x$odgMean >= z[1]] - povp_krajsi <- x$odgMean[x$odgMean >= z[1]] - } - #Lahko se else if - if(length(izbraniDejavniki) != 0){ - - stevecPovzetkov <- stevecPovzetkov+1 - if (stevilo_izpis == 0){ - - if(length(izbraniDejavniki) == 1){ - text_krajsiPovzetek <- paste0( y[1], dejavnikiBesede[1], "") - }else if(length(izbraniDejavniki) == 2){ - text_krajsiPovzetek <- paste0( y[2], dejavnikiBesede[2], "") - }else{ - text_krajsiPovzetek <- paste0( y[3], dejavnikiBesede[3], "") - } - - for(i in (1:length(izbraniDejavniki))){ - krajsi_vseh <- length(izbraniDejavniki) - if(i == krajsi_vseh){ - locilo <- ". " - }else if(i== krajsi_vseh - 1){ - locilo <- " in " - }else{ - locilo <- ", " - } - text_krajsiPovzetek <- paste0(text_krajsiPovzetek, "'", - izbraniDejavniki[i], - "' (", barvanje_f(povp_krajsi[i]), - ")", locilo) - - } - }else{ - text_krajsiPovzetek <- paste0( y[1], dejavnikiBesede[1], "") - krajsi_vseh <- length(izbraniDejavniki) - text_krajsiPovzetek <- paste0(text_krajsiPovzetek, "'", - izbraniDejavniki[stevilo_izpis], - "' (", barvanje_f(povp_krajsi[stevilo_izpis]), - #")", locilo) - ").") - } - cat(paste0(textPred, text_krajsiPovzetek, textPo, '\\\\ \\\\')) - } - - return(stevecPovzetkov) -} - - - -# Funkcija kateri kot argument podamo kratko ime dejavnika -# Izpise alternirajoce (vsako drugo vrstico) obarvane odprte odgovore -odprtiOdg_f <- function(l, x, y, newpage=0, izpis=1){ - if (izpis == 1){ - #Filter neveljavnih odgovorov - pw1 <- veljavneEnote[[l]][x][veljavneEnote[[l]][x] != "-1: Ni odgovoril" & - veljavneEnote[[l]][x] != "-1" & - veljavneEnote[[l]][x] != "-3: Prekinjeno" & - veljavneEnote[[l]][x] != "-3" & - veljavneEnote[[l]][x] != "/" & - veljavneEnote[[l]][x] != "" & - veljavneEnote[[l]][x] != "" & - veljavneEnote[[l]][x] != "Ne" & - veljavneEnote[[l]][x] != "¸/" & - veljavneEnote[[l]][x] != "-" & - veljavneEnote[[l]][x] != "ne" & - veljavneEnote[[l]][x] != "#ERROR!"] - - # Preveri ali je za izbran dejavnik sploh kaksen odgovor - # Izkljucimo odprte odg. krajse od 4 mest. - if (length(pw1) != 0){ - pw1 <- pw1[nchar(pw1)> 4] - - - # nato se spet lahko zgodi, da ni odgovorov - if (length(pw1) != 0){ - #Pomembno za delovanje komentarjev z narekovaji - pw1 <- stri_unescape_unicode(pw1) - pw2 <- sapply(latexTranslate(na.omit(pw1)), function(x){paste0("\\textit{",x,"}")}) - # Za vsakim (razen za zadnjim) odgovorom doda novo vrstico - # Drugace novo crto v primeru polne strani narise na naslednji strani - # Pred vsakim odg. doda piko (\\tabitem): Izkljuceno - # pw2 <- paste0("\\tabitem ",pw2, "\\\\") - pw2 <- gsub("", "", pw2) - #pw2 <- c(paste0(pw2[1:(length(pw2)-1)], "\\\\"), pw2[[length(pw2)]]) - pw2 <- data.frame(pw2) - - # Nastavimo alternirajoce barvanje vrstic (ce je dolzina vsaj 2) - addtorow <- list() - if (nrow(pw2) > 1){ - addtorow$pos <- list(0, seq(1, (nrow(pw2)-1), by = 2)) - addtorow$command <- c("\\\\[-0.4cm] ","\\rowcolor[gray]{0.95}") - - }else if (nrow(pw2) == 1){ - # Ce je tocno en odprti odgovor za izbran dejavnik - addtorow$pos <- list(0, 1) - addtorow$command <- c("\\\\[-0.4cm] ", "") - } - # Izbrisemo ime stolpca - #colnames(pw2) <- "" - - print(xtable(pw2, align=c("p", "p{0.95\\textwidth}"), caption=y), - include.rownames = FALSE, - include.colnames = FALSE, - add.to.row = addtorow, - tabular.environment = "longtable", - floating = FALSE, - hlines.after = "", - caption.placement = 'top', - sanitize.text.function = function (x){x}) - if (newpage ==1){ - cat('\\newpage') - } - } - - } - } -} - -######### -if (length(podatki_programi) == 3){ - cat('\\newpage') - cat('\\section{Analiza dejavnikov in vsebinskih sklopov - oba letnika združeno}') - cat('V nadaljevanju so najprej predstavljene analize za 25 dejavnikov, združene za oba letnika skupaj. Opisne statistike vključujejo število (n), povprečje in standardni odklon (sd). Gre za najbolj grobo agregatno analizo. Podrobnosti po letnikih so nadalje analizirane v poglavjih 5 in 6 oziroma 7.') - - rws3 <- seq(1, (nrow(poSklopih[[3]])-1), by = 2) - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - #colnames(poSklopih[[3]]) <- c("Dejavniki", "n", "povprečje", "sd") - poSklopih[[3]][3][poSklopih[[3]][3] == "NaN"] <- "." - - print(xtable(poSklopih[[3]][-5], - digits=c(0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po povprečjih - oba letnika združeno", - align = c("l", "p{12cm}", "c", "c", "c")), - caption.placement="top", - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE, - table.placement= ("!ht"), - #add.to.row=list(pos=list(-1), command=c("\\hline"))) - #booktabs = TRUE, - add.to.row = list(pos = list(-1, rws3), - command = c("\\hline","\\rowcolor[gray]{0.95}"))) - - cat('\\newpage') - - grafDejavnikov(poSklopih_graf[[3]], "oba_letnika", 1) - povzetek_kratek(3) - - - cat('\\newpage') - print(xtable(obdaj_z_oklepaji_f(poSklopih_urejena[[3]],2,2,1, c(5:6)), - digits=c(0,0,0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih - oba letnika združeno", - align = c("l", "p{8.2cm}", "C{0.8cm}", "C{1cm}", - "C{1cm}", "C{2.2cm}", "C{1cm}")), - - caption.placement="top", - sanitize.colnames.function = bold, - include.rownames = FALSE, - table.placement= ("!ht"), - sanitize.text.function = function(x){x}, - hline.after = c(-1, nrow(poSklopih_urejena[[3]])), - add.to.row = list(pos = list(-1, 0, 0, - mesta_addtorow[[3]][2], - mesta_addtorow[[3]][3], - mesta_addtorow[[3]][4], - mesta_addtorow[[3]][5], - d4_R2_output[[3]]), - command = c("\\hline", "\\hline", napisiSklopov_addtorow[[3]], "\\rowcolor[gray]{0.95}"))) -} - - -########## -##Tabela 4 -########## - - -#V 5 seznamov shrani posamezne odg glede na vprasanje -odstVeljavni <- function(n, y){ - n <- as.vector((n / y)*100) - return (n) -} -odgVeljavni2.L <- list() -odgVeljavni_skupaj <- list() - -d4 <- list() -for (i in podatki_programi){ - for (j in 1:5){ - odgVeljavni2.L[j] <- list(as.vector(sapply(odgVeljavni[[i]], function(x){ - length(x[x==j])}))) - } - odgSt[[i]] <- as.vector(odgSt[[i]]) - - #V 5 seznamov shrani odstotke glede na posamezno vprasanje - odgVeljavni2odst.L <- lapply(odgVeljavni2.L, function(x) odstVeljavni(x, y=odgSt[[i]])) - - for( k in 1:5){ - odgVeljavni2odst.L[[k]][odgVeljavni2odst.L[[k]] == "NaN"] <- 0 - } - - #Odstotke in stevilo repondentov glede na posamezno vprasanje zdruzimo z MAP - odgVeljavni2.Zd <- Map(cbind, odgVeljavni2.L, odgVeljavni2odst.L) - odgVeljavni_skupaj[[i]] <- odgVeljavni2.Zd - - kljucnaBeseda_d4 <- strtrim(vprZ[[i]]$kljucnaBeseda, 55) - d4[[i]] <- data.frame(kljucnaBeseda_d4, - st1=odgVeljavni_skupaj[[i]][[1]], - st2=odgVeljavni_skupaj[[i]][[2]], - st3=odgVeljavni_skupaj[[i]][[3]], - st4=odgVeljavni_skupaj[[i]][[4]], - st5=odgVeljavni_skupaj[[i]][[5]], - #odgVeljavni3.n.sk, - #odgVeljavni3.pct.sk, - vprZ[[i]]$sklop, - odgSklop_R[[i]], - odgMean[[i]], - stringsAsFactors = F) - - colnames(d4[[i]]) <- c("kljucnaBeseda","Prvi", "Prvi_odst", "Drugi", - "Drugi_odst", "Tretji", "Tretji_odst", - "Cetrti", "Cetrti_odst", "Peti", "Peti_odst", - "vprZ_sklop", "odgSklop_R", "odgMean") - d4[[i]] <- arrange(d4[[i]], desc(odgSklop_R), vprZ_sklop, desc(odgMean)) - d4[[i]] <- d4[[i]][,1:11] - colnames(d4[[i]]) <- c("\\textbf{Dejavniki po sklopih}", rep(c("n", "\\%"), 5)) -} - -labT4 <- c("\\small \\makecell{Sploh\\\\se ne\\\\strinjam\\\\(1)}", - "\\small \\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam\\\\(2)}", - "\\small \\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam\\\\(3)}", - "\\small \\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam\\\\(4)}", - "\\small \\makecell{Popolnoma\\\\se\\\\strinjam\\\\(5)}") - -if (length(podatki_programi) == 3){ - addtorow_frek <- list() - addtorow_frek$pos <- list(-1, -1, d4_R2_output[[3]]) - - #Dodamo multicolumns in črto nad njimi - addtorow_frek$command <- c("\\hline", paste0(paste0('& \\multicolumn{2}{c}{ \\textbf{', labT4, '}}', collapse=''), - - "\\\\ - \\hline - \\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% - \\endfirsthead - - \\caption{Frekvenčna porazdelitev enot za dejavnike po sklopih - oba letnika združeno (nadaljevanje)} \\\\ \\hline - - & \\multicolumn{2}{c}{ \\textbf{\\makecell{Sploh\\\\se ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Popolnoma\\\\se\\\\strinjam}}} \\\\ \\hline - - \\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% \\\\ \\hline - \\endhead"), - - "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - # Novo - addtorow2_frek <- list() - addtorow2_frek$pos <- list(0, - mesta_addtorow[[3]][2], - mesta_addtorow[[3]][3], - mesta_addtorow[[3]][4], - mesta_addtorow[[3]][5], - d4_R2_output[[3]]) - addtorow2_frek$command <- c(napisiSklopov_addtorow_frekvencna[[3]], "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - - cat(paste0('\\newpage \\begin{longtable}{p{5.5cm}cccccccccc} - \\caption{Frekvenčna porazdelitev enot za dejavnike po sklopih - oba letnika združeno} \\\\ ')) - cat(c("\\hline", addtorow_frek$command[2])) - - print(xtable(d4[[3]], - align=c("l", "p{5.5cm}", rep("c", 10)), - caption = paste0("Frekvenčna porazdelitev enot za dejavnike po sklopih - oba letnika združeno"), - digits=0), - include.rownames=FALSE, - include.colnames=F, - only.contents = T, - #caption.placement = "top", - #sanitize.colnames.function = function(x){x}, - sanitize.text.function = function (x){x}, - #tabular.environment = 'longtable', - add.to.row = addtorow2_frek, - hline.after = NULL - ) - #floating = FALSE) - cat("\\hline \\end{longtable}") -} -@ - - - -<>= -if (length(podatki_programi) == 3){ - cat('\\newpage') - cat('\\section{Analize skupnih spremenljivk po letnikih} -V nadaljevanju so analizirane vse skupne spremenljivke (razen odprtih vprašanj), ki so bile hkrati vključene v oba letnika. Poleg 25 dejavnikov na lestvicah 1-5, prikazanih že v skupni analizi v Poglavju 4, je vključenih še 13 drugih spremenljivk. Analize v tem poglavju so zato namenjene predvsem primerjavama oziroma razlikam med letnikoma.') - - - ########## - ##Tabela - ########## - ###Opisne statistike glede na program in dolocena vprasanja - - - sy.mean_output <- list() - sy.length_output <- list() - skupaj.mean_output <- list() - skupaj.length_output <- list() - - #programiV2 - ################### - # Enote razvrstimo glede na programe - - odg_gledeProgram <- list() - for (i in podatki_programi[podatki_programi != 3]){ - - odg.GP <- list() - for (j in (1:length(tip_programa_veljavni[[i]]$idprog_uq))){ - # Zakaj -length(veljavneEnote_trenutne[[i]]) - odg.GP[j] <- list(filter(veljavneEnote_trenutne[[i]][-length(veljavneEnote_trenutne[[i]])], idprog == tip_programa_veljavni[[i]]$idprog_uq[[j]])) - } - - - # Veljavni odgovori za enote razvrščene po programu - # ali odgovori za vsa vprasanja glede na program - odgGPV <- vector(mode="list", length = length(odg.GP)) - for (j in (1:length(odg.GP))){ - for (k in (1:length(vprZ[[i]]$kratkoIme))){ - jj <- vprZ[[i]]$kratkoIme[k] - odgGPV[[j]][jj] <- subset(odg.GP[[j]][jj], odg.GP[[j]][jj] > 0) - } - } - - # Odgovore spremenimo iz stringov v numeric - odgGPV <- lapply(odgGPV, function(x){lapply(x, function(y){as.numeric(y)})}) - - - # Podatke moramo najprej spremeniti v numeric, ta funkcija nam pri majhnem številu #odgovorov na posamezni program in vprasanje (2), izpise rezultate v napacni obliki - # in nadaljnji izracuni ne delujejo - - #odgGPV <- lapply(odgGPV, function(x){sapply(x, function(y){as.numeric(y)})}) - - # povprecja, dolzine, ... za vsa vprasanja glede na program - - sy.mean <- lapply(odgGPV, function(x) sapply(x, mean)) - sy.length <- lapply(odgGPV, function(x) sapply(x, function(x) length(x))) - - # Povprečja, dolžine, za vse programe določenega letnika - sy.mean_output[[i]] <- sy.mean - sy.length_output[[i]] <- sy.length - - ### Izračuni za skupaj #se nadaljuje v f_tabele priloga - - skupaj.mean <- lapply(odgVeljavni[[i]], mean) - skupaj.length <- lapply(odgVeljavni[[i]], length) - - - skupaj.mean_output[[i]] <- skupaj.mean - skupaj.length_output[[i]] <- skupaj.length - - - # Izracuni 'izbirnih predmetov' - po programih in po letnikih. (Podatki) - odg_gledeProgram[[i]] <- odg.GP - } - - - # Zdruzimo povprecja in stevilo enot, ki so veljavno odgovorile, po letnikih (po stolpcih) - if (length(podatki_programi) == 3){ - bb <- cbind(skupaj.mean_output[[1]], skupaj.mean_output[[2]]) - bb_length <- cbind(skupaj.length_output[[1]], skupaj.length_output[[2]]) - }else{ - bb <- skupaj.mean_output[[podatki_programi]] - bb_length <- skupaj.length_output[[podatki_programi]] - } - - # V bb3 izracunamo povprecje vseh programov in letnikov za dolocen dejavnik - # v bb4 sestejemo stevilo enot, ki so odgovorile na dolocen dejavnik (iz vseh programov in iz vseh letnikov) - bb3 <- list() - bb4 <- list() - - if (length(podatki_programi) == 3){ - for (j in 1:nrow(bb)){ - bb2 <- rownames(bb)[j] - bb3[bb2] <- mean(unlist(bb[j,])) - bb4[bb2] <- sum(unlist(bb_length[j,])) - } - }else{ - bb3 <- bb - bb4 <- bb_length - } - - bb3 <- data.frame(bb3, stringsAsFactors = F) - bb3[bb3 == "NaN"] <- "." - bb4 <- data.frame(bb4, stringsAsFactors = F) - - letnik_priloga <- list() - povprecja_priloga <- list() - stEnot_priloga <- list() - f_tabelePriloga <- function(n, dejavniki_drugiLetnik){ - dejavniki_priloga <- n - for (i in podatki_programi[podatki_programi != 3]){ - if (i == 2){dejavniki_priloga <- dejavniki_drugiLetnik} - - # V povprecja_priloga imamo povprecja za dejavnike v stolpcih po programu - povprecja_priloga[[i]] <- formatC2(sapply(sy.mean_output[[i]], function(x){return (x[dejavniki_priloga]) }), digits = 1, format="f") - povprecja_priloga[[i]][povprecja_priloga[[i]] == "NaN" | povprecja_priloga[[i]] == "NA"] <- 0 - - # V stEnot_priloga imamo stevilo enot za dejavnike v stolpcih po programu - stEnot_priloga[[i]] <- sapply(sy.length_output[[i]], function(x){return (x[dejavniki_priloga]) }) - - - if (nchar(tip_programa_veljavni[[i]]$naziv) > 46){ - napis_prog_priloga <- paste0(strtrim(tip_programa_veljavni[[i]]$naziv, 46), ".") - }else{ - napis_prog_priloga <- tip_programa_veljavni[[i]]$naziv - } - - letnik_priloga[[i]] <- data.frame(napis_prog_priloga, - letnik_napisi[[i]], - stEnot_priloga[[i]][1,], - t(povprecja_priloga[[i]]), - stringsAsFactors=F) - letnik_priloga[[i]][,c(4:(3+length(dejavniki_priloga)))] <- barvanje_f(letnik_priloga[[i]][,c(4:(3+length(dejavniki_priloga)))]) - colnames(letnik_priloga[[i]]) <- c("tipPrograma", "letnik", "n", n) - } - - vrstica_skupaj_priloga <- as.character(c("Skupaj", "", bb4[n][1], barvanje_f(bb3[n]))) - - if (length(podatki_programi) == 3){ - skupaj_priloga <- rbind(letnik_priloga[[1]], letnik_priloga[[2]], vrstica_skupaj_priloga) - }else{skupaj_priloga <- rbind(letnik_priloga[[podatki_programi]], vrstica_skupaj_priloga)} - - for (i in 1:length(skupaj_priloga$n)){ - if (as.numeric(skupaj_priloga$n[i]) < 5){ - skupaj_priloga$n[i] <- paste0('((',skupaj_priloga$n[i],'))') - - }else if(as.numeric(skupaj_priloga$n[i]) < 10){ - skupaj_priloga$n[i] <- paste0('(',skupaj_priloga$n[i],')') - } - } - - for (i in podatki_programi[podatki_programi != 3]){ - for (j in 1:ncol(stEnot_priloga[[i]])){ - for(k in 1:length(stEnot_priloga[[i]][,j])){ - if(stEnot_priloga[[i]][k,j]<= 3){ - skupaj_priloga[j, k+3] <- "." - } - } - } - } - - - # Neveljavnim izracunom pripisemo vrednost (.) - zx <- skupaj_priloga - zx[zx == "NaN" | zx == "NA" | zx== "Na" | zx =="Inf" | zx =="-Inf" | zx=="0.0"] <- "." - - return(zx) - } - - # Zaradi izgleda omejimo dolzino imena programa na 50 mest - # Popravi, da bojo imeli piko, če so okrajšani - if (length(podatki_programi) == 3){ - programiV1 <- c(strtrim(tip_programa_veljavni[[1]]$naziv, 45), - strtrim(tip_programa_veljavni[[2]]$naziv, 45), "Skupaj") - }else{ - programiV1 <- c(strtrim(tip_programa_veljavni[[podatki_programi]]$naziv, 45), "Skupaj") - } - -# Kraticam dodamo vrednost ".", ki jo izpisemo vrstici "Skupaj". -# kratica_veljavni <- c(tip_programa_veljavni$kratica, ".") -# Ce bo v tabelah spet stopnja pri align odstejemo -2 cm. -tabele_priloga <- f_tabelePriloga(c("Q5a", "Q5b", "Q5c", "Q5d", "Q5e", "Q5f"), - c("Q5a", "Q5b", "Q5c", "Q5d", "Q5e", "Q5f")) - - -#Narise crto pred skupaj -rw1 <- c(-1, nrow(tabele_priloga)-1, 0) -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Razpored\\\\izvajanja}}&\\rot{\\shortstack[l]{Spremembe\\\\poteka}} & \\rot{\\shortstack[l]{Pravilno nav.\\\\izvajalci}} & \\rot{\\shortstack[l]{Pridobivanje\\\\virov}} & \\rot{\\shortstack[l]{Druga\\\\infrastr.}} & \\rot{\\shortstack[l]{Ustrezen\\\\razp. ur}} \\\\ \\hline \\endfirsthead - \\caption{Infrastruktura in urniki - po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Razpored\\\\izvajanja}}&\\rot{\\shortstack[l]{Spremembe\\\\poteka}} & \\rot{\\shortstack[l]{Pravilnonav.\\\\izvajalci}} & \\rot{\\shortstack[l]{Pridobivanje\\\\virov}} & \\rot{\\shortstack[l]{Druga\\\\infrastr.}} & \\rot{\\shortstack[l]{Ustrezen\\\\razp. ur}} \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") -print(xtable(tabele_priloga[,-1], caption="Infrastruktura in urniki - po letnikih", - align=c("pC{7.5cm}c|cccccc")), - caption.placement = "top", - #booktabs = TRUE, - table.placement= ("!ht"), - include.colnames = FALSE, - tabular.environment = "longtable", - floating = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -tabele_priloga <- f_tabelePriloga(c("Q15a", "Q15b", "Q15c", "Q15d", "Q15e"), - c("Q16a", "Q16b", "Q16c", "Q16d", "Q16e")) - - -com1 <- c("\\toprule[0.4pt]", "\\hline ", " \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Izvajanje\\\\prog.}} & \\rot{\\shortstack[l]{Izbirni\\\\predmeti}} & \\rot{\\shortstack[l]{Generična\\\\znanja}} & \\rot{\\shortstack[l]{Uporabnost\\\\za dr. diser.}} & \\rot{\\shortstack[l]{Kritična\\\\razprava}} \\\\ \\hline \\endfirsthead - \\caption{Zadovoljstvo z izvajanjem programov - po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Izvajanje\\\\prog.}} & \\rot{\\shortstack[l]{Izbirni\\\\predmeti}} & \\rot{\\shortstack[l]{Generična\\\\znanja}} & \\rot{\\shortstack[l]{Uporabnost\\\\za dr. diser.}} & \\rot{\\shortstack[l]{Kritična\\\\razprava}} \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga[,-1], caption="Zadovoljstvo z izvajanjem programov - po letnikih", - align=c("pC{8.7cm}c|ccccc")), - caption.placement = "top", - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - - -tabele_priloga <- f_tabelePriloga(c("Q25a", "Q25b", "Q25c", "Q25d", "Q25e", "Q25f"), - c("Q26a", "Q26b", "Q26c", "Q26d", "Q26e", "Q26f")) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", " \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Podpora\\\\mentorja}} & \\rot{\\shortstack[l]{Svetovanje\\\\mentorja}} & \\rot{\\shortstack[l]{Pomoč pri\\\\ zn. člankih}} & \\rot{\\shortstack[l]{Pomoč pri\\\\težavah}} & \\rot{\\shortstack[l]{Odzivnost\\\\po el. pošti}} & \\rot{\\shortstack[l]{Pogostost\\\\stikov}} - \\\\ \\hline \\endfirsthead - \\caption{Pomoč in podpora mentorja - po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Podpora\\\\mentorja}} & \\rot{\\shortstack[l]{Svetovanje\\\\mentorja}} & \\rot{\\shortstack[l]{Pomoč pri\\\\ zn. člankih}} & \\rot{\\shortstack[l]{Pomoč pri\\\\težavah}} & \\rot{\\shortstack[l]{Odzivnost\\\\po el. pošti}} & \\rot{\\shortstack[l]{Pogostost\\\\stikov}} - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga[,-1], caption="Pomoč in podpora mentorja - po letnikih", - align=c("pC{7.5cm}c|cccccc")), - caption.placement = "top", - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -cat('\\clearpage') -tabele_priloga <- f_tabelePriloga(c("Q29a", "Q29b", "Q29c", "Q29d"), - c("Q30a", "Q30b", "Q30c", "Q30d")) - - -com1 <- c("\\toprule[0.4pt]", "\\hline ", " \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Del štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Možnost štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Udeležba\\\\konferenc}} & \\rot{\\shortstack[l]{Vključenost v\\\\raz. skupino}} - \\\\ \\hline \\endfirsthead - \\caption{Del študija in ostale aktivnosti v tujini - po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Del štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Možnost štud.\\\\v tujini}} & \\rot{\\shortstack[l]{Udeležba\\\\konferenc}} & \\rot{\\shortstack[l]{Vključenost v\\\\raz. skupino}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga[,-1], caption="Del študija in ostale aktivnosti v tujini - po letnikih", - align=c("pC{9cm}c|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - -tabele_priloga <- f_tabelePriloga(c("Q31a", "Q31b", "Q31c", "Q31d"), - c("Q32a", "Q32b", "Q32c", "Q32d")) - - -com1 <- c("\\toprule[0.4pt]", "\\hline ", " \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost\\\\referata}} & \\rot{\\shortstack[l]{Ustrezen\\\\odnos}} & \\rot{\\shortstack[l]{Jasne info.\\\\na spl. strani}} - - \\\\ \\hline \\endfirsthead - \\caption{Svetovalna pomoč študentom - po letnikih - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\makecell{Letnik} & \\makecell{n} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost\\\\referata}} & \\rot{\\shortstack[l]{Ustrezen\\\\odnos}} & \\rot{\\shortstack[l]{Jasne info.\\\\na spl. strani}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga[,-1], caption="Svetovalna pomoč študentom - po letnikih", - align=c("pC{9cm}c|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -} -@ - -\newpage - -<>= -odg.tip6 <- list() -mean.odg6 <- list() -sd.odg6 <- list() -sum.odg6 <- list() -pct.odg6 <- list() -poProgramih_ure_temp <- list() -poProgramih_ure <- list() -poProgramih_ure_output <- list() -poProgramih_ure_ls <- list() -letnik_ure <- list() -vrstaProg_ure <- list() -stevilo_enot_ure <- list() -h2 <- list() -for (i in podatki_programi[podatki_programi != 3]){ - - vprZ.tip6 <- subset(pomoznaT[[i]], pomoznaT[[i]]$tip==6) - odg.tip6[[i]] <- veljavneEnote_trenutne[[i]][vprZ.tip6$kratkoIme] - - # Za tabele v prilogi (po letnikih in programih): - for (j in 1:length(vrstaProg[[i]])){ - # Stevilo porabljenih ur - # Pogoji, ce vrednosti ni - if (nrow(subset(veljavneEnote_trenutne[[i]], idprog == imena_output[[i]][j], - select = "Q6")) > 0){ - - poProgramih_ure_temp[[j]] <- subset(veljavneEnote_trenutne[[i]], - idprog == imena_output[[i]][j], - select = "Q6") - - vrstaProg_ure[[j]] <- as.character(vrstaProg[[i]][j]) - #poProgramih_ure[[j]] <- sum(as.numeric(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0]))/length(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0]) - poProgramih_ure[[j]] <- mean(as.numeric(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0])) - stevilo_enot_ure[[j]] <- length(as.numeric(poProgramih_ure_temp[[j]][poProgramih_ure_temp[[j]] > 0])) - letnik_ure[[j]] <- letnik_napisi[[i]] - } - } - - - poProgramih_ure_ls[[i]] <- data.frame(as.character(vrstaProg_ure), - as.character(letnik_ure), - formatC2(as.numeric(stevilo_enot_ure), digits=0, - format = 'f'), - formatC2(as.numeric(poProgramih_ure), digits=0, - format = 'f'), - stringsAsFactors = F) - - # Pustimo le vrednosti vecje od 0 - odg.tip6_Q6 <- as.numeric(odg.tip6[[i]]$Q6[odg.tip6[[i]]$Q6 > 0]) - if (length(odg.tip6_Q6)>0){ - h2[[i]] <- table(odg.tip6_Q6) - h2[[i]] <- data.frame(h2[[i]], stringsAsFactors = FALSE) - - if (length(odg.tip6_Q6)>1){ - sum.odg6[[i]] <- formatC2(sum(odg.tip6_Q6), digits = 0, format = 'f') - vrsticaSkupaj <- data.frame(sum.odg6[[i]], sum(h2[[i]]$Freq), stringsAsFactors = F) - colnames(vrsticaSkupaj) <- colnames(h2[[i]]) - h2[[i]] <- rbind(h2[[i]], vrsticaSkupaj) - h2[[i]]$pct <- c(formatC2(((h2[[i]]$Freq / length(odg.tip6_Q6)) * 100), - digits = 0, format = 'f')) - mean.odg6[[i]] <- formatC2(mean(odg.tip6_Q6), digits = 0, format = 'f') - sd.odg6[[i]] <- formatC2(sd(odg.tip6_Q6), digits = 0, format = 'f') - h2[[i]] <- cbind(data.frame(c(rep(tip_programa_veljavni[[i]]$naziv, nrow(h2[[i]])-1), "Skupaj"), stringsAsFactors = F), h2[[i]]) - - vrsticaPovprecje <- data.frame("Povprečje", mean.odg6[[i]], sum(h2[[i]]$Freq[-nrow(h2[[i]])]), "100", stringsAsFactors = F) - colnames(vrsticaPovprecje) <- colnames(h2[[i]]) - vrsticaSd <- data.frame("Std. Odkl.", sd.odg6[[i]], sum(h2[[i]]$Freq[-nrow(h2[[i]])]), "100", stringsAsFactors = F) - colnames(vrsticaSd) <- colnames(h2[[i]]) - - h2[[i]] <- rbind(h2[[i]], vrsticaPovprecje) - h2[[i]] <- rbind(h2[[i]], vrsticaSd) - }else{ - h2[[i]]$pct <- c(formatC2(((h2[[i]]$Freq / length(odg.tip6_Q6)) * 100), - digits = 0, format = 'f')) - } - } -} - -if (length(podatki_programi) ==3){ - skupaj_ure <- rbind(poProgramih_ure_ls[[1]], poProgramih_ure_ls[[2]]) - colnames(skupaj_ure) <- c("Program", "Letnik", "n", "Število ur") - skupaj_ure[skupaj_ure == "NaN"] <- "." -} - - - -# Funkcija, ki seznamom doda odstotke in skupaj po stolpcih -seznami_f <- function(seznam, dodajSkupaj = 0){ - #odstotki_ls <- vector('list', nrow(seznam)) - odstotki_ls <- list() - skupaj_ls <- list() - odstotki_temp <- vector('character', (ncol(seznam)-2)) - zacetno_zaporedje <- 3:ncol(seznam) - if (length(seznam) !=0){ - # 1) odstotke po vrsticah - for (i in 1:nrow(seznam)){ - sestevek_PP <- sum(seznam[i,c(3:ncol(seznam))]) - for (j in 1:(ncol(seznam)-2)){ - odstotki_temp[j] <- formatC2((seznam[i, j+2]/sestevek_PP)*100, 0, 'f') - } - odstotki_ls[[i]] <- odstotki_temp - skupaj_ls[[i]] <- formatC2(sestevek_PP, 0, 'f') - } - seznam <- cbind(seznam, do.call(rbind, odstotki_ls)) - # Seznam uredimo - koncno_zaporedje <- as.vector(rbind(zacetno_zaporedje, - seq(max(zacetno_zaporedje)+1, - (max(zacetno_zaporedje)-1)*2 - , 1))) - - seznam <- seznam[,c(1,2,koncno_zaporedje)] - # Drugace pri zamenjava ne dela in vrne opozorilo - seznam[] <- lapply(seznam, as.character) - seznam[seznam == "NaN" | seznam == "NA"] <- "." - if (dodajSkupaj == 1){ - seznam <- cbind(seznam, do.call(rbind, skupaj_ls), "100") - } - } - return(seznam) -} - -seznami_f2 <- function(seznam, nacin=0, dodajSkupaj = 0){ - odstotki_ls <- list() - skupaj_ls <- list() - zacetno_zaporedje <- 3:ncol(seznam) - if (nacin == 0){ - odstotki_temp <- vector('character', (ncol(seznam)-2)) - if (length(seznam) !=0){ - # 1) odstotki po vrsticah - for (i in 1:nrow(seznam)){ - sestevek_PP <- sum(seznam[i,c(3:ncol(seznam))]) - for (j in 1:(ncol(seznam)-2)){ - odstotki_temp[j] <- formatC2((seznam[i, j+2]/sestevek_PP)*100, 0, 'f') - } - odstotki_ls[[i]] <- odstotki_temp - skupaj_ls[[i]] <- formatC2(sestevek_PP, 0, 'f') - } - seznam <- cbind(seznam, do.call(rbind, odstotki_ls)) - } - } - # 2) odstotki po stolpcih - if (nacin == 1){ - if (length(seznam) !=0){ - odstotki_temp <- vector('character', (nrow(seznam))) - for (i in 3:ncol(seznam)){ - sestevek_PP <- sum(seznam[,i]) - for (j in 1:(nrow(seznam))){ - odstotki_temp[j] <- formatC2((seznam[j, i]/sestevek_PP)*100, 0, 'f') - } - odstotki_ls[[i]] <- odstotki_temp - skupaj_ls[[i]] <- formatC2(sestevek_PP, 0, 'f') - } - - seznam <- cbind(seznam, do.call(cbind, odstotki_ls)) - } - } - # Seznam uredimo - koncno_zaporedje <- as.vector(rbind(zacetno_zaporedje, - seq(max(zacetno_zaporedje)+1, - (max(zacetno_zaporedje)-1)*2 - , 1))) - - seznam <- seznam[,c(1,2,koncno_zaporedje)] - # Drugace pri zamenjava ne dela in vrne opozorilo - seznam[] <- lapply(seznam, as.character) - seznam[seznam == "NaN" | seznam == "NA"] <- "." - sestevek_odstotkov <- odstotki_ls[3:length(odstotki_ls)] - sestevek_odstotkov <- sapply(sestevek_odstotkov, function(x){ - if (is.nan(sum(as.numeric(x)))){ - x <- "." - }else{x <- "100"} - }) - - if (dodajSkupaj == 1 & nacin== 0){ - seznam <- cbind(seznam, do.call(rbind, skupaj_ls), "100") - seznam[] <- lapply(seznam, as.character) - - }else if (dodajSkupaj == 1 & nacin== 1){ - seznam <- rbind(seznam, c("Skupaj", "", - c(rbind(do.call(cbind, skupaj_ls), sestevek_odstotkov )))) - - } - - return(seznam) -} - - -if (length(podatki_programi) == 3){ -izbirni_list_letnik <- list() -izbirni_list_vprasanja <- list() -izbirni_list_program <- list() - -disertacija_poProgramih <- list() -triletno_poProgramih <- list() - -nacin_poProgramih <- list() -nacin_poLetniku <- list() - -razlog_poProgramih <- list() -razlog_list_vprasanja <- list() -razlog_poLetniku <- list() - -cas_poProgramih <- list() -cas_poLetniku <- list() - -oblika_poProgramih <- list() -oblika_poLetniku <- list() - -danes_odlocali_poProgramih <- list() -danes_odlocali_poLetniku <- list() - -kam_vpisali_poProgramih <- list() -kam_vpisali_poLetniku <- list() - -# Izracuni za 'izbirni predmeti' po letniku in po programu: -# Vprasanja v istem vrstnem redu, kot so spodaj imena spremenljivk - -for(i in 1:length(odg_gledeProgram)){ # po letnikih - for (j in 1:length(odg_gledeProgram[[i]])){ # po programih - - imeProg <- unique(odg_gledeProgram[[i]][[j]]$program) - - # V bazi prvih letnikov so nekoliko drugacna imena stolpcev (i se navezuje na letnik) - if (i == 1){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q9", "Q12", "Q19", "Q22")] - oblika <- odg_gledeProgram[[i]][[j]][c("Q16")] - danes_odlocali <- odg_gledeProgram[[i]][[j]][c("Q36")] - kam_vpisali <- odg_gledeProgram[[i]][[j]][c("Q37")] - - # Doktorska disertacija: - disertacija_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q27")] - disertacija_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - Da = length(disertacija_poProgramih[[j]][disertacija_poProgramih[[j]] == 1]), - Ne = length(disertacija_poProgramih[[j]][disertacija_poProgramih[[j]] == 2]), - stringsAsFactors = F) - - # Kako studirate?: - nacin <- odg_gledeProgram[[i]][[j]][c("Q34")] - nacin_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - a = length(nacin[nacin == 1]), - b = length(nacin[nacin == 2]), - c = length(nacin[nacin == 3]), - d = length(nacin[nacin == 4]), - e = length(nacin[nacin == 5]), - stringsAsFactors = F) - # Zakaj ste se odlocili za doktorski studij? - razlog <- odg_gledeProgram[[i]][[j]][c("Q35a", "Q35b", "Q35c", "Q35d", "Q35e", "Q35f", "Q35g")] - razlog_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - a = length(razlog$Q35a[razlog$Q35a == 1]), - b = length(razlog$Q35b[razlog$Q35b == 1]), - c = length(razlog$Q35c[razlog$Q35c == 1]), - d = length(razlog$Q35d[razlog$Q35d == 1]), - e = length(razlog$Q35e[razlog$Q35e == 1]), - f = length(razlog$Q35f[razlog$Q35f == 1]), - g = length(razlog$Q35g[razlog$Q35g == 1]), - stringsAsFactors = F) - } else if (i == 2){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q10", "Q13", "Q20", "Q23")] - oblika <- odg_gledeProgram[[i]][[j]][c("Q17")] - danes_odlocali <- odg_gledeProgram[[i]][[j]][c("Q37")] - kam_vpisali <- odg_gledeProgram[[i]][[j]][c("Q38")] - # Triletno trajanje: - triletno_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q8")] - triletno_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - prekratko = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 1]), - predolgo = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 2]), - nevem = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 3]), - da = length(triletno_poProgramih[[j]][triletno_poProgramih[[j]] == 4]), - stringsAsFactors = F) - - # Kako studirate?: - nacin <- odg_gledeProgram[[i]][[j]][c("Q35")] - nacin_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - a = length(nacin[nacin == 1]), - b = length(nacin[nacin == 2]), - c = length(nacin[nacin == 3]), - d = length(nacin[nacin == 4]), - e = length(nacin[nacin == 5]), - stringsAsFactors = F) - # Zakaj ste se odlocili za doktorski studij? - razlog <- odg_gledeProgram[[i]][[j]][c("Q36a", "Q36b", "Q36c", "Q36d", "Q36e", "Q36f", "Q36g")] - razlog_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - a = length(razlog$Q36a[razlog$Q36a == 1]), - b = length(razlog$Q36b[razlog$Q36b == 1]), - c = length(razlog$Q36c[razlog$Q36c == 1]), - d = length(razlog$Q36d[razlog$Q36d == 1]), - e = length(razlog$Q36e[razlog$Q36e == 1]), - f = length(razlog$Q36f[razlog$Q36f == 1]), - g = length(razlog$Q36g[razlog$Q36g == 1]), - #Vprasanje = l, - stringsAsFactors = F) - } - - for (k in 1:4){ - izbirni_daNe <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - Da = length(izbirni_poProgramih[,k][izbirni_poProgramih[,k] == 1]), - Ne = length(izbirni_poProgramih[,k][izbirni_poProgramih[,k] == 2]), - Vprasanje = k, - stringsAsFactors = F) - izbirni_list_vprasanja[[k]] <- izbirni_daNe - } - izbirni_list_program[[j]] <- do.call(rbind, izbirni_list_vprasanja) - #razlog_poProgramih[[j]]<- do.call(rbind, razlog_temp) - # Ali se vam zdi cas, ki ga namenite dr. studiju ustrezen? (Q7) - # Ce vse dela spodnjo vrstico izbrisi - #izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q9", "Q12", "Q19", "Q22")] - # Doktorska disertacija_current: - cas_poProgramih[[j]] <- odg_gledeProgram[[i]][[j]][c("Q7")] - cas_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - Da = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 3]), - Ne_prevec = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 2]), - Ne_premalo = length(cas_poProgramih[[j]][cas_poProgramih[[j]] == 1]), - stringsAsFactors = F) - - oblika_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - Predavanja = length(oblika[oblika == 1]), - Konzultacije = length(oblika[oblika == 2]), - Kombinacija_obojega = length(oblika[oblika == 3]), - stringsAsFactors = F) - - danes_odlocali_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - enako = length(danes_odlocali[danes_odlocali == 1]), - drugam = length(danes_odlocali[danes_odlocali == 2]), - nebi = length(danes_odlocali[danes_odlocali == 3]), - nevem = length(danes_odlocali[danes_odlocali == 4]), - stringsAsFactors = F) - - kam_vpisali_poProgramih[[j]] <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - drug = length(kam_vpisali[kam_vpisali == 1]), - vs = length(kam_vpisali[kam_vpisali == 2]), - tujino = length(kam_vpisali[kam_vpisali == 3]), - stringsAsFactors = F) - } - # - izbirni_list_letnik[[i]] <- do.call(rbind, izbirni_list_program) - razlog_poLetniku[[i]] <- do.call(rbind, razlog_poProgramih) - cas_poLetniku[[i]] <- do.call(rbind, cas_poProgramih) - oblika_poLetniku[[i]] <- do.call(rbind, oblika_poProgramih) - danes_odlocali_poLetniku[[i]] <- do.call(rbind, danes_odlocali_poProgramih) - kam_vpisali_poLetniku[[i]] <- do.call(rbind, kam_vpisali_poProgramih) - nacin_poLetniku[[i]] <- do.call(rbind, nacin_poProgramih) - - # Vprasanji sta zastavljeni v eni izmed obeh anket - # Doktorska disertacija - disertacija_poProgramih_out <- do.call(rbind, disertacija_poProgramih) - # Triletno trajanje - triletno_poProgramih_out <- do.call(rbind, triletno_poProgramih) -} - -izbirni_predmeti <- do.call(rbind, izbirni_list_letnik) - -razlog_out <- do.call(rbind, razlog_poLetniku) -nacin_out <- do.call(rbind, nacin_poLetniku) -cas_out <- do.call(rbind, cas_poLetniku) -# Zaradi drugacnega vrstnega reda, pri prikazu tabele -cas_out <- cas_out[,c(1,2,3,5,4)] - -danes_odlocali_out <- do.call(rbind, danes_odlocali_poLetniku) -kam_vpisali_out <- do.call(rbind, kam_vpisali_poLetniku) -oblika_out <- do.call(rbind, oblika_poLetniku) - - -izbirni_predmeti_po_vprasanjih <- list() -# Ustvarimo seznam dolzine 2, ker drugace ne moremo pripisovati seznamov v seznamu -izbirni_predmeti_po_vprasanjih_po_letnikih <- vector('list', 2) -izbirni_predmeti_skupaj_PL <- list() -izbirni_predmeti_skupaj <- list() - -for (i in 1:5){ - if (i <= 4){ - izbirni_predmeti_po_vprasanjih[[i]] <- subset(izbirni_predmeti, Vprasanje==i)[,-5] - # Doktorska disertacija (spada sem, ker ima isto strukturo, kot izbirni predmeti) - # Morda bi lahko preimenoval v vprasanja da/ne. - }else if(i == 5){ - izbirni_predmeti_po_vprasanjih[[i]] <- disertacija_poProgramih_out - } - # Locimo po letnikih - for (j in 1:2){ - izbirni_predmeti_po_vprasanjih_po_letnikih[[j]][[i]] <- subset(izbirni_predmeti_po_vprasanjih[[i]], Letnik == paste0(j,".")) - } -} - -izbirni_predmeti_tabela <- function(pod, cpt, izpisPovzetka=0, ssub_sect=0){ - if(nrow(pod)>0){ - if(ssub_sect != 0){ - cat(paste0("\\subsubsection{", ssub_sect), "}") - } - rw1 <- c(0) - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{c}{\\textbf{Da}} & \\multicolumn{2}{c}{\\textbf{Ne}} & \\multicolumn{2}{c}{\\textbf{Skupaj}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") - print(xtable(pod, - caption= cpt, - align=c("lp{7.5cm}ccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold) - }else if (nrow(pod) == 0){ - cat('Študenti na to vprašanje niso podali odgovorov.') - } -} - - -skupaj_ure <- rbind(poProgramih_ure_ls[[1]], poProgramih_ure_ls[[2]]) - -colnames(skupaj_ure) <- c("Program", "Letnik", "n", "Število ur") - -skupaj_ure[skupaj_ure == "NaN"] <- "." -skupaj_ure[,3] <- formatC2(as.numeric(skupaj_ure[,3]), digits=0, format='f') -}else{ - skupaj_ure <- poProgramih_ure_ls[[i]] - - colnames(skupaj_ure) <- c("Program", "Letnik", "n", "Število ur") - - skupaj_ure[skupaj_ure == "NaN"] <- "." - skupaj_ure[,3] <- formatC2(as.numeric(skupaj_ure[,3]), digits=0, format='f') -} - -if (length(podatki_programi) == 3){ -rw1 <- c(-1) -com1 <- c("\\hline ") -print(xtable(skupaj_ure, - caption= "Povprečno število tedensko porabljenih ur za doktorski študij - po letnikih", - align=c("lp{10cm}ccc")), - caption.placement = "top", - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold) - -cas_df <- seznami_f2(cas_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{c}{\\textbf{Da}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\premalo}}}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{\\\\Ne,\\\\preveč}}}} & \\multicolumn{2}{c}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj - -print(xtable(cas_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"', - align=c("lp{8cm}ccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -# Izkljucen prikaz, prej je bil pogoj "2" - if (60 %in% podatki_programi){ - triletno_poProgramih_df <- seznami_f2(triletno_poProgramih_out, 0, 1) - if (nrow(triletno_poProgramih_df) > 0){ - prvi_letnik_vrstica <- data.frame(Program =triletno_poProgramih_df[1,1], letnik="prvi", a="/", a2="/", a3="/", a4="/", a5="/", a6="/", a7="/", a8="/", a9="/", a10="/", stringsAsFactors=F) - - triletno_poProgramih_df[2,] <- prvi_letnik_vrstica - triletno_poProgramih_df <- triletno_poProgramih_df[c(2,1),] - } - - rw1 <- c(0) - com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{Prekratko}} & \\multicolumn{2}{r}{\\textbf{Predolgo}} & \\multicolumn{2}{r}{\\textbf{Ne vem}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{\\\\Da,\\\\ravno prav}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo - # Ker bi bil izpis potem \hlineSkupaj - for (i in 1:nrow(triletno_poProgramih_df)){ -if (nchar(triletno_poProgramih_df$Program[i]) >= 10){ - triletno_poProgramih_df$Program[i] <- paste0(strtrim(triletno_poProgramih_df$Program[i], 10), ".") -} -} - print(xtable(triletno_poProgramih_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ocenjujete, da je triletno trajanje doktorskega študija ustrezno?"', - align=c("lp{4.5cm}ccccccccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - #tabular.environment = "longtable", - #floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -} - - -izbirni_predmeti_tabela(seznami_f2(izbirni_predmeti_po_vprasanjih[[1]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"') - -cat("\\newpage") -izbirni_predmeti_tabela(seznami_f2(izbirni_predmeti_po_vprasanjih[[2]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."') - -oblika_df <- seznami_f2(oblika_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{Predavanja}} & \\multicolumn{2}{r}{\\textbf{Konzultacije}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{\\\\Kombinacija\\\\obojega}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj -for (i in 1:nrow(oblika_df)){ - if (nchar(oblika_df$Program[i]) >= 10){ - oblika_df$Program[i] <- paste0(strtrim(oblika_df$Program[i], 10), ".") - } -} -print(xtable(oblika_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"', - align=c("lp{5.5cm}ccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -izbirni_predmeti_tabela(seznami_f2(izbirni_predmeti_po_vprasanjih[[3]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"') - - -izbirni_predmeti_tabela(seznami_f2(izbirni_predmeti_po_vprasanjih[[4]], 0, 1), 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"') - -cat('\\newpage') -raziskovalni_nacrt_df <- seznami_f2(izbirni_predmeti_po_vprasanjih[[5]], 0, 1) - - -odstotki_in_skupaj <- function(df){ - # df-ju dodamo odstotke - vrstica_skupaj <- c("Skupaj", "") - prvotna_dolzina <- length(df) - vrstniRed <- as.numeric() - for(i in 1:(prvotna_dolzina-2)){ - df[,prvotna_dolzina+i] <- formatC2(df[,i+2]/sum(df[,i+2])*100, digits=0, format='f') - vrstniRed <- c(vrstniRed, c(i+2,(i+prvotna_dolzina))) - } - for(i in 3:length(df)){ - vrstica_skupaj <- c(vrstica_skupaj, sum(as.numeric(df[,i]))) - } - - # df-ju dodamo vrstico skupaj - # Izklopljeno: - #df[nrow(df)+1,] <- vrstica_skupaj - # Preuredimo vrstni red df-ja - - df <- df[,c(1,2,vrstniRed)] - df[df=="NaN"] <- "." - #colnames(df) <- imenaStolpcev - return(df) -} -cat('\\newpage') - -nacin_df <- seznami_f2(nacin_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Mladi\\\\raziskovalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ml. raz.\\\\v gosp.}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\fin. sam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\delodajalec}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dr. štud\\\\drugi viri}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\") -#, "\\hline ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj -for (i in 1:nrow(nacin_df)){ -if (nchar(nacin_df$Program[i]) >= 10){ - nacin_df$Program[i] <- paste0(strtrim(nacin_df$Program[i], 10), ".") -} -} -print(xtable(nacin_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"', - align=c("lp{2.5cm}ccccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - -razlog_df <- seznami_f2(razlog_out, 0, 1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Akad.\\\\kariera}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Osebni\\\\razvoj}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Dobro\\\\imeti}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Koristno}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Brez\\\\zaposl.}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Napred.}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Drugo}}}} & -\\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} & -\\bfseries{n} & \\bfseries{\\%} \\\\ ") -#, "\\hline ") # Ce bi bil zadnji \\\\ brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \\Skupaj -for (i in 1:nrow(razlog_df)){ - if (nchar(razlog_df$Program[i]) >= 10){ - razlog_df$Program[i] <- paste0(strtrim(razlog_df$Program[i], 10), ".") - } -} - -print(xtable(razlog_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij?"', - align=c("llccccccccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -# Če bi se danes odločali o vpisu na doktorski študij - po programu - po letniku - -disertacija_letnik <- list() -disertacija_program <- list() -for(i in 1:length(odg_gledeProgram)){ # po letnikih - for (j in 1:length(odg_gledeProgram[[i]])){ # po programih - - # V bazi prvih letnikov so nekoliko drugacna imena stolpcev - if (i == 1){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q36")] - } else if (i == 2){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q37")] - } - if (nchar(unique(odg_gledeProgram[[i]][[j]]$program))>30){ - imeProg <- paste0(strtrim(unique(odg_gledeProgram[[i]][[j]]$program),30), ".") - } - else{ - imeProg <- unique(odg_gledeProgram[[i]][[j]]$program) - } - - disertacija_df <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - enako = length(izbirni_poProgramih[izbirni_poProgramih == 1]), - drugam = length(izbirni_poProgramih[izbirni_poProgramih == 2]), - nebi = length(izbirni_poProgramih[izbirni_poProgramih == 3]), - nevem = length(izbirni_poProgramih[izbirni_poProgramih == 4]), - stringsAsFactors = F) - - disertacija_program[[j]] <- disertacija_df - - - } - disertacija_letnik[[i]] <- do.call(rbind, disertacija_program) -} - -disertacija_df <- seznami_f2(disertacija_letnik[[i]],0,1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se odločil\\\\enako}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Bi se vpisal\\\\drugam}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Se ne bi odločil\\\\za dr. študij}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{\\\\Ne vem}}}} -& \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - -\\\\ \\hline -& & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\") -#, "\\hline ") # Ce bi bil zadnji hline brez presledka na koncu ne bi delalo -# Ker bi bil izpis potem \hlineSkupaj -for (i in 1:nrow(disertacija_df)){ -if (nchar(disertacija_df$Program[i]) >= 10){ - disertacija_df$Program[i] <- paste0(strtrim(disertacija_df$Program[i], 10), ".") -} -} -print(xtable(disertacija_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"', - align=c("lp{3.5cm}ccccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - - - -# Kam bi se vpisali? - po programih in po letnikih -# Izracuni za tabelo 'nacin predavanja': -disertacija_letnik <- list() -disertacija_program <- list() -# Izracuni za 'izbirni predmeti' po letniku in po programu: -# Vprasanja v istem vrstnem redu, kot so spodaj imena spremenljivk - -for(i in 1:length(odg_gledeProgram)){ # po letnikih - for (j in 1:length(odg_gledeProgram[[i]])){ # po programih - - # V bazi prvih letnikov so nekoliko drugacna imena stolpcev - if (i == 1){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q37")] - } else if (i == 2){ - izbirni_poProgramih <- odg_gledeProgram[[i]][[j]][c("Q38")] - } - if (nchar(unique(odg_gledeProgram[[i]][[j]]$program))>25){ - imeProg <- paste0(strtrim(unique(odg_gledeProgram[[i]][[j]]$program),25), ".") - } - else{ - imeProg <- unique(odg_gledeProgram[[i]][[j]]$program) - } - - disertacija_df <- data.frame(Program = imeProg, - Letnik = letnik_napisi[[i]], - drug = length(izbirni_poProgramih[izbirni_poProgramih == 1]), - vs = length(izbirni_poProgramih[izbirni_poProgramih == 2]), - tujino = length(izbirni_poProgramih[izbirni_poProgramih == 3]), - stringsAsFactors = F) - disertacija_program[[j]] <- disertacija_df - - - } - disertacija_letnik[[i]] <- do.call(rbind, disertacija_program) -} - - -disertacija_letnik <- do.call(rbind, disertacija_letnik) - -cat('\\newpage') -disertacija_df <- seznami_f2(disertacija_letnik,0,1) -rw1 <- c(0) -com1 <- c("\\hline \\bfseries{Program} & \\bfseries{Letnik} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{Na drugi\\\\program na UL}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{Na drugi VŠ\\\\zavod v RS}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[l]{V tujino}}}} & \\multicolumn{2}{r}{\\textbf{{\\shortstack[c]{Skupaj}}}} - \\\\ \\hline - & & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} & \\bfseries{n} & \\bfseries{\\%} \\\\ ") -for (i in 1:nrow(disertacija_df)){ -if (nchar(disertacija_df$Program[i]) >= 15){ - disertacija_df$Program[i] <- paste0(strtrim(disertacija_df$Program[i], 15), ".") -} -} -print(xtable(disertacija_df, - caption= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"', - align=c("lp{5cm}ccccccccc")), - caption.placement = "top", - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -} - -if (2 %in% podatki_letnik){ - ure_mesecno_po_prog_df <- list() - ure_mesecno_po_prog_df_out <- vector('list', 2) - mean_mesecne_ure <- as.numeric() - sd_mesecne_ure <- as.numeric() - sestevek_mesecne_ure <- as.numeric() - - crte_meseci <- list() - vprasanji_meseci <- c("Q40", "Q41") - napisa_meseci <- c('Frekvenčna porazdelitev odgovorov na vprašanje: "1. korak: Čas od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:"' ,'Frekvenčna porazdelitev odgovorov na vprašanje: "2. korak: Čas od soglasja senata/komisije fakultete do soglasja senata UL (zapišite podatek, če je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):"') - - for (i in 1:length(vprasanji_meseci)){ - stevec <- 0 - poLetniku_tedenske_ure <- as.numeric(veljavneEnote_trenutne[[2]][vprasanji_meseci[i]][veljavneEnote_trenutne[[2]][vprasanji_meseci[i]]>0]) - if (length(poLetniku_tedenske_ure) > 0){ - mean_mesecne_ure[i] <- formatC2(mean(poLetniku_tedenske_ure), digits = 0, format = 'f') - sd_mesecne_ure[i] <- formatC2(sd(poLetniku_tedenske_ure), digits = 0, format = 'f') - sestevek_mesecne_ure[i] <- formatC2(sum(poLetniku_tedenske_ure), digits = 0, format = 'f') - - - for(tip_prog in tip_programa_veljavni[[i]]$idprog_uq_veljavni){ - stevec <- stevec + 1 - ure_tedensko_po_prog <- as.numeric(veljavneEnote_trenutne[[2]][vprasanji_meseci[i]][veljavneEnote_trenutne[[2]][vprasanji_meseci[i]]>0 & veljavneEnote_trenutne[[2]]$idprog == tip_prog]) - ime_programa_ure <- tip_programa_veljavni[[i]]$naziv[stevec] - - if (length(ure_tedensko_po_prog) != 0){ - ure_tedensko_po_prog <- data.frame(table(ure_tedensko_po_prog), stringsAsFactors = F) - ure_mesecno_po_prog_df[[stevec]] <- cbind(rep(ime_programa_ure, nrow(ure_tedensko_po_prog)), c("2."), ure_tedensko_po_prog) - } - } - - ure_mesecno_po_prog_df_out[[i]] <- do.call(rbind, ure_mesecno_po_prog_df) - # Dodamo stolpec 'odstotki' - ure_mesecno_po_prog_df_out[[i]]$pct <- c(formatC2(((ure_mesecno_po_prog_df_out[[i]]$Freq / sum(as.numeric(ure_mesecno_po_prog_df_out[[i]]$Freq))) * 100),digits = 0, format = 'f')) - # Dodamo vrstico 'skupaj' - # Pomembno, ker, ima df, zaradi 'table', faktorje in rbind ne dela - ure_mesecno_po_prog_df_out[[i]] <- data.frame(lapply(ure_mesecno_po_prog_df_out[[i]], as.character), stringsAsFactors = F) - ure_mesecno_po_prog_df_out[[i]] <- rbind(ure_mesecno_po_prog_df_out[[i]], c("Skupaj", "", sestevek_mesecne_ure[i], sum(as.numeric(ure_mesecno_po_prog_df_out[[i]]$Freq)), 100)) - crte_meseci[[i]] <- c(-1, -1, 0, - nrow(ure_mesecno_po_prog_df_out[[i]])-1, - nrow(ure_mesecno_po_prog_df_out[[i]])) - #Dodamo vrstici 'Standardni odklon in Povprečje' - if (nrow(ure_mesecno_po_prog_df_out[[i]]) > 2){ - ure_mesecno_po_prog_df_out[[i]] <- rbind(ure_mesecno_po_prog_df_out[[i]], c("Povprečje", "", mean_mesecne_ure[i], ".", "."), c("Standardni odklon", "", sd_mesecne_ure[i], ".", ".")) - crte_meseci[[i]] <- c(-1, -1, 0, - nrow(ure_mesecno_po_prog_df_out[[i]])-3, - nrow(ure_mesecno_po_prog_df_out[[i]])-2, - nrow(ure_mesecno_po_prog_df_out[[i]])-2, - nrow(ure_mesecno_po_prog_df_out[[i]])) - - } - ure_mesecno_po_prog_df_out[[i]][ure_mesecno_po_prog_df_out[[i]] == "NaN"] <- "." - - colnames(ure_mesecno_po_prog_df_out[[i]]) <- c("Program", "Letnik", "Čas v mesecih", "n", "\\%") - } - } -} -@ -\newpage -<>= -# Opisne statistike za vse dejavnike urejene po povprecjih -if (1 %in% podatki_programi){ - - cat('\\clearpage') - cat('\\pagestyle{prvi}') - cat('\\section{Podrobna analiza: Prvi letnik}') - cat('\\subsection{Analiza dejavnikov}') - cat('V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so bile sicer vključene v agregatne analize že v poglavju 5 in 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.') - - rws3 <- seq(1, (nrow(poSklopih_urejena[[1]])-1), by = 2) - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - colnames(poSklopih[[1]]) <- c("Dejavniki", "n", "povprečje", "sd") - poSklopih[[1]][3][poSklopih[[1]][3] == "NaN"] <- "." - - print(xtable(poSklopih[[1]][-5], - digits=c(0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po povprečjih", - align = c("l", "p{12cm}", "c", "c", "c")), - - caption.placement="top", - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE, - table.placement= ("!ht"), - add.to.row = list(pos = list(-1, rws3), - command = c("\\hline","\\rowcolor[gray]{0.95}"))) - cat('\\newpage') - - - grafDejavnikov(poSklopih_graf[[1]], "prvi") - povzetek_kratek(1) - - - cat('\\clearpage') - print(xtable(obdaj_z_oklepaji_f(poSklopih_urejena[[1]],2,2,1, c(5:6)), - digits=c(0,0,0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih", - align = c("l", "p{8.2cm}", "C{0.8cm}", "C{1cm}", - "C{1cm}", "C{2.2cm}", "C{1cm}")), - - caption.placement="top", - sanitize.colnames.function = bold, - include.rownames = FALSE, - table.placement= ("!ht"), - sanitize.text.function = function(x){x}, - hline.after = c(-1, nrow(poSklopih_urejena[[1]])), - add.to.row = list(pos = list(-1, 0, 0, - mesta_addtorow[[1]][2], - mesta_addtorow[[1]][3], - mesta_addtorow[[1]][4], - mesta_addtorow[[1]][5], - d4_R2_output[[1]]), - command = c("\\hline", "\\hline", napisiSklopov_addtorow[[1]], "\\rowcolor[gray]{0.95}"))) - - cat('\\clearpage') - - - addtorow_frek <- list() - addtorow_frek$pos <- list(-1, -1, d4_R2_output[[1]]) - - #Dodamo multicolumns in črto nad njimi - addtorow_frek$command <- c("\\hline", paste0(paste0('& \\multicolumn{2}{c}{ \\textbf{', labT4, '}}', collapse=''), - - "\\\\ - \\hline - \\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% - - \\endfirsthead - - \\caption{Frekvenčna porazdelitev enot za dejavnike študijskega procesa po sklopih (nadaljevanje)} \\\\ \\hline - - & \\multicolumn{2}{c}{ \\textbf{\\makecell{Sploh\\\\se ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Popolnoma\\\\se\\\\strinjam}}} \\\\ \\hline - - \\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% \\\\ \\hline - \\endhead"), - - "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - addtorow2_frek <- list() - addtorow2_frek$pos <- list(0, - mesta_addtorow[[1]][2], - mesta_addtorow[[1]][3], - mesta_addtorow[[1]][4], - mesta_addtorow[[1]][5], - d4_R2_output[[1]]) - addtorow2_frek$command <- c(napisiSklopov_addtorow_frekvencna[[1]], "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - - cat(paste0('\\newpage \\begin{longtable}{p{5.5cm}cccccccccc} - \\caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\\\ ')) - cat(c("\\hline", addtorow_frek$command[2])) - - print(xtable(d4[[1]], - align=c("l", "p{5.5cm}", rep("c", 10)), - caption = paste0("Frekvenčna porazdelitev enot za dejavnike po sklopih"), - digits=0), - include.rownames=FALSE, - include.colnames=F, - only.contents = T, - sanitize.text.function = function (x){x}, - add.to.row = addtorow2_frek, - hline.after = NULL - ) - cat("\\hline \\end{longtable}") - cat("\\newpage") -} -@ - - - -<>= -# Izracuni odgovorov tipa - 4 (Da / Ne) -# Vprasanja tipa 4 - Q8, Q9, Q14, Q17, Q22, Q36a-Q36g - -odg.tip4.ls_output <- list() -odg.tip4.pie_ls_output <- list() - -for (i in podatki_programi[podatki_programi != 3]){ -vprZ.tip4 <- subset(pomoznaT[[i]], pomoznaT[[i]]$tip==4) - -odg.tip4.ls <- list() -odg.tip4.pie_ls <- list() - -for (j in 1:(nrow(vprZ.tip4))){ - kratkoIme.tip4 <- vprZ.tip4$kratkoIme[[j]] - dolgoIme.tip4 <- vprZ.tip4$dolgoIme[[j]] - odg.tip4 <- veljavneEnote_trenutne[[i]][kratkoIme.tip4] - - # Zajamemo in prestejemo samo veljavne odgovore, torej da in ne - odg.Da.len <- length(odg.tip4[odg.tip4==1]) - odg.Ne.len <- length(odg.tip4[odg.tip4==2]) - odg.Sk.len <- odg.Da.len + odg.Ne.len - - # Izracun odstotkov. - odg.Da.pct <- (odg.Da.len / odg.Sk.len) * 100 - odg.Ne.pct <- (odg.Ne.len / odg.Sk.len) * 100 - odg.Sk.pct <- (odg.Da.pct + odg.Ne.pct) - - # Podatke shranjujemo v seznam - odg.tip4.ls[[j]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, odg.Da.len, - odg.Da.pct, odg.Ne.len, odg.Ne.pct, - odg.Sk.len, odg.Sk.pct) - - odg.tip4.pie_ls[[j]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, - rbind(odg.Ne.len, odg.Da.len), - rbind(odg.Ne.pct, odg.Da.pct), c("Ne", "Da")) - - -} -odg.tip4.ls <- do.call(rbind, odg.tip4.ls) -odg.tip4.pie_ls <- do.call(rbind, odg.tip4.pie_ls) -# -11 je umetno stevilo, ki ga pripisemo zaradi zaokrozevanja - -odg.tip4.ls[odg.tip4.ls == "NaN"] <- -11 -odg.tip4.ls[odg.tip4.ls == "Inf"] <- -11 -odg.tip4.ls[is.na(odg.tip4.ls)] <- -11 - -odg.tip4.pie_ls[odg.tip4.pie_ls == "NaN"] <- -11 -odg.tip4.pie_ls[odg.tip4.pie_ls == "Inf"] <- -11 -odg.tip4.pie_ls[is.na(odg.tip4.pie_ls)] <- -11 -# Odstranimo kratko ime in seznam spremenimo v df, ki je bolj primeren -# za izpis tabel z 'xtable' -odg.tip4.df <- data.frame(odg.tip4.ls, stringsAsFactors = F)[,-1] - -rownames(odg.tip4.pie_ls) <- NULL -odg.tip4.pie_df <- data.frame(odg.tip4.pie_ls, stringsAsFactors = F) - - -# 3, 5, 7 -# Pomembno, da pred tem elemente pretvorimo iz stringa v numeric -# Drugace zaokrozevanje ne dela -for (k in c(3,5,7)){ -odg.tip4.df[k] <- sapply(odg.tip4.df[[k]], function(x){formatC2(as.numeric(x), digits=1, format = 'f')}) -} - - -odg.tip4.pie_df[[4]] <- sapply(odg.tip4.pie_df[[4]], function(x){formatC2(as.numeric(x), digits=0, format = 'f')}) -# Odstotkom, ki jih bomo izpisali v piechartu dodamo znak % -odg.tip4.pie_df[[6]] <- paste0(odg.tip4.pie_df[[4]], "%") -odg.tip4.pie_df[[7]] <- paste0(odg.tip4.pie_df[[4]], "\\%") - -# -11 nadomestimo z (.) -odg.tip4.df[odg.tip4.df == "-11.0"] <- "." -colnames(odg.tip4.df) <- c("Dejavnik", "Da", "\\%", "Ne", "\\%", "Skupaj", "\\%") - -odg.tip4.ls_output[[i]] <- odg.tip4.df -odg.tip4.pie_ls_output[[i]] <- odg.tip4.pie_df -} - -@ - -<>= - - -odg.tip5_ls_output <- list() -vsiNapisi.tip5 <- list(c("Ne, namenim ga premalo, želel/a bi si več časa nameniti za svoj doktorski študij in raziskovalno delo", - "Ne, namenim ga preveč, želel/a bi si manj časa nameniti za svoj doktorski študij in raziskovalno delo", - "Da, namenim ravno prav časa."), - c("ne, prekratko", "ne, predolgo", "ne vem / ne morem oceniti", - "da, ravno prav"), - c("predavanja", "konzultacije", "kombinacija obojega"), - c("Sem mladi raziskovalec / mlada raziskovalka", - "Sem mladi raziskovalec/ mlada raziskovalka v gospodarstvu,", - "Sem doktorski študent/doktorska študentka, ki se financira sam/a,", - "Sem doktorski študent/doktorska študentka, ki mi šolnino plačuje delodajalec,", - "Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"), - c(" Študij sem izbral/a, ker želim imeti akademsko kariero, "), - c(" Študij sem izbral/a zaradi želje po osebnem razvoju in napredku, "), c(" Študij sem izbral/a, ker menim, da je dobro imeti doktorsko izobrazbo, "), - c(" Študij sem izbral/a, ker menim, da mi bo pridobljeno znanje koristilo na mojem delovnem mestu, "), c(" Študij sem izbral/a, ker nisem dobil/a zaposlitve, "), c("Študij sem izbral/a, da bi lahko napredoval/a na delovnem mestu."), c("Drugo:"), - c("bi se odločil/a enako", "bi se vpisal/a drugam", - "se ne bi odločil/a za doktorski študij", "ne vem"), - c("na drugi program na UL", "na drugi visokošolski zavod v RS", - "v tujino")) - -for (i in 1:length(podatki_trenutni)){ -vprZ.tip5 <- subset(pomoznaT[[i]], pomoznaT[[i]]$tip==5) -odg.tip5_ls.temp <- list() - - -if (i==1){ - Q36.n <- veljavneEnote_trenutne[[i]][c("Q35a", "Q35b", "Q35c", "Q35d", "Q35e", "Q35f", "Q35g")] - Q36.n <- length(Q36.n[Q36.n > 0]) - vsiNapisi.t5_2 <- vsiNapisi.tip5[-2] - -}else if (i==2){ - Q36.n <- veljavneEnote_trenutne[[i]][c("Q36a", "Q36b", "Q36c", "Q36d", "Q36e", "Q36f", "Q36g")] - Q36.n <- length(Q36.n[Q36.n > 0]) - vsiNapisi.t5_2 <- vsiNapisi.tip5 -} - - -for (j in 1:nrow(vprZ.tip5)){ - kratkoIme.tip5 <- vprZ.tip5$kratkoIme[j] - dolgoIme.tip5 <- vprZ.tip5$dolgoIme[j] - odg.tip5 <- veljavneEnote_trenutne[[i]][kratkoIme.tip5] - odg.tip5 <- as.numeric(odg.tip5[odg.tip5>0]) - odg.tip5.sk <- length(odg.tip5) - - # Za odgovore Q36: ZAKAJ? Pri ostalih izracunavamo po posameznem vprasanju - # Za vecjo jasnost poglej: vprZ.tip5 - # Tu jih sestejemo - if(i == 1){ - if (j>3 & j<11){ - odg.tip5.sk <- Q36.n - } - } - else if (i == 2){ - if (j>4 & j<12){ - odg.tip5.sk <- Q36.n - } - } - - mozniOdg.tip5 <- c(1:length(vsiNapisi.t5_2[[j]])) - tip5_df <- data.frame(mozniOdg.tip5, vsiNapisi.t5_2[[j]], stringsAsFactors = F) - - - odg.tip5.len <- list() - odg.tip5.pct <- list() - - for(k in 1:length(vsiNapisi.t5_2[[j]])){ - odg.tip5.len[[k]] <- length(odg.tip5[odg.tip5 == k]) - odg.tip5.pct[[k]] <- (odg.tip5.len[[k]]/odg.tip5.sk)*100 - } - - tip5_df$n <- as.numeric(odg.tip5.len) - # Zaradi vprasanja Q36 moramo dodati tudi odstotke, ki jih nismo okrajsali - # saj je v nasprotnem primeru sestevek lahko razlicen od nic npr. 100.1 - tip5_df$pct <- formatC2(as.numeric(odg.tip5.pct), digits = 0, format = "f") - tip5_df$pct_temp <- as.numeric(odg.tip5.pct) - - if(i == 1){ - if (j<=3 | j>=11){ - tip5_df[nrow(tip5_df)+1, ] <- c("", "Skupaj", sum(tip5_df$n), - formatC2(sum(as.numeric(odg.tip5.pct)), - digits = 0, format = "f"), "")} - }else if (i == 2){ - if (j<=4 | j >=12){ - tip5_df[nrow(tip5_df)+1, ] <- c("", "Skupaj", sum(tip5_df$n), - formatC2(sum(as.numeric(odg.tip5.pct)), - digits = 0, format = "f"), "") - # Za odgovore Q36, dodamo vrstico na drugacen nacin, saj je tu 6 - # odg., vsak v svoji spremenljivki, pri drugih vprasanjih pa je - # ena spremenljivka in vec odgovorov. - } - } - odg.tip5_ls.temp[[j]] <- tip5_df - } - - -odg.tip5_ls <- do.call(rbind, odg.tip5_ls.temp) -odg.tip5_ls[odg.tip5_ls == "NaN"] <- "0.0" - -# Odstranimo prvi stolpec (mozniOdg.tip5) -# in stolpec z neokrajsanimi odstotki -odg.tip5_ls <- odg.tip5_ls[, -c(1,5)] -names(odg.tip5_ls) <- c("Dejavniki", "n", "\\%") - -odg.tip5_ls_output[[i]] <- odg.tip5_ls -} -@ - - -<>= -odg.tip5_f <- function(df, subsection, cpt_tip5){ - hlines <- c(-1, -1, 0, nrow(df)-1, nrow(df)) - if (sum(as.numeric(df$n))!= 0){ - cat(paste0('\\subsubsection{', subsection, '}')) - print(xtable(df, - align=c("p", "p{13.9cm}", "c", "c"), - digits=c(0,0,0,1), - caption = cpt_tip5), - caption.placement = "top", - sanitize.colnames.function = bold, - include.rownames = F, - hline.after = hlines) - }else{cat(paste0('\\subsubsection{', subsection, '} - Študenti na to vprašanje niso podali odgovorov.'))} -} -# Te tabele nimajo vrednosti 'skupaj' in za to pred to vrstico ne damo črte -odg.tip5_f_2 <- function(df, cpt_tip5, subsection){ - hlines <- c(-1, -1, 0, nrow(df)) - if (sum(as.numeric(df$n))!= 0){ - cat(paste0('\\subsubsection{', subsection, '}')) - print(xtable(df, - align=c("p", "p{13.9cm}", "c", "c"), - digits=c(0,0,0,1), - caption = cpt_tip5), - caption.placement = "top", - sanitize.colnames.function = bold, - include.rownames = F, - hline.after = hlines) - }else{cat(paste0('\\subsubsection{', subsection, '} - Študenti na to vprašanje niso podali odgovorov.'))} -} - -# Za vprasanja Q36a - Q36g funkcijo nekoliko prilagodimo -odg.tip5.Q36_f <- function(df, cpt_tip5){ - cat(paste0('\\subsubsection{', cpt_tip5, '}')) - hlines <- c(-1, -1, 0, nrow(df)) - print(xtable(df, - align=c("p", "p{14.9cm}", "c"), - digits=c(0,0,0), - caption=cpt_tip5), - caption.placement = "top", - sanitize.colnames.function = bold, - include.rownames = F, - hline.after = hlines) -} - - -tabele_daNe <- function(first_colname = "", letnik, x){ - -dat2_da <- c("Da", odg.tip4.ls_output[[letnik]][x,-1][1], formatC2(as.numeric(odg.tip4.ls_output[[letnik]][x,-1][2]), digits=0, format='f')) -dat2_ne <- c("Ne", odg.tip4.ls_output[[letnik]][x,-1][3], formatC2(as.numeric(odg.tip4.ls_output[[letnik]][x,-1][4]), digits=0, format='f')) -dat2_skupaj <- c("Skupaj", odg.tip4.ls_output[[letnik]][x,-1][5], formatC2(as.numeric(odg.tip4.ls_output[[letnik]][x,-1][6]), digits=0, format='f')) -dat2 <- rbind(dat2_da, dat2_ne, dat2_skupaj) -dat2 <- data.frame(dat2, stringsAsFactors = F) -colnames(dat2) <- c("", "n", "\\%") - -hlines <- c(-1, -1, 0, nrow(dat2)-1, nrow(dat2)) - -print(xtable(dat2, - caption = paste0('Frekvenčna porazdelitev odgovorov na vprašanje: "', odg.tip4.ls_output[[letnik]][x,1], '"'), - align= c("l", "l", "c", "c")), - include.rownames = F, - caption.placement = 'top', - sanitize.colnames.function = bold, - sanitize.colnames = function(x){x}, - hline.after = hlines) - - # 75+ je velika večina - # 55+ je večina - # 45-55 izrazimo v odstotkih - if(dat2[2,3] >= 75){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je velika večina študentov (', dat2[2,3], ' \\%) odgovorila z "Ne", odgovor "Da" pa je podalo ',dat2[1,3], ' \\% študentov.')) - }else if(dat2[1,3] >= 75){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je velika večina študentov (', dat2[1,3], ' \\%) odgovorila z "Da", odgovor "Ne" pa je podalo ',dat2[2,3], ' \\% študentov.')) }else if(dat2[2,3] >= 55){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je večina (', dat2[2,3], ' \\%) študentov odgovorila z "Ne", odgovor "Da" pa je podalo ',dat2[1,3], ' \\% študentov.')) }else if(dat2[1,3] >= 55){ - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je večina (', dat2[1,3], ' \\%) študentov odgovorila z "Da", odgovor "Ne" pa je podalo ',dat2[2,3], ' \\% študentov.')) - }else{ - # Npr. Velika večina (%), je odgovorila, da v letošnjem letu... - cat(paste0('Na vprašanje "', odg.tip4.ls_output[[letnik]][x,1], '" je z "Da" odgovorilo ', dat2[1,3], ' \\% študentov, odgovor "Ne" pa je podalo ',dat2[1,3], ' \\% študentov.')) - - } -} - -# z add to row dolocimo multicolumn - po Sklopih -addtorow_sklopi <- list() -addtorow_sklopi$pos <- list(-1) -addtorow_sklopi$command <- c(paste0("\\hline \\hline ", paste0('&&&&& \\textbf{Povprečje}', collapse=''), "\\\\")) - -if (1 %in% podatki_programi){ - cat('\\clearpage') - cat('\\clearpage') - cat('\\subsection{Podrobna analiza vseh spremenljivk po sklopih} - V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavji 4 in 5), vendar gre vsakič za nekoliko drugačen nivo analize.') - - cat('\\subsubsection{Infrastruktura in urniki}') - - # V vrstaProg so shranjene stopnje prog. - # length(vrstaProg)-2, zato, da odstejemo prvega in zadnjega (skupaj) - # ki imata drugacno poravnavo - # digits: - # length(vrstaProg)+1, zato, ker poleg povprecij tudi sd zaokrozimo na eno dec. - # sanitize: pomembno, da odebeli glavo - - - - # Dolocimo podatke za tabelo - #podatki_trenutni - # Dolocimo dejavnike in caption za izris grafov - dejavniki <- rbind(prazen_df_output[[1]]$Q5a, prazen_df_output[[1]]$Q5b, - prazen_df_output[[1]]$Q5c,prazen_df_output[[1]]$Q5d, - prazen_df_output[[1]]$Q5e, prazen_df_output[[1]]$Q5f) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[1]][1:6,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Infrastruktura in urniki - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - graf_program_f(dejavniki, "Infrastruktura in urniki ", 1, 1) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\newpage') - cat('\\subsubsection{Število tedensko porabljenih ur za doktorski študij}') - - if (length(h2[[1]]) > 1){ - colnames(h2[[1]]) <- c("Število ur", "n", "\\%") - hlines_ure <- c(-1, -1, 0, nrow(h2[[1]])) - align_ure <- c("l", "p{3cm}", "p{1cm}", "p{1cm}") - if (nrow(h2[[1]])>1){ - colnames(h2[[1]]) <- c("","Število ur", "n", "\\%") - cat(paste0("Študenti so v povprečju tedensko za svoj doktorski študij porabili \\textbf{", mean.odg6[[1]], " ur}. Standardni odklon znaša \\textbf{", sd.odg6[[1]], "} ur.")) - hlines_ure <- c(-1, -1, 0, nrow(h2[[1]])-3, nrow(h2[[1]])-2, nrow(h2[[1]])-2, nrow(h2[[1]])) - align_ure <- c("p","l", "p{3cm}", "p{1cm}", "p{1cm}") - - } - - print(xtable(h2[[1]], - caption='Frekvenčna porazdelitev odgovorov na vprašanje: "Koliko časa povprečno tedensko porabite za svoj doktorski študij (vštejte vse obveznosti)?"', - align= align_ure), - caption.placement = 'top', - include.rownames =F, - sanitize.colnames.function = bold, - hline.after = hlines_ure) - }else{ - cat('Študenti na to vprašanje niso podali odgovorov.') - } - - df <- odg.tip5_ls_output[[1]][c(1:4),] - df <- arrange(df, Dejavniki) - odg.tip5_f(df, subsection = "Ustreznost časa za doktorski študij", cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"') - - odprtiOdg_f(1, "Q8", 'Odgovori na odprto vprašanje: "Navedite zakaj."') - - - - cat("\\clearpage \\subsubsection{Izbira predmeta na drugih programih UL}") - - - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"', 1, 1) - - - odprtiOdg_f(1, "Q10", 'Odgovori na odprto vprašanje: "Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?"') - - odprtiOdg_f(1, "Q11", 'Odgovori na odprto vprašanje: "Kateri predmet ste izbrali?"') - - cat("\\subsubsection{Izbira predmeta izven UL}") - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."', 1, 2) - - - odprtiOdg_f(1, "Q13", 'Odgovori na odprto vprašanje: "Na kateri drugi univerzi ste izbrali izbirni predmet?"') - - odprtiOdg_f(1, "Q14", 'Odgovori na odprto vprašanje: "Kateri predmet ste izbrali?"') - - cat('\\clearpage') - cat('\\subsubsection{Zadovoljstvo z izvajanjem programov}') - - dejavniki <- rbind(prazen_df_output[[1]]$Q15a, prazen_df_output[[1]]$Q15b, prazen_df_output[[1]]$Q15c, prazen_df_output[[1]]$Q15d, prazen_df_output[[1]]$Q15e) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[1]][7:11,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - graf_program_f(dejavniki, "Zadovoljstvo z izvajanjem programov", 2, 1) - - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat("\\newpage") - df <- odg.tip5_ls_output[[1]][c(5:8),] - df <- arrange(df, Dejavniki) - odg.tip5_f(df, subsection = "Primerna oblika izvedbe predmetov", cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"') - - odprtiOdg_f(1, "Q17", 'Odgovori na odprto vprašanje: "Navedite, zakaj:"') - odprtiOdg_f(1, "Q18", 'Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"') - - - cat('\\newpage') - - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"',1, 3) - - - odprtiOdg_f(1, "Q20", 'Odgovori na odprto vprašanje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"') - - - odprtiOdg_f(1, "Q21", 'Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"') - - cat('\\newpage') - - - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"', 1, 4) - - odprtiOdg_f(1, "Q23", 'Odgovori na odprto vprašanje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"') - - - cat('\\newpage') - - odprtiOdg_f(1, "Q24", 'Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?"') - - cat('\\clearpage') - cat('\\subsubsection{Pomoč in podpora mentorja}') - - - dejavniki <- rbind(prazen_df_output[[1]]$Q25a, prazen_df_output[[1]]$Q25b, prazen_df_output[[1]]$Q25c, prazen_df_output[[1]]$Q25d, prazen_df_output[[1]]$Q25e, prazen_df_output[[1]]$Q25f) -if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[1]][12:17,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Pomoč in podpora mentorja - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - graf_program_f(dejavniki, "Pomoč in podpora mentorja", 3, 1) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\newpage') - - - odprtiOdg_f(1, "Q26", 'Odgovori na odprto vprašanje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"') - - cat("\\subsubsection{Doktorska disertacija}") - - - - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste pred vpisom na doktorski študij že imeli idejo/raziskovalni načrt za doktorsko disertacijo:"', 1, 5) - - cat('\\newpage') - - - odprtiOdg_f(1, "Q28", 'Odgovori na odprto vprašanje: "Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?"') - - cat('\\clearpage') - cat('\\subsubsection{Del študija in ostale aktivnosti v tujini}') - - rws3 <- seq(1, (nrow(d3.1)-1), by = 2) - - dejavniki <- rbind(prazen_df_output[[1]]$Q29a, prazen_df_output[[1]]$Q29b, prazen_df_output[[1]]$Q29c, prazen_df_output[[1]]$Q29d) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[1]][18:21,] - - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - graf_program_f(dejavniki, "Del študija in ostale aktivnosti v tujini", 4, 1) - - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - cat('\\newpage') - - odprtiOdg_f(1, "Q30", 'Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?"') - - - cat('\\clearpage') - cat('\\subsubsection{Svetovalna pomoč študentom}') - - dejavniki <- rbind(prazen_df_output[[1]]$Q31a, prazen_df_output[[1]]$Q31b, prazen_df_output[[1]]$Q31c, prazen_df_output[[1]]$Q31d) - d3.1 <- sklopi_po_programih_oba[[1]][22:25,] - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[1]])))), - caption = "Svetovalna pomoč študentom - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[1]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - - graf_program_f(dejavniki, "Svetovalna pomoč študentom", 5, 1) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\newpage') - - - odprtiOdg_f(1, "Q32", 'Odgovori na odprto vprašanje: "Vaši predlogi glede delovanja referata in svetovanja študentom."') - odprtiOdg_f(1, "Q33", 'Odgovori na odprto vprašanje: "Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali je prvo leto študija izpolnilo vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"') - - cat('\\newpage') - - df <- odg.tip5_ls_output[[1]][c(9:14),] - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"', subsection="Način študija") - - odprtiOdg_f(1, "Q34_5_text", 'Odgovori na odprto vprašanje: "Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"', 1) - #Q36a - Q36f - - df <- odg.tip5_ls_output[[1]][c(15:21),] - odg.tip5_f_2(df, cpt_tip5= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij? Možnih je več odgovorov."', subsection="Razlog študija") - - odprtiOdg_f(1, "Q35g_text", 'Odgovori na odprto vprašanje: "Drugo:"') - - # Q11; predavanja, konzultacije, kombinacije obojega - - df <- odg.tip5_ls_output[[1]][c(22:26),] - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: Če bi se danes odločali o vpisu na doktorski študij:"', subsection="Odločitev o vpisu") - - cat("\\clearpage") - df <- odg.tip5_ls_output[[1]][c(27:30),] - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"', subsection="Alternativni vpis") - - - cat("\\subsubsection{Dodatni komentarji študentov}") - odprtiOdg_f(1, "Q38", 'Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj, kar ni bilo zajeto v anketi?"') -} -@ - -<>= -# Drugi letnik -# Opisne statistike za vse dejavnike urejene po povprecjih -if (2 %in% podatki_programi){ - - cat('\\newpage') - cat('\\pagestyle{drugi}') - cat('\\section{Podrobna analiza: Drugi letnik}') - cat('\\subsection{Analiza dejavnikov}') - cat('V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so bile sicer vključene v agregatne analize že v poglavju 5 in 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.') - - rws3 <- seq(1, (nrow(poSklopih[[2]])-1), by = 2) - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - colnames(poSklopih[[2]]) <- c("Dejavniki", "n", "povprečje", "sd") - poSklopih[[2]][3][poSklopih[[2]][3] == "NaN"] <- "." - - print(xtable(poSklopih[[2]][-5], - digits=c(0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po povprečjih", - align = c("l", "p{12cm}", "c", "c", "c")), - - caption.placement="top", - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE, - table.placement= ("!ht"), - add.to.row = list(pos = list(-1, rws3), - command = c("\\hline","\\rowcolor[gray]{0.95}"))) - cat('\\newpage') - - grafDejavnikov(poSklopih_graf[[2]], "drugi") - povzetek_kratek(2) - - - cat('\\newpage') - print(xtable(obdaj_z_oklepaji_f(poSklopih_urejena[[2]],2,2,1, c(5:6)), - digits=c(0,0,0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih", - align = c("l", "p{8.2cm}", "C{0.8cm}", "C{1cm}", - "C{1cm}", "C{2.2cm}", "C{1cm}")), - - caption.placement="top", - sanitize.colnames.function = bold, - include.rownames = FALSE, - table.placement= ("!ht"), - sanitize.text.function = function(x){x}, - hline.after = c(-1, nrow(poSklopih_urejena[[2]])), - add.to.row = list(pos = list(-1, 0, 0, - mesta_addtorow[[2]][2], - mesta_addtorow[[2]][3], - mesta_addtorow[[2]][4], - mesta_addtorow[[2]][5], - d4_R2_output[[2]]), - command = c("\\hline", "\\hline", napisiSklopov_addtorow[[2]], - "\\rowcolor[gray]{0.95}"))) - - ## Drugi letnik - - addtorow2_frek <- list() - addtorow2_frek$pos <- list(0, - mesta_addtorow[[2]][2], - mesta_addtorow[[2]][3], - mesta_addtorow[[2]][4], - mesta_addtorow[[2]][5], - d4_R2_output[[2]]) - addtorow2_frek$command <- c(napisiSklopov_addtorow_frekvencna[[2]], "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - cat('\\newpage') - - cat(paste0('\\begin{longtable}{p{5.5cm}cccccccccc} - \\caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\\\ ')) - cat(c("\\hline", addtorow_frek$command[2])) - - print(xtable(d4[[2]], - align=c("l", "p{5.5cm}", rep("c", 10)), - caption = paste0("Frekvenčna porazdelitev enot za dejavnike po sklopih"), - digits=0), - include.rownames=FALSE, - include.colnames=F, - only.contents = T, - sanitize.text.function = function (x){x}, - add.to.row = addtorow2_frek, - hline.after = NULL - ) - cat("\\hline \\end{longtable} \\newpage") - - cat('\\subsection{Podrobna analiza vseh spremenljivk po sklopih} V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavji 4 in 5), vendar gre vsakič za nekoliko drugačen nivo analize.') - - cat("\\subsubsection{Infrastruktura in urniki}") - - ################################## - #### Peto poglavje - drugi letnik# - ################################## - - # Dolocimo dejavnike in caption za izris grafov - - dejavniki <- rbind(prazen_df_output[[2]]$Q5a, prazen_df_output[[2]]$Q5b, - prazen_df_output[[2]]$Q5c,prazen_df_output[[2]]$Q5d, - prazen_df_output[[2]]$Q5e, prazen_df_output[[2]]$Q5f) - - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - d3.1 <- sklopi_po_programih_oba[[2]][1:6,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Infrastruktura in urniki - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - graf_program_f(dejavniki, "Infrastruktura in urniki ", 1, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - - cat('\\newpage') - cat('\\subsubsection{Število tedensko porabljenih ur za doktorski študij}') - - if (length(h2[[2]]) > 1){ - colnames(h2[[2]]) <- c("Število ur", "n", "\\%") - hlines_ure <- c(-1, -1, 0, nrow(h2[[2]])) - align_ure <- c("l", "p{3cm}", "p{1cm}", "p{1cm}") - if (nrow(h2[[2]])>1){ - colnames(h2[[2]]) <- c("","Število ur", "n", "\\%") - cat(paste0("Študenti so v povprečju tedensko za svoj doktorski študij porabili \\textbf{", mean.odg6[[2]], " ur}. Standardni odklon znaša \\textbf{", sd.odg6[[2]], "} ur.")) - hlines_ure <- c(-1, -1, 0, nrow(h2[[2]])-3, nrow(h2[[2]])-2, nrow(h2[[2]])-2, nrow(h2[[2]])) - align_ure <- c("p","l", "p{3cm}", "p{1cm}", "p{1cm}") - - } - - print(xtable(h2[[2]], - caption='Frekvenčna porazdelitev odgovorov na vprašanje: "Koliko časa povprečno tedensko porabite za svoj doktorski študij (vštejte vse obveznosti)?"', - align= align_ure), - caption.placement = 'top', - include.rownames =F, - sanitize.colnames.function = bold, - hline.after = hlines_ure) - }else{ - cat('Študenti na to vprašanje niso podali odgovorov.') - } - #################### - - df <- odg.tip5_ls_output[[2]][c(1:4),] - df <- arrange(df, Dejavniki) - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"', subsection= "Ustreznost časa za doktorski študij") - - df <- odg.tip5_ls_output[[2]][c(5:9),] - df <- arrange(df, Dejavniki) - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ocenjujete, da je triletno trajanje doktorskega študija ustrezno?"', subsection= "Ustreznost trajanja doktorskega študija") - - odprtiOdg_f(2, "Q9", 'Odgovori na odprto vprašanje: "Navedite zakaj. "') - - cat("\\clearpage \\subsubsection{Izbira predmeta na drugih programih UL}") - - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "V 2. letniku sem si izbral/a izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"', 2,1) - - - odprtiOdg_f(2, "Q11", 'Odgovori na odprto vprašanje: "Iz katerega drugega doktorskega študijskega programa UL ste si izbrali izbirni predmet?"') - - - odprtiOdg_f(2, "Q12", 'Odgovori na odprto vprašanje: "Kateri predmet ste izbrali?"') - - cat("\\subsubsection{Izbira predmeta izven UL}") - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "V 2. letniku sem si izbral/a izbirni predmet na drugi domači ali tuji univerzi."', 2, 2) - - - odprtiOdg_f(2, "Q14", 'Odgovori na odprto vprašanje: "Na kateri drugi univerzi ste izbrali izbirni predmet?"') - - odprtiOdg_f(2, "Q15", 'Odgovori na odprto vprašanje: "Kateri predmet ste izbrali?"') - - cat('\\newpage') - # Drugi letnik - cat("\\subsubsection{Zadovoljstvo z izvajanjem programov}") - dejavniki <- rbind(prazen_df_output[[2]]$Q16a, prazen_df_output[[2]]$Q16b, prazen_df_output[[2]]$Q16c, prazen_df_output[[2]]$Q16d, prazen_df_output[[2]]$Q16e) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[2]][7:11,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - - - graf_program_f(dejavniki, "Zadovoljstvo z izvajanjem programov", 2, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - - cat('\\newpage') - df <- odg.tip5_ls_output[[2]][c(10:13),] - odg.tip5_f(df, cpt_tip5 = c('Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša?"'), subsection= "Primerna oblika izvedbe predmetov") - odprtiOdg_f(2, "Q18", 'Odgovori na odprto vprašanje: "Navedite zakaj: "') - - - odprtiOdg_f(2, "Q19", 'Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"') - - cat('\\clearpage') - - cat("\\subsubsection{Temeljni/obvezni izbirni predmeti}") - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v 2. letniku posamezne temeljne predmete?"',2,3) - - - odprtiOdg_f(2, "Q21", 'Odgovori na odprto vprašanje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"') - odprtiOdg_f(2, "Q22", 'Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"') - - cat('\\newpage') - cat("\\subsubsection{Izbirni predmeti}") - tabele_daNe('Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"', 2, 4) - - odprtiOdg_f(2, "Q24", 'Odgovori na odprto vprašanje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"') - odprtiOdg_f(2, "Q25", 'Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?"') - - cat(' - \\clearpage - \\subsubsection{Pomoč in podpora mentorja} - ') - dejavniki <- rbind(prazen_df_output[[2]]$Q26a, prazen_df_output[[2]]$Q26b, prazen_df_output[[2]]$Q26c, prazen_df_output[[2]]$Q26d, prazen_df_output[[2]]$Q26e, prazen_df_output[[2]]$Q26f) - - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - d3.1 <- sklopi_po_programih_oba[[2]][12:17,] - - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Pomoč in podpora mentorja - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - graf_program_f(dejavniki, "Pomoč in podpora mentorja", 3, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - - cat('\\newpage') - - odprtiOdg_f(2, "Q27", 'Odgovori na odprto vprašanje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"') - - odprtiOdg_f(2, "Q28", 'Odgovori na odprto vprašanje: "Kakšne so vaše izkušnje s prijavo dispozicije doktorske naloge?"') - - cat('\\newpage') - odprtiOdg_f(2, "Q29", 'Odgovori na odprto vprašanje: "Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?"') - - - cat(' - \\clearpage - \\subsubsection{Del študija in ostale aktivnosti v tujini} - ') - rws3 <- seq(1, (nrow(d3.1)-1), by = 2) - col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - - dejavniki <- rbind(prazen_df_output[[2]]$Q30a, prazen_df_output[[2]]$Q30b, prazen_df_output[[2]]$Q30c, prazen_df_output[[2]]$Q30d) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[2]][18:21,] - - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - - - graf_program_f(dejavniki, "Del študija in ostale aktivnosti v tujini", 4, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - cat('\\clearpage') - - odprtiOdg_f(2, "Q31", 'Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?"') - - cat(' - \\clearpage - \\subsubsection{Svetovalna pomoč študentom} - ') - - dejavniki <- rbind(prazen_df_output[[2]]$Q32a, prazen_df_output[[2]]$Q32b, prazen_df_output[[2]]$Q32c, prazen_df_output[[2]]$Q32d) - if(length(dejavniki$odgMeanSkupaj[!is.nan(dejavniki$odgMeanSkupaj)]) > 0){ - - d3.1 <- sklopi_po_programih_oba[[2]][22:25,] - print(xtable(d3.1, - digits=c(0,0,0,0,0,0, rep(1, (length(vrstaProg_output[[2]])))), - caption = "Svetovalna pomoč študentom - dejavniki (opisne statistike)", - align = c("l", "p{7cm}", "|c", "c", - "c", "c", "|c", - rep("c", (length(vrstaProg_output[[2]])-1) ))), - caption.placement="top", - add.to.row=addtorow_sklopi, - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE) - - graf_program_f(dejavniki, "Svetovalna pomoč študentom", 5, 2) - }else{cat("Študenti na to vprašanje niso podali odgovorov.")} - - cat('\\clearpage') - - odprtiOdg_f(2, "Q33", 'Odgovori na odprto vprašanje: "Vaši predlogi glede delovanja referata in svetovanja študentom."') - odprtiOdg_f(2, "Q34", 'Odgovori na odprto vprašanje: "Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali sta prvi dve leti študija izpolnili vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"') - - df <- odg.tip5_ls_output[[2]][c(14:19),] - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"', subsection = "Način študija") - cat("\\newpage") - odprtiOdg_f(2, "Q35_5_text", 'Odgovori na odprto vprašanje: "Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"') - - df <- odg.tip5_ls_output[[2]][c(20:26),] - odg.tip5_f_2(df, cpt_tip5= 'Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij? Možnih je več odgovorov."', subsection="Razlog študija") - odprtiOdg_f(2, "Q36g_text", 'Odgovori na odprto vprašanje: "Drugo:"') - - df <- odg.tip5_ls_output[[2]][c(27:31),] - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"', subsection="Odločitev o vpisu") - - - df <- odg.tip5_ls_output[[2]][c(32:35),] - odg.tip5_f(df, cpt_tip5 = 'Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"', subsection="Alternativni vpis") - - odg.tip6_Q40 <- as.numeric(odg.tip6[[2]]$Q40[odg.tip6[[2]]$Q40 > 0]) - - h2 <- table(odg.tip6_Q40) - h2 <- data.frame(h2, stringsAsFactors = F) - - - cat('\\newpage') - for (i in 1:length(vprasanji_meseci)){ - if(length(ure_mesecno_po_prog_df_out[[i]])>0){ - print(xtable(ure_mesecno_po_prog_df_out[[i]], - caption = napisa_meseci[i], - align = c("p","p{9cm}", "c", "c", "c", "c")), - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - caption.placement = 'top', - include.rownames = F, - hline.after = crte_meseci[[i]]) - } - } - cat("\\subsubsection{Dodatni komentarji študentov}") - odprtiOdg_f(2, "Q42", 'Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj, kar ni bilo zajeto v anketi?"') - cat("Študenti na to vprašanje niso podali odgovorov.") - -} -@ -\end{document} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.aux b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.aux deleted file mode 100644 index fe8727ebb..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.aux +++ /dev/null @@ -1,325 +0,0 @@ -\relax -\providecommand\hyper@newdestlabel[2]{} -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\providecommand\HyField@AuxAddToCoFields[2]{} -\@writefile{toc}{\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1}} -\@writefile{toc}{\contentsline {section}{\numberline {2.}Metodologija}{3}{section.0.2}} -\gdef \LT@i {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.88788pt}\LT@entry - {2}{38.05739pt}\LT@entry - {2}{23.32263pt}\LT@entry - {2}{54.75696pt}\LT@entry - {1}{23.32263pt}\LT@entry - {1}{38.05763pt}\LT@entry - {5}{22.88788pt}\LT@entry - {1}{48.12607pt}\LT@entry - {5}{17.44394pt}\LT@entry - {1}{36.56117pt}} -\gdef \LT@ii {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.88788pt}\LT@entry - {2}{38.05739pt}\LT@entry - {2}{23.32263pt}\LT@entry - {1}{54.73932pt}\LT@entry - {1}{23.32263pt}\LT@entry - {1}{38.05763pt}\LT@entry - {5}{25.91397pt}\LT@entry - {1}{48.12607pt}\LT@entry - {5}{17.44394pt}\LT@entry - {1}{36.56117pt}} -\@writefile{toc}{\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{5}{section.0.3}} -\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - prvi letnik\relax }}{5}{table.0.1}} -\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - drugi letnik\relax }}{5}{table.0.2}} -\@writefile{toc}{\contentsline {section}{\numberline {4.}Analiza dejavnikov in vsebinskih sklopov - oba letnika zdru\IeC {\v z}eno}{6}{section.0.4}} -\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih - oba letnika zdru\IeC {\v z}eno\relax }}{6}{table.caption.3}} -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih - oba letnika zdru\IeC {\v z}eno\relax }}{7}{figure.caption.4}} -\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih - oba letnika zdru\IeC {\v z}eno\relax }}{8}{table.caption.5}} -\gdef \LT@iii {\LT@entry - {1}{168.49014pt}\LT@entry - {4}{22.88788pt}\LT@entry - {2}{39.62834pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{61.17374pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{47.20753pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{43.10397pt}\LT@entry - {3}{22.88788pt}\LT@entry - {2}{55.13962pt}} -\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih - oba letnika zdru\IeC {\v z}eno\relax }}{9}{table.0.5}} -\gdef \LT@iv {\LT@entry - {1}{225.39566pt}\LT@entry - {5}{26.31396pt}\LT@entry - {1}{34.08067pt}\LT@entry - {1}{34.34024pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{29.38353pt}} -\gdef \LT@v {\LT@entry - {1}{259.53888pt}\LT@entry - {5}{26.31396pt}\LT@entry - {1}{31.51216pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{29.38353pt}} -\gdef \LT@vi {\LT@entry - {1}{225.39566pt}\LT@entry - {5}{26.31396pt}\LT@entry - {1}{34.08067pt}\LT@entry - {1}{34.08067pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{32.21161pt}} -\@writefile{toc}{\contentsline {section}{\numberline {5.}Analize skupnih spremenljivk po letnikih}{10}{section.0.5}} -\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces Infrastruktura in urniki - po letnikih\relax }}{10}{table.0.6}} -\@writefile{lot}{\contentsline {table}{\numberline {7}{\ignorespaces Zadovoljstvo z izvajanjem programov - po letnikih\relax }}{10}{table.0.7}} -\@writefile{lot}{\contentsline {table}{\numberline {8}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - po letnikih\relax }}{10}{table.0.8}} -\gdef \LT@vii {\LT@entry - {1}{268.0748pt}\LT@entry - {5}{26.31396pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{34.34024pt}} -\gdef \LT@viii {\LT@entry - {1}{268.0748pt}\LT@entry - {5}{26.31396pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{32.21161pt}} -\@writefile{lot}{\contentsline {table}{\numberline {9}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - po letnikih\relax }}{11}{table.0.9}} -\@writefile{lot}{\contentsline {table}{\numberline {10}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - po letnikih\relax }}{11}{table.0.10}} -\@writefile{lot}{\contentsline {table}{\numberline {11}{\ignorespaces Povpre\IeC {\v c}no \IeC {\v s}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij - po letnikih\relax }}{12}{table.caption.6}} -\@writefile{lot}{\contentsline {table}{\numberline {12}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{12}{table.caption.7}} -\@writefile{lot}{\contentsline {table}{\numberline {13}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:"\relax }}{12}{table.caption.8}} -\@writefile{lot}{\contentsline {table}{\numberline {14}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi."\relax }}{13}{table.caption.9}} -\@writefile{lot}{\contentsline {table}{\numberline {15}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?"\relax }}{13}{table.caption.10}} -\@writefile{lot}{\contentsline {table}{\numberline {16}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu temeljne obvezne predmete?"\relax }}{13}{table.caption.11}} -\@writefile{lot}{\contentsline {table}{\numberline {17}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?"\relax }}{14}{table.caption.12}} -\@writefile{lot}{\contentsline {table}{\numberline {18}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{14}{table.caption.13}} -\@writefile{lot}{\contentsline {table}{\numberline {19}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij?"\relax }}{14}{table.caption.14}} -\@writefile{lot}{\contentsline {table}{\numberline {20}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "\IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:"\relax }}{15}{table.caption.15}} -\@writefile{lot}{\contentsline {table}{\numberline {21}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kam bi se vpisali?"\relax }}{15}{table.caption.16}} -\@writefile{toc}{\contentsline {section}{\numberline {6.}Podrobna analiza: Prvi letnik}{16}{section.0.6}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Analiza dejavnikov}{16}{subsection.0.6.1}} -\@writefile{lot}{\contentsline {table}{\numberline {22}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{16}{table.caption.17}} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{17}{figure.caption.18}} -\@writefile{lot}{\contentsline {table}{\numberline {23}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{18}{table.caption.19}} -\gdef \LT@ix {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{39.62834pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{61.17374pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{47.20753pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{43.10397pt}\LT@entry - {3}{22.88788pt}\LT@entry - {2}{55.13962pt}} -\@writefile{lot}{\contentsline {table}{\numberline {24}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{19}{table.0.24}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}Podrobna analiza vseh spremenljivk po sklopih}{20}{subsection.0.6.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.1}Infrastruktura in urniki}{20}{subsubsection.0.6.2.1}} -\@writefile{lot}{\contentsline {table}{\numberline {25}{\ignorespaces Infrastruktura in urniki - dejavniki (opisne statistike)\relax }}{20}{table.caption.20}} -\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Infrastruktura in urniki - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{20}{figure.caption.21}} -\gdef \LT@x {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.2}} -\@writefile{lot}{\contentsline {table}{\numberline {26}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Koliko \IeC {\v c}asa povpre\IeC {\v c}no tedensko porabite za svoj doktorski \IeC {\v s}tudij (v\IeC {\v s}tejte vse obveznosti)?"\relax }}{21}{table.caption.22}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.3}} -\@writefile{lot}{\contentsline {table}{\numberline {27}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{21}{table.caption.23}} -\@writefile{lot}{\contentsline {table}{\numberline {28}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite zakaj."\relax }}{21}{table.0.28}} -\gdef \LT@xi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.4}Izbira predmeta na drugih programih UL}{22}{subsubsection.0.6.2.4}} -\@writefile{lot}{\contentsline {table}{\numberline {29}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na Univerzi\IeC { }v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:"\relax }}{22}{table.caption.24}} -\@writefile{lot}{\contentsline {table}{\numberline {30}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?"\relax }}{22}{table.0.30}} -\@writefile{lot}{\contentsline {table}{\numberline {31}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kateri predmet ste izbrali?"\relax }}{22}{table.0.31}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.5}Izbira predmeta izven UL}{22}{subsubsection.0.6.2.5}} -\@writefile{lot}{\contentsline {table}{\numberline {32}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi."\relax }}{22}{table.caption.25}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.6}Zadovoljstvo z izvajanjem programov}{23}{subsubsection.0.6.2.6}} -\@writefile{lot}{\contentsline {table}{\numberline {33}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)\relax }}{23}{table.caption.26}} -\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{23}{figure.caption.27}} -\gdef \LT@xiii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xiv {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.7}Primerna oblika izvedbe predmetov}{24}{subsubsection.0.6.2.7}} -\@writefile{lot}{\contentsline {table}{\numberline {34}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?"\relax }}{24}{table.caption.28}} -\@writefile{lot}{\contentsline {table}{\numberline {35}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite, zakaj:"\relax }}{24}{table.0.35}} -\@writefile{lot}{\contentsline {table}{\numberline {36}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z izvajanjem organiziranih oblik \IeC {\v s}tudija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"\relax }}{24}{table.0.36}} -\gdef \LT@xv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {37}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu temeljne obvezne predmete?"\relax }}{26}{table.caption.29}} -\@writefile{lot}{\contentsline {table}{\numberline {38}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"\relax }}{26}{table.0.38}} -\gdef \LT@xvi {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {39}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"\relax }}{27}{table.0.39}} -\@writefile{lot}{\contentsline {table}{\numberline {40}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?"\relax }}{28}{table.caption.30}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.8}Pomo\IeC {\v c} in podpora mentorja}{29}{subsubsection.0.6.2.8}} -\@writefile{lot}{\contentsline {table}{\numberline {41}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (opisne statistike)\relax }}{29}{table.caption.31}} -\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{29}{figure.caption.32}} -\gdef \LT@xvii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {42}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"\relax }}{30}{table.0.42}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.9}Doktorska disertacija}{30}{subsubsection.0.6.2.9}} -\@writefile{lot}{\contentsline {table}{\numberline {43}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste pred vpisom na doktorski \IeC {\v s}tudij \IeC {\v z}e imeli idejo/raziskovalni na\IeC {\v c}rt za doktorsko disertacijo:"\relax }}{30}{table.caption.33}} -\gdef \LT@xviii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {44}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Ali ste \IeC {\v z}e razmi\IeC {\v s}ljali ali za\IeC {\v c}eli pisati \IeC {\v c}lanek, ki ga morate objaviti pred zagovorom disertacije? Kak\IeC {\v s}ne te\IeC {\v z}ave pri\IeC {\v c}akujete ali \IeC {\v z}e imate v zvezi s tem?"\relax }}{31}{table.0.44}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.10}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{32}{subsubsection.0.6.2.10}} -\@writefile{lot}{\contentsline {table}{\numberline {45}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (opisne statistike)\relax }}{32}{table.caption.34}} -\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{32}{figure.caption.35}} -\gdef \LT@xix {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {46}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z raziskovalnim delom v okviru \IeC {\v s}tudija?"\relax }}{33}{table.0.46}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.11}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{34}{subsubsection.0.6.2.11}} -\@writefile{lot}{\contentsline {table}{\numberline {47}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (opisne statistike)\relax }}{34}{table.caption.36}} -\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{34}{figure.caption.37}} -\gdef \LT@xx {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxi {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {48}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Va\IeC {\v s}i predlogi glede delovanja referata in svetovanja \IeC {\v s}tudentom."\relax }}{35}{table.0.48}} -\@writefile{lot}{\contentsline {table}{\numberline {49}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Na doktorski \IeC {\v s}tudij ste se gotovo vpisali z dolo\IeC {\v c}enimi pri\IeC {\v c}akovanji. Ali je prvo leto \IeC {\v s}tudija izpolnilo va\IeC {\v s}a pri\IeC {\v c}akovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"\relax }}{35}{table.0.49}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.12}Na\IeC {\v c}in \IeC {\v s}tudija}{36}{subsubsection.0.6.2.12}} -\@writefile{lot}{\contentsline {table}{\numberline {50}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{36}{table.caption.38}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.13}Razlog \IeC {\v s}tudija}{36}{subsubsection.0.6.2.13}} -\@writefile{lot}{\contentsline {table}{\numberline {51}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij? Mo\IeC {\v z}nih je ve\IeC {\v c} odgovorov."\relax }}{36}{table.caption.39}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.14}Odlo\IeC {\v c}itev o vpisu}{36}{subsubsection.0.6.2.14}} -\@writefile{lot}{\contentsline {table}{\numberline {52}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: \IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:"\relax }}{36}{table.caption.40}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.15}Alternativni vpis}{37}{subsubsection.0.6.2.15}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.16}Dodatni komentarji \IeC {\v s}tudentov}{37}{subsubsection.0.6.2.16}} -\@writefile{toc}{\contentsline {section}{\numberline {7.}Podrobna analiza: Drugi letnik}{38}{section.0.7}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.1}Analiza dejavnikov}{38}{subsection.0.7.1}} -\@writefile{lot}{\contentsline {table}{\numberline {53}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{38}{table.caption.41}} -\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{39}{figure.caption.42}} -\@writefile{lot}{\contentsline {table}{\numberline {54}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{40}{table.caption.43}} -\gdef \LT@xxii {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{39.62834pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{61.17374pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{47.20753pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{43.10397pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{55.13962pt}} -\@writefile{lot}{\contentsline {table}{\numberline {55}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{41}{table.0.55}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.2}Podrobna analiza vseh spremenljivk po sklopih}{42}{subsection.0.7.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.1}Infrastruktura in urniki}{42}{subsubsection.0.7.2.1}} -\@writefile{lot}{\contentsline {table}{\numberline {56}{\ignorespaces Infrastruktura in urniki - dejavniki (opisne statistike)\relax }}{42}{table.caption.44}} -\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Infrastruktura in urniki - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{42}{figure.caption.45}} -\gdef \LT@xxiii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{43}{subsubsection.0.7.2.2}} -\@writefile{lot}{\contentsline {table}{\numberline {57}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Koliko \IeC {\v c}asa povpre\IeC {\v c}no tedensko porabite za svoj doktorski \IeC {\v s}tudij (v\IeC {\v s}tejte vse obveznosti)?"\relax }}{43}{table.caption.46}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{43}{subsubsection.0.7.2.3}} -\@writefile{lot}{\contentsline {table}{\numberline {58}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{43}{table.caption.47}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.4}Ustreznost trajanja doktorskega \IeC {\v s}tudija}{43}{subsubsection.0.7.2.4}} -\@writefile{lot}{\contentsline {table}{\numberline {59}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ocenjujete, da je triletno trajanje doktorskega \IeC {\v s}tudija ustrezno?"\relax }}{43}{table.caption.48}} -\@writefile{lot}{\contentsline {table}{\numberline {60}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite zakaj. "\relax }}{43}{table.0.60}} -\gdef \LT@xxiv {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxv {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.5}Izbira predmeta na drugih programih UL}{45}{subsubsection.0.7.2.5}} -\@writefile{lot}{\contentsline {table}{\numberline {61}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "V 2. letniku sem si izbral/a izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:"\relax }}{45}{table.caption.49}} -\@writefile{lot}{\contentsline {table}{\numberline {62}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Iz katerega drugega doktorskega \IeC {\v s}tudijskega programa UL ste si izbrali izbirni predmet?"\relax }}{45}{table.0.62}} -\@writefile{lot}{\contentsline {table}{\numberline {63}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kateri predmet ste izbrali?"\relax }}{45}{table.0.63}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.6}Izbira predmeta izven UL}{45}{subsubsection.0.7.2.6}} -\@writefile{lot}{\contentsline {table}{\numberline {64}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "V 2. letniku sem si izbral/a izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi."\relax }}{45}{table.caption.50}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.7}Zadovoljstvo z izvajanjem programov}{46}{subsubsection.0.7.2.7}} -\@writefile{lot}{\contentsline {table}{\numberline {65}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)\relax }}{46}{table.caption.51}} -\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{46}{figure.caption.52}} -\gdef \LT@xxvi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxvii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.8}Primerna oblika izvedbe predmetov}{47}{subsubsection.0.7.2.8}} -\@writefile{lot}{\contentsline {table}{\numberline {66}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a?"\relax }}{47}{table.caption.53}} -\@writefile{lot}{\contentsline {table}{\numberline {67}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite zakaj: "\relax }}{47}{table.0.67}} -\@writefile{lot}{\contentsline {table}{\numberline {68}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z izvajanjem organiziranih oblik \IeC {\v s}tudija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"\relax }}{47}{table.0.68}} -\gdef \LT@xxviii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxix {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.9}Temeljni/obvezni izbirni predmeti}{48}{subsubsection.0.7.2.9}} -\@writefile{lot}{\contentsline {table}{\numberline {69}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v 2. letniku posamezne temeljne predmete?"\relax }}{48}{table.caption.54}} -\@writefile{lot}{\contentsline {table}{\numberline {70}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"\relax }}{48}{table.0.70}} -\@writefile{lot}{\contentsline {table}{\numberline {71}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"\relax }}{48}{table.0.71}} -\gdef \LT@xxx {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxi {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.10}Izbirni predmeti}{49}{subsubsection.0.7.2.10}} -\@writefile{lot}{\contentsline {table}{\numberline {72}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?"\relax }}{49}{table.caption.55}} -\@writefile{lot}{\contentsline {table}{\numberline {73}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"\relax }}{49}{table.0.73}} -\@writefile{lot}{\contentsline {table}{\numberline {74}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (izbirnih) predmetih?"\relax }}{49}{table.0.74}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.11}Pomo\IeC {\v c} in podpora mentorja}{50}{subsubsection.0.7.2.11}} -\@writefile{lot}{\contentsline {table}{\numberline {75}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (opisne statistike)\relax }}{50}{table.caption.56}} -\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{50}{figure.caption.57}} -\gdef \LT@xxxii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxiii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {76}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"\relax }}{51}{table.0.76}} -\@writefile{lot}{\contentsline {table}{\numberline {77}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kak\IeC {\v s}ne so va\IeC {\v s}e izku\IeC {\v s}nje s prijavo dispozicije doktorske naloge?"\relax }}{51}{table.0.77}} -\gdef \LT@xxxiv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {78}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Ali ste \IeC {\v z}e razmi\IeC {\v s}ljali ali za\IeC {\v c}eli pisati \IeC {\v c}lanek, ki ga morate objaviti pred zagovorom disertacije? Kak\IeC {\v s}ne te\IeC {\v z}ave pri\IeC {\v c}akujete ali \IeC {\v z}e imate v zvezi s tem?"\relax }}{52}{table.0.78}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{53}{subsubsection.0.7.2.12}} -\@writefile{lot}{\contentsline {table}{\numberline {79}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (opisne statistike)\relax }}{53}{table.caption.58}} -\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{53}{figure.caption.59}} -\gdef \LT@xxxv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {80}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z raziskovalnim delom v okviru \IeC {\v s}tudija?"\relax }}{54}{table.0.80}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{55}{subsubsection.0.7.2.13}} -\@writefile{lot}{\contentsline {table}{\numberline {81}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (opisne statistike)\relax }}{55}{table.caption.60}} -\@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{55}{figure.caption.61}} -\gdef \LT@xxxvi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxvii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {82}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Va\IeC {\v s}i predlogi glede delovanja referata in svetovanja \IeC {\v s}tudentom."\relax }}{56}{table.0.82}} -\@writefile{lot}{\contentsline {table}{\numberline {83}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Na doktorski \IeC {\v s}tudij ste se gotovo vpisali z dolo\IeC {\v c}enimi pri\IeC {\v c}akovanji. Ali sta prvi dve leti \IeC {\v s}tudija izpolnili va\IeC {\v s}a pri\IeC {\v c}akovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"\relax }}{56}{table.0.83}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{57}{subsubsection.0.7.2.14}} -\@writefile{lot}{\contentsline {table}{\numberline {84}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{57}{table.caption.62}} -\gdef \LT@xxxviii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.15}Razlog \IeC {\v s}tudija}{58}{subsubsection.0.7.2.15}} -\@writefile{lot}{\contentsline {table}{\numberline {85}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij? Mo\IeC {\v z}nih je ve\IeC {\v c} odgovorov."\relax }}{58}{table.caption.63}} -\@writefile{lot}{\contentsline {table}{\numberline {86}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Drugo:"\relax }}{58}{table.0.86}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.16}Odlo\IeC {\v c}itev o vpisu}{58}{subsubsection.0.7.2.16}} -\@writefile{lot}{\contentsline {table}{\numberline {87}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "\IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:"\relax }}{58}{table.caption.64}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.17}Alternativni vpis}{58}{subsubsection.0.7.2.17}} -\@writefile{lot}{\contentsline {table}{\numberline {88}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kam bi se vpisali?"\relax }}{58}{table.caption.65}} -\gdef \LT@xxxix {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {89}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "1. korak: \IeC {\v C}as od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:"\relax }}{59}{table.caption.66}} -\@writefile{lot}{\contentsline {table}{\numberline {90}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "2. korak: \IeC {\v C}as od soglasja senata/komisije fakultete do soglasja senata UL (zapi\IeC {\v s}ite podatek, \IeC {\v c}e je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):"\relax }}{59}{table.caption.67}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.18}Dodatni komentarji \IeC {\v s}tudentov}{59}{subsubsection.0.7.2.18}} -\@writefile{lot}{\contentsline {table}{\numberline {91}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj, kar ni bilo zajeto v anketi?"\relax }}{59}{table.0.91}} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.out b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.out deleted file mode 100644 index d30d82831..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.out +++ /dev/null @@ -1,45 +0,0 @@ -\BOOKMARK [1][-]{section.0.1}{Povzetek}{}% 1 -\BOOKMARK [1][-]{section.0.2}{Metodologija}{}% 2 -\BOOKMARK [1][-]{section.0.3}{Sodelovanje \235tudentov v anketi}{}% 3 -\BOOKMARK [1][-]{section.0.4}{Analiza dejavnikov in vsebinskih sklopov - oba letnika zdru\236eno}{}% 4 -\BOOKMARK [1][-]{section.0.5}{Analize skupnih spremenljivk po letnikih}{}% 5 -\BOOKMARK [1][-]{section.0.6}{Podrobna analiza: Prvi letnik}{}% 6 -\BOOKMARK [2][-]{subsection.0.6.1}{Analiza dejavnikov}{section.0.6}% 7 -\BOOKMARK [2][-]{subsection.0.6.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.6}% 8 -\BOOKMARK [3][-]{subsubsection.0.6.2.1}{Infrastruktura in urniki}{subsection.0.6.2}% 9 -\BOOKMARK [3][-]{subsubsection.0.6.2.2}{\227tevilo tedensko porabljenih ur za doktorski \235tudij}{subsection.0.6.2}% 10 -\BOOKMARK [3][-]{subsubsection.0.6.2.3}{Ustreznost casa za doktorski \235tudij}{subsection.0.6.2}% 11 -\BOOKMARK [3][-]{subsubsection.0.6.2.4}{Izbira predmeta na drugih programih UL}{subsection.0.6.2}% 12 -\BOOKMARK [3][-]{subsubsection.0.6.2.5}{Izbira predmeta izven UL}{subsection.0.6.2}% 13 -\BOOKMARK [3][-]{subsubsection.0.6.2.6}{Zadovoljstvo z izvajanjem programov}{subsection.0.6.2}% 14 -\BOOKMARK [3][-]{subsubsection.0.6.2.7}{Primerna oblika izvedbe predmetov}{subsection.0.6.2}% 15 -\BOOKMARK [3][-]{subsubsection.0.6.2.8}{Pomoc in podpora mentorja}{subsection.0.6.2}% 16 -\BOOKMARK [3][-]{subsubsection.0.6.2.9}{Doktorska disertacija}{subsection.0.6.2}% 17 -\BOOKMARK [3][-]{subsubsection.0.6.2.10}{Del \235tudija in ostale aktivnosti v tujini}{subsection.0.6.2}% 18 -\BOOKMARK [3][-]{subsubsection.0.6.2.11}{Svetovalna pomoc \235tudentom}{subsection.0.6.2}% 19 -\BOOKMARK [3][-]{subsubsection.0.6.2.12}{Nacin \235tudija}{subsection.0.6.2}% 20 -\BOOKMARK [3][-]{subsubsection.0.6.2.13}{Razlog \235tudija}{subsection.0.6.2}% 21 -\BOOKMARK [3][-]{subsubsection.0.6.2.14}{Odlocitev o vpisu}{subsection.0.6.2}% 22 -\BOOKMARK [3][-]{subsubsection.0.6.2.15}{Alternativni vpis}{subsection.0.6.2}% 23 -\BOOKMARK [3][-]{subsubsection.0.6.2.16}{Dodatni komentarji \235tudentov}{subsection.0.6.2}% 24 -\BOOKMARK [1][-]{section.0.7}{Podrobna analiza: Drugi letnik}{}% 25 -\BOOKMARK [2][-]{subsection.0.7.1}{Analiza dejavnikov}{section.0.7}% 26 -\BOOKMARK [2][-]{subsection.0.7.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.7}% 27 -\BOOKMARK [3][-]{subsubsection.0.7.2.1}{Infrastruktura in urniki}{subsection.0.7.2}% 28 -\BOOKMARK [3][-]{subsubsection.0.7.2.2}{\227tevilo tedensko porabljenih ur za doktorski \235tudij}{subsection.0.7.2}% 29 -\BOOKMARK [3][-]{subsubsection.0.7.2.3}{Ustreznost casa za doktorski \235tudij}{subsection.0.7.2}% 30 -\BOOKMARK [3][-]{subsubsection.0.7.2.4}{Ustreznost trajanja doktorskega \235tudija}{subsection.0.7.2}% 31 -\BOOKMARK [3][-]{subsubsection.0.7.2.5}{Izbira predmeta na drugih programih UL}{subsection.0.7.2}% 32 -\BOOKMARK [3][-]{subsubsection.0.7.2.6}{Izbira predmeta izven UL}{subsection.0.7.2}% 33 -\BOOKMARK [3][-]{subsubsection.0.7.2.7}{Zadovoljstvo z izvajanjem programov}{subsection.0.7.2}% 34 -\BOOKMARK [3][-]{subsubsection.0.7.2.8}{Primerna oblika izvedbe predmetov}{subsection.0.7.2}% 35 -\BOOKMARK [3][-]{subsubsection.0.7.2.9}{Temeljni/obvezni izbirni predmeti}{subsection.0.7.2}% 36 -\BOOKMARK [3][-]{subsubsection.0.7.2.10}{Izbirni predmeti}{subsection.0.7.2}% 37 -\BOOKMARK [3][-]{subsubsection.0.7.2.11}{Pomoc in podpora mentorja}{subsection.0.7.2}% 38 -\BOOKMARK [3][-]{subsubsection.0.7.2.12}{Del \235tudija in ostale aktivnosti v tujini}{subsection.0.7.2}% 39 -\BOOKMARK [3][-]{subsubsection.0.7.2.13}{Svetovalna pomoc \235tudentom}{subsection.0.7.2}% 40 -\BOOKMARK [3][-]{subsubsection.0.7.2.14}{Nacin \235tudija}{subsection.0.7.2}% 41 -\BOOKMARK [3][-]{subsubsection.0.7.2.15}{Razlog \235tudija}{subsection.0.7.2}% 42 -\BOOKMARK [3][-]{subsubsection.0.7.2.16}{Odlocitev o vpisu}{subsection.0.7.2}% 43 -\BOOKMARK [3][-]{subsubsection.0.7.2.17}{Alternativni vpis}{subsection.0.7.2}% 44 -\BOOKMARK [3][-]{subsubsection.0.7.2.18}{Dodatni komentarji \235tudentov}{subsection.0.7.2}% 45 diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.tex b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.tex deleted file mode 100644 index d7c69f3e5..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.tex +++ /dev/null @@ -1,2048 +0,0 @@ -% Skripta 2: po programih - -\documentclass[11pt,a4paper]{report}\usepackage[]{graphicx}\usepackage[]{color} -%% maxwidth is the original width if it is less than linewidth -%% otherwise use linewidth (to make sure the graphics do not exceed the margin) -\makeatletter -\def\maxwidth{ % - \ifdim\Gin@nat@width>\linewidth - \linewidth - \else - \Gin@nat@width - \fi -} -\makeatother - -\definecolor{fgcolor}{rgb}{0.345, 0.345, 0.345} -\newcommand{\hlnum}[1]{\textcolor[rgb]{0.686,0.059,0.569}{#1}}% -\newcommand{\hlstr}[1]{\textcolor[rgb]{0.192,0.494,0.8}{#1}}% -\newcommand{\hlcom}[1]{\textcolor[rgb]{0.678,0.584,0.686}{\textit{#1}}}% -\newcommand{\hlopt}[1]{\textcolor[rgb]{0,0,0}{#1}}% -\newcommand{\hlstd}[1]{\textcolor[rgb]{0.345,0.345,0.345}{#1}}% -\newcommand{\hlkwa}[1]{\textcolor[rgb]{0.161,0.373,0.58}{\textbf{#1}}}% -\newcommand{\hlkwb}[1]{\textcolor[rgb]{0.69,0.353,0.396}{#1}}% -\newcommand{\hlkwc}[1]{\textcolor[rgb]{0.333,0.667,0.333}{#1}}% -\newcommand{\hlkwd}[1]{\textcolor[rgb]{0.737,0.353,0.396}{\textbf{#1}}}% -\let\hlipl\hlkwb - -\usepackage{framed} -\makeatletter -\newenvironment{kframe}{% - \def\at@end@of@kframe{}% - \ifinner\ifhmode% - \def\at@end@of@kframe{\end{minipage}}% - \begin{minipage}{\columnwidth}% - \fi\fi% - \def\FrameCommand##1{\hskip\@totalleftmargin \hskip-\fboxsep - \colorbox{shadecolor}{##1}\hskip-\fboxsep - % There is no \\@totalrightmargin, so: - \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}% - \MakeFramed {\advance\hsize-\width - \@totalleftmargin\z@ \linewidth\hsize - \@setminipage}}% - {\par\unskip\endMakeFramed% - \at@end@of@kframe} -\makeatother - -\definecolor{shadecolor}{rgb}{.97, .97, .97} -\definecolor{messagecolor}{rgb}{0, 0, 0} -\definecolor{warningcolor}{rgb}{1, 0, 1} -\definecolor{errorcolor}{rgb}{1, 0, 0} -\newenvironment{knitrout}{}{} % an empty environment to be redefined in TeX - -\usepackage{alltt} -\usepackage[cm]{fullpage} -\newcommand*\rot{\rotatebox{90}} -% Spremeni razmik med naslovom kazala vrhom strani -\usepackage{titlesec} -\titleformat{\chapter}[display] - {\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge} -\titlespacing*{\chapter}{0pt}{-15pt}{25pt} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -% za oznacevanje elementov v tabeli (odprti odg) kot seznam -\newcommand{\tabitem}{~~\llap{\textbullet}~~} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%slovenski napisi -\usepackage{sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -%Hiperlink tabele -% Pomembno, da pravilno zlomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage[breaklinks]{hyperref} -%\usepackage[breaklinks=true]{hyperref} - -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} -\usepackage{breakurl} -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri poglavjih -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -\usepackage{graphicx} -\graphicspath{ {../logo/} } - -% Uporabimo za prilagajanje glave in noge porocila -\usepackage{fancyhdr} - - - - - -% Naslovnica - -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{Fakulteta za družbene vede - Humanistika in družboslovje interdisciplinarni}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt - -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\fancypagestyle{prvi}{ - \fancyhead[R]{\small{Prvi letnik}} - -} - -\fancypagestyle{drugi}{ - \fancyhead[R]{\small{Drugi letnik}} -} - -\fancypagestyle{oba}{ - \fancyhead[R]{\small{}} -} - -% Pomembno da so podpoglavja ostevilcena -\setcounter{secnumdepth}{3} -\setcounter{tocdepth}{3} -\IfFileExists{upquote.sty}{\usepackage{upquote}}{} -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{logo_FDV} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2in]}}} -\textup{\LARGE \textbf{Fakulteta za družbene vede}} \\[0.2in] -% Prilagodi glede na prisotne podatke -\textup{\LARGE \textcolor[HTML]{B4162C}{\textbf{Humanistika in družboslovje interdisciplinarni}}} \\[0.3in] - -\textup{\LARGE{ \textbf{Študentska anketa o študiju na III. stopnji}}} \\[0.5in] -{\large Študijsko leto 2015/16 \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - - - - - - -\begin{kframe} - - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in font.add("{}CM Roman"{}, regular = paste0(getwd(), "{}/cmunrm.ttf"{})): freetype: cannot open resource, error code 1}}\end{kframe}\section{Povzetek}Povzemamo glavne ugotovitve evalvacijske ankete zadovoljstva študentov tretje stopnje "FDV Humanistika in družboslovje interdisciplinarni (2015/16)". V anketi je odgovarjalo 16 študentov prvega letnika (od 31 vpisanih) in 9 študentov drugega letnika (od 19 vpisanih). -V povzetku se omejujemo predvsem na prikaz ocen za dejavnike splošnega zadovoljstva na lestvici 1 - 5. Povprečja, ki izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji). \\ \\ -Odlično je ocenjen naslednji sklop (mediana dejavnikov je v intervalu 4.5 - 5.0): \begin{itemize}\item \textbf{Pomoč in podpora mentorja:} \textit{'Pomoč mentorja pri pripravi znanstvenega članka je ustrezna.'} (\textbf{\textcolor[HTML]{006666}{4.8}}), \textit{'Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu.'} (\textbf{\textcolor[HTML]{006666}{4.8}}), \textit{'Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga.'} (\textbf{\textcolor[HTML]{006666}{4.8}}), \textit{'Pogostost stikov z mentorjem/mentorico je primerna.'} (\textbf{\textcolor[HTML]{006666}{4.8}}), \textit{'Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.7}}) in \textit{'Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti.'} (\textbf{\textcolor[HTML]{36BF4B}{4.7}}). \end{itemize}Zelo dobro sta ocenjena naslednja sklopa (mediana dejavnikov je v intervalu 4.0 - 4.5): \begin{itemize}\item \textbf{Infrastruktura in urniki:} \textit{'Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a.'} (\textbf{\textcolor[HTML]{006666}{4.8}}), \textit{'S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a.'} (\textbf{\textcolor[HTML]{36BF4B}{4.7}}), \textit{'Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu.'} (\textbf{\textcolor[HTML]{36BF4B}{4.5}}), \textit{'Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza.'} (4.4), \textit{'Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.).'} (4.1) in \textit{'Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.).'} (\textbf{\textcolor[HTML]{F58137}{3.9}}).\item \textbf{Svetovalna pomoč študentom:} \textit{'Osebje študentskega referata je odzivno in učinkovito.'} (\textbf{\textcolor[HTML]{006666}{4.8}}), \textit{'Osebje študentskega referata ima ustrezen odnos do študentov.'} (\textbf{\textcolor[HTML]{36BF4B}{4.7}}), \textit{'Informacije na spletnih straneh so dovolj jasne in celovite.'} (4.4) in \textit{'Uradne ure študentskega referata so primerne.'} (4.3). \end{itemize}V celoti gledano je pozitivno ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave (mediana dejavnikov je v intervalu 3.5 - 4.0): \begin{itemize}\item \textbf{Zadovoljstvo z izvajanjem programov:} \textit{'Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa.'} (4.4), \textit{'V okviru organiziranih oblik študija je bila spodbujena kritična razprava.'} (4.0), \textit{'Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji.'} (4.0), \textit{'Ponudba izbirnih predmetov je ustrezna.'} (\textbf{\textcolor[HTML]{F58137}{3.8}}) in \textit{'Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.).'} (\textbf{\textcolor[HTML]{F58137}{3.8}}). \end{itemize}Veliko prostora za izboljšave je pri naslednjem sklopu, kjer je pozitivno oceno (4 ali 5) podala manj kot polovica študentov (mediana dejavnikov je v intervalu 3.0 - 3.5): \begin{itemize}\item \textbf{Del študija in ostale aktivnosti v tujini:} \textit{'Imam možnost udeležbe na znanstvenih konferencah v tujini.'} (\textbf{\textcolor[HTML]{F58137}{3.8}}), \textit{'Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini.'} (\textbf{\textcolor[HTML]{B6321C}{3.3}}), \textit{'Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini.'} (\textbf{\textcolor[HTML]{B6321C}{3.2}}) in \textit{'Sem vključen/a v raziskovalno skupino / program / projekt.'} (\textbf{\textcolor[HTML]{B6321C}{2.9}}). \end{itemize} Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana.\newpage -\newpage -\tableofcontents -\newpage -\section{Metodologija} - - - V okviru projekta Kakovost – Univerza v Ljubljani (KUL) je bila v letih 2013 in 2014 izvedena prenova študentskih anket, nato pa je s študijskim letom 2014/2015 v veljavo stopil tudi nov Pravilnik o študentskih anketah. Pravilnik ureja izvajanje šestih študentskih anket na vseh članicah Univerze v Ljubljani (podrobnosti so na {\url{http://ul.1ka.si}}). Ankete se izvajajo za predmete in pedagoge na vseh treh stopnjah, na prvih dveh stopnjah pa se izvaja tudi posebna anketa o splošnih vidikih študijskega procesa. Po pilotni izvedbi 2014/2015 so bile v študijskem letu 2015/2016 ankete prvič izvedene na vseh članicah. \\ - Anketa o doktorskem študiju se izvede v prvem (dostop do ankete: {\url{http://ul.1ka.si/dr1}}) in v drugem (dostop do ankete: {\url{http://ul.1ka.si/dr2}}) letniku doktorskega študija, in sicer po zaključenih izpitnih obdobjih od julija do konca drugega semestra. Opravljena ali izrecno zavrnjena anketa je predpogoj za vpis v naslednji letnik. \\ - Za razliko od prve in druge stopnje študenti na tretji stopnji ne dobijo dinamično generiranega vprašalnika glede na vpisane predmete, ampak imajo vsi enak vprašalnik. \\ - Anketi se sicer razlikujeta glede na letnik, vendar obe vsebujeta tudi pet skupnih sklopov s 25 vprašanji. Sklopi so naslednji: - \begin{itemize} - \item Svetovalna pomoč študentom - \item Infrastruktura in urniki - \item Pomoč in podpora mentorja - \item Zadovoljstvo z izvajanjem - \item Aktivnosti v tujini - \end{itemize} - - Vsak od sklopov praviloma vsebuje med 4 in 6 trditev, ki so jih študenti ocenjevali na lestvici med 1 in 5, pri čemer 1 pomeni »sploh se ne strinjam« in 5 »popolnoma se strinjam«. Oceni 1 in 2 sta torej negativni, oceni 4 in 5 pozitivni, ocena 3 pa je nevtralna (niti se ne strinjam, niti se strinjam). Poleg tega je vsaka anketa vsebovala še dodatna vprašanja zaprtega tipa in tudi odprta vprašanja, kjer so študenti lahko pojasnili svoja stališča. Pri tem so vse navedbe vključene v poročilo tako kot so bile zapisane v anketi, torej brez cenzure in jezikovnih posegov. Širša javnost ima dostop do vseh analiz, ki ne vključujejo odprtih odgovorov, kar je vključeno tudi v sumarno poročilo na nivoju UL. \\ - Zaradi morebitne občutljivosti odgovorov in potencialnega razkritja identitete je pričujoče poročilo namenjeno izključno interni uporabi (vodstvo in koordinator programa). \\ - Ker je pri nekaterih programih število anketirancev nizko, so ti podatki zgolj informativne narave in iz njih ne moremo sklepati na populacijo. V prilogi so zato ocene, kjer je število enot manjše od 10, označene z enojnim oklepajem, ocene, kjer je število enot manjše od 5, pa z dvema oklepajema. Če je število enot manjše od 4, je namesto povprečja izpisana pika, kar pomeni da gre za neničelno oceno, ki je zelo nenatančna.  \\ - V splošnem velja pri razumevanju pričujočih analiz upoštevati tudi splošna metodološka priporočila študentskih anket: {\url{http://ul.1ka.si/metodologija}}. \\ - Zaradi množice številk, ki so prikazana v poročilu, so za lažje pregledovanje najvišje in najnižje vrednosti obarvane. Pri tem velja upoštevati naravo ocenjevanja na tretji stopnji (mediana je okoli 4.2), kjer so ocene bistveno višje kot pri ocenjevanju na prvih dveh stopnjah (mediana je okoli 3.7), zato je tudi obarvanje nekoliko drugačno. V grobem sledimo načelu, da se označi spodnja in zgornja četrtina, dodatno pa je obarvana še spodnja in zgornja desetina. Označene (obarvane) so zato naslednje povprečne ocene: - \begin{itemize} - \item ocena od \textcolor[HTML]{B6321C}{\textbf{1.0}} do \textcolor[HTML]{B6321C}{\textbf{3.4}} pomeni razmeroma nizko vrednost, saj je študentov, ki so dali pozitivno oceno (4 ali 5), v grobem manj kot polovica, kar z drugimi besedami pomeni, da večina študentov ni zmogla pozitivne ocene; pri tem velja dodatno izpostaviti (čeprav ni drugače obarvano), da so še posebej kritične negativne ocene (pod 3.0). - \item ocena od \textcolor[HTML]{F58137}{\textbf{3.5}} do \textcolor[HTML]{F58137}{\textbf{3.9}} pomeni, da obstaja znaten prostor za izboljšave, saj je študentov, ki so dali odlično oceno (5) praviloma manj kot študentov, ki so dali oceno pod 4 in torej niso zmogli pozitivne ocene (1, 2, 3).  - \item ocene od 4.0 do do 4.4 predstavljajo glavnino vseh ocen in niso posebej obarvane; - \item ocena od \textcolor[HTML]{36BF4B}{\textbf{4.5}} do \textcolor[HTML]{36BF4B}{\textbf{4.7}} je pomemben mejnik odličnosti, saj v takem primeru ocene odlično (5) predstavljajo večino vseh ocen; - \item ocena nad (vključno) \textcolor[HTML]{006666}{\textbf{4.8}} označuje najvišji nivo odličnosti, saj ocene odlično (5) predstavljajo več kot tri četrtine vseh ocen.\\ - \end{itemize} -   - V rezultatih izpisan \textit{n} označuje število enot, ki so odgovorile na prvo vprašanje (pri ostalih vprašanjih je zato število odgovorov včasih nekoliko večje ali manjše). Dodati velja, da se v tabelah skupna povprečja  zaradi celic s premalo enotami, ki posamično niso izpisane, lahko razlikujejo od kombinacije objavljenih poprečij (Poglavje 4).\\ -   - V anketi so identificirani le študenti, ki so sodelovanje bodisi zavrnili bodisi sprejeli in odgovorili. Skupno število študentov, ki so se tako ali drugače odzvali, se razlikuje od vpisanih študentov, saj nekateri študenti k anketi niso niti pristopili. Večinoma gre pri tem za študente, ki so študij opustili oziroma se niso vpisali v naslednji letnik, saj je bila izpolnjena (ali zavrnjena) anketa predpogoj za vpis. \\Povzemimo še odziv študentov: - \begin{itemize} \item V prvi letnik je vpisanih 31 študentov, od tega je k anketi pristopilo 20 študentov, 4 študenti so nato sodelovanje izrecno zavrnili, preostalih 16 študentov pa je na anketo odgovorilo. \item V drugi letnik je vpisanih 19 študentov, od tega je k anketi pristopilo 12 študentov, 3 študenti so nato sodelovanje izrecno zavrnili, preostalih 9 študentov pa je na anketo odgovorilo. \end{itemize} -\newpage -\section{Sodelovanje študentov v anketi} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov v študijskem programu "Humanistika in družboslovje interdisciplinarni" po letnikih. - -V koloni "odgovoril" je z enojnimi (<10) ali dvojnimi ((<5)) oklepaji označeno morebitno nižje število odgovorov "n" (glej poglavje Metodologija), ki v analizah zahteva več previdnosti pri interpretacijah. -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:25 2017 -\begin{longtable}{p{7.4cm}|cc|cc||cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - prvi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r||}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r||}{\textbf{ni prostopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Humanistika in družboslovje interdisciplinarni (vpisani) & 31 & \textbf{100} & 11 & 35 & 20 & 65 & 16 & 52 & 4 & 13 \\ - \hline -Humanistika in družboslovje interdisciplinarni (pristopili) & & & & & 20 & \textbf{100} & 16 & 80 & 4 & 20 \\ - \hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:25 2017 -\begin{longtable}{p{7.4cm}|cc|cc||cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - drugi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r||}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r||}{\textbf{ni pristopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Humanistika in družboslovje interdisciplinarni (vpisani) & 19 & \textbf{100} & 7 & 37 & 12 & 63 & (9) & 47 & 3 & 16 \\ - \hline -Humanistika in družboslovje interdisciplinarni (pristopili) & & & & & 12 & \textbf{100} & (9) & 75 & 3 & 25 \\ - \hline -\end{longtable} - - -\newpage\section{Analiza dejavnikov in vsebinskih sklopov - oba letnika združeno}V nadaljevanju so najprej predstavljene analize za 25 dejavnikov, združene za oba letnika skupaj. Opisne statistike vključujejo število (n), povprečje in standardni odklon (sd). Gre za najbolj grobo agregatno analizo. Podrobnosti po letnikih so nadalje analizirane v poglavjih 5 in 6 oziroma 7.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:25 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih - oba letnika združeno} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & 22 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Osebje študentskega referata je odzivno in učinkovito. & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.6 \\ - \rowcolor[gray]{0.95}Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem/mentorico je primerna. & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & 25 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - \rowcolor[gray]{0.95}Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & 25 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & 25 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.8 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata ima ustrezen odnos do študentov. & 25 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.9 \\ - Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & 24 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.8 \\ - \rowcolor[gray]{0.95}Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & 24 & 4.4 & 0.8 \\ - Informacije na spletnih straneh so dovolj jasne in celovite. & 24 & 4.4 & 0.8 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & 25 & 4.4 & 0.9 \\ - Uradne ure študentskega referata so primerne. & 25 & 4.3 & 1.2 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & 25 & 4.1 & 1.2 \\ - V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & 24 & 4.0 & 1.2 \\ - \rowcolor[gray]{0.95}Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & 24 & 4.0 & 1.2 \\ - Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & 21 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.2 \\ - \rowcolor[gray]{0.95}Ponudba izbirnih predmetov je ustrezna. & 23 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.1 \\ - Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & 24 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.3 \\ - \rowcolor[gray]{0.95}Imam možnost udeležbe na znanstvenih konferencah v tujini. & 23 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.4 \\ - Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & 24 & \textbf{\textcolor[HTML]{B6321C}{3.3}} & 1.7 \\ - \rowcolor[gray]{0.95}Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & 20 & \textbf{\textcolor[HTML]{B6321C}{3.2}} & 1.5 \\ - Sem vključen/a v raziskovalno skupino / program / projekt. & 24 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & 2.0 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] - \caption{Opisne statistike za dejavnike, urejene po povprečjih - oba letnika združeno} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/grafVsehDejavnikov_oba_letnika.pdf} - \end{figure}Najboljše je ocenjen dejavnik "Pomoč mentorja pri pripravi znanstvenega članka je ustrezna." (\textbf{\textcolor[HTML]{006666}{4.8}}) \\ \\Najslabše je ocenjen dejavnik "Sem vključen/a v raziskovalno skupino / program / projekt." (\textbf{\textcolor[HTML]{B6321C}{2.9}})\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:25 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih - oba letnika združeno} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ Pomoč mentorja pri znan. čl. & 22 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Mentor mi nudi podporo & 25 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Pomoč mentorja pri težavah & 25 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Pogostost stikov z mentorjem & 25 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Ustrezno svetovanje mentorja & 25 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - Odzivnost mentorja po el. pošti & 25 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.8 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ \rowcolor[gray]{0.95}Odzivnost in učinkovitost ref. & 25 & 2 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.6 \\ - \rowcolor[gray]{0.95}Ustrezen odnos osebja & 25 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.9 \\ - \rowcolor[gray]{0.95}Celovite info. na spletni str. & 24 & 3 & 5 & 4.4 & 0.8 \\ - \rowcolor[gray]{0.95}Uradne ure študentskega ref. & 25 & 1 & 5 & 4.3 & 1.2 \\ - \multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored izvajanja & 25 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Spremembe poteka & 25 & 4 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - Pravilno navedeni izvajalci & 24 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.8 \\ - Razpored ur mi ustreza & 24 & 3 & 5 & 4.4 & 0.8 \\ - Infrastr. za pridobivanje virov & 25 & 1 & 5 & 4.1 & 1.2 \\ - Druga infrastruktura & 21 & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.2 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & 25 & 2 & 5 & 4.4 & 0.9 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & 24 & 2 & 5 & 4.0 & 1.2 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & 24 & 1 & 5 & 4.0 & 1.2 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & 23 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.1 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & 24 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.3 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 23 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.4 \\ - Del študija ali razis. dela v tujini & 24 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.3}} & 1.7 \\ - Možnost študija/razis. dela v tuj. & 20 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.2}} & 1.5 \\ - Vključenost v razis. sk. & 24 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & 2.0 \\ - \hline -\end{tabular} -\end{table} -\newpage \begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih - oba letnika združeno} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih - oba letnika združeno (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 - \hline \multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ Pomoč mentorja pri znan. čl. & 0 & 0 & 0 & 0 & 1 & 5 & 2 & 9 & 19 & 86 \\ - Mentor mi nudi podporo & 0 & 0 & 0 & 0 & 1 & 4 & 3 & 12 & 21 & 84 \\ - Pomoč mentorja pri težavah & 0 & 0 & 0 & 0 & 1 & 4 & 4 & 16 & 20 & 80 \\ - Pogostost stikov z mentorjem & 0 & 0 & 0 & 0 & 0 & 0 & 6 & 24 & 19 & 76 \\ - Ustrezno svetovanje mentorja & 0 & 0 & 0 & 0 & 2 & 8 & 3 & 12 & 20 & 80 \\ - Odzivnost mentorja po el. pošti & 1 & 4 & 0 & 0 & 0 & 0 & 3 & 12 & 21 & 84 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Odzivnost in učinkovitost ref. & 0 & 0 & 1 & 4 & 0 & 0 & 2 & 8 & 22 & 88 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustrezen odnos osebja & 1 & 4 & 0 & 0 & 2 & 8 & 0 & 0 & 22 & 88 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Celovite info. na spletni str. & 0 & 0 & 0 & 0 & 4 & 17 & 7 & 29 & 13 & 54 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uradne ure študentskega ref. & 1 & 4 & 3 & 12 & 1 & 4 & 3 & 12 & 17 & 68 \\ - \multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored izvajanja & 0 & 0 & 0 & 0 & 0 & 0 & 6 & 24 & 19 & 76 \\ - Spremembe poteka & 0 & 0 & 0 & 0 & 0 & 0 & 7 & 28 & 18 & 72 \\ - Pravilno navedeni izvajalci & 0 & 0 & 1 & 4 & 2 & 8 & 4 & 17 & 17 & 71 \\ - Razpored ur mi ustreza & 0 & 0 & 0 & 0 & 5 & 21 & 4 & 17 & 15 & 62 \\ - Infrastr. za pridobivanje virov & 1 & 4 & 3 & 12 & 2 & 8 & 5 & 20 & 14 & 56 \\ - Druga infrastruktura & 0 & 0 & 4 & 19 & 4 & 19 & 3 & 14 & 10 & 48 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 0 & 0 & 2 & 8 & 1 & 4 & 8 & 32 & 14 & 56 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 0 & 0 & 4 & 17 & 4 & 17 & 4 & 17 & 12 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 1 & 4 & 3 & 12 & 3 & 12 & 6 & 25 & 11 & 46 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 1 & 4 & 1 & 4 & 6 & 26 & 8 & 35 & 7 & 30 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 2 & 8 & 2 & 8 & 4 & 17 & 7 & 29 & 9 & 38 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 2 & 9 & 3 & 13 & 3 & 13 & 5 & 22 & 10 & 43 \\ - Del študija ali razis. dela v tujini & 7 & 29 & 2 & 8 & 1 & 4 & 6 & 25 & 8 & 33 \\ - Možnost študija/razis. dela v tuj. & 4 & 20 & 3 & 15 & 4 & 20 & 3 & 15 & 6 & 30 \\ - Vključenost v razis. sk. & 12 & 50 & 1 & 4 & 0 & 0 & 0 & 0 & 11 & 46 \\ - \hline \end{longtable} - - - -\newpage\section{Analize skupnih spremenljivk po letnikih} -V nadaljevanju so analizirane vse skupne spremenljivke (razen odprtih vprašanj), ki so bile hkrati vključene v oba letnika. Poleg 25 dejavnikov na lestvicah 1-5, prikazanih že v skupni analizi v Poglavju 4, je vključenih še 13 drugih spremenljivk. Analize v tem poglavju so zato namenjene predvsem primerjavama oziroma razlikam med letnikoma.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{longtable}{C{7.5cm}c|cccccc} -\caption{Infrastruktura in urniki - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilno nav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline \endfirsthead - \caption{Infrastruktura in urniki - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilnonav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & 16 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & 4.3 & 4.3 & 4.2 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Drugi & (9) & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.5}} & 4.3 \\ - \hline & 25 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 4.1 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 4.4 \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{longtable}{C{8.7cm}c|ccccc} -\caption{Zadovoljstvo z izvajanjem programov - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost\\za dr. diser.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline \endfirsthead - \caption{Zadovoljstvo z izvajanjem programov - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost\\za dr. diser.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & 16 & 4.3 & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.9}} & 4.0 & 4.1 \\ - Drugi & (9) & 4.4 & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - \hline & 25 & 4.4 & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{F58137}{3.9}} & 4.0 \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{longtable}{C{7.5cm}c|cccccc} -\caption{Pomoč in podpora mentorja - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline \endfirsthead - \caption{Pomoč in podpora mentorja - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Drugi & (9) & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{4.9}} & 4.4 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - \hline & 25 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - \hline -\hline -\end{longtable} -\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{longtable}{C{9cm}c|cccc} -\caption{Del študija in ostale aktivnosti v tujini - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - \\ \hline \endfirsthead - \caption{Del študija in ostale aktivnosti v tujini - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & 16 & \textbf{\textcolor[HTML]{B6321C}{3.1}} & \textbf{\textcolor[HTML]{B6321C}{3.0}} & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.5}} \\ - Drugi & (8) & \textbf{\textcolor[HTML]{F58137}{3.6}} & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{F58137}{3.6}} & \textbf{\textcolor[HTML]{B6321C}{1.9}} \\ - \hline & 24 & \textbf{\textcolor[HTML]{B6321C}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{longtable}{C{9cm}c|cccc} -\caption{Svetovalna pomoč študentom - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline \endfirsthead - \caption{Svetovalna pomoč študentom - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & 16 & 4.4 & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Drugi & (9) & 4.0 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 4.3 & 4.1 \\ - \hline & 25 & 4.2 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 4.3 \\ - \hline -\hline -\end{longtable} - - -\newpage - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Povprečno število tedensko porabljenih ur za doktorski študij - po letnikih} -\begin{tabular}{p{10cm}ccc} - \hline \hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{n} & \bfseries{Število ur} \\ - \hline -Humanistika in družboslovje interdisciplinarni & Prvi & 15 & 18 \\ - Humanistika in družboslovje interdisciplinarni & Drugi & 9 & 23 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{8cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\premalo}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\preveč}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistika in družboslovje interdisciplinarni & Prvi & 9 & 56 & 7 & 44 & 0 & 0 & 16 & 100 \\ - Humanistika in družboslovje interdisciplinarni & Drugi & 5 & 56 & 4 & 44 & 0 & 0 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistika in družboslovje interdisciplinarni & Prvi & 3 & 19 & 13 & 81 & 16 & 100 \\ - Humanistika in družboslovje interdisciplinarni & Drugi & 5 & 56 & 4 & 44 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistika in družboslovje interdisciplinarni & Prvi & 0 & 0 & 16 & 100 & 16 & 100 \\ - Humanistika in družboslovje interdisciplinarni & Drugi & 0 & 0 & 8 & 100 & 8 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"} -\begin{tabular}{p{5.5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{Predavanja}} & \multicolumn{2}{r}{\textbf{Konzultacije}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{\\Kombinacija\\obojega}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Prvi & 0 & 0 & 6 & 38 & 10 & 63 & 16 & 100 \\ - Humanistik. & Drugi & 1 & 11 & 2 & 22 & 6 & 67 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistika in družboslovje interdisciplinarni & Prvi & 16 & 100 & 0 & 0 & 16 & 100 \\ - Humanistika in družboslovje interdisciplinarni & Drugi & 2 & 22 & 7 & 78 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistika in družboslovje interdisciplinarni & Prvi & 3 & 19 & 13 & 81 & 16 & 100 \\ - Humanistika in družboslovje interdisciplinarni & Drugi & 7 & 78 & 2 & 22 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{2.5cm}ccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Mladi\\raziskovalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ml. raz.\\v gosp.}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\fin. sam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\delodajalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\drugi viri}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Prvi & 3 & 20 & 0 & 0 & 8 & 53 & 3 & 20 & 1 & 7 & 15 & 100 \\ - Humanistik. & Drugi & 2 & 22 & 0 & 0 & 6 & 67 & 0 & 0 & 1 & 11 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij?"} -\begin{tabular}{lccccccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Akad.\\kariera}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Osebni\\razvoj}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dobro\\imeti}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Koristno}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Brez\\zaposl.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Napred.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Drugo}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Prvi & 9 & 36 & 7 & 28 & 0 & 0 & 6 & 24 & 1 & 4 & 2 & 8 & 0 & 0 & 25 & 100 \\ - Humanistik. & Drugi & 6 & 27 & 7 & 32 & 3 & 14 & 3 & 14 & 0 & 0 & 2 & 9 & 1 & 5 & 22 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"} -\begin{tabular}{p{3.5cm}ccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se odločil\\enako}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se vpisal\\drugam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Se ne bi odločil\\za dr. študij}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ne vem}}}} -& \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Drugi & 6 & 67 & 2 & 22 & 0 & 0 & 1 & 11 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"} -\begin{tabular}{p{5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi\\program na UL}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi VŠ\\zavod v RS}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{V tujino}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistika in . & Prvi & 0 & . & 0 & . & 0 & . & 0 & 100 \\ - Humanistika in . & Drugi & 0 & 0 & 1 & 50 & 1 & 50 & 2 & 100 \\ - \hline -\end{tabular} -\end{table} - -\newpage -\clearpage\pagestyle{prvi}\section{Podrobna analiza: Prvi letnik}\subsection{Analiza dejavnikov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so bile sicer vključene v agregatne analize že v poglavju 5 in 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Osebje študentskega referata je odzivno in učinkovito. & 16 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & 16 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Osebje študentskega referata ima ustrezen odnos do študentov. & 16 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.5 \\ - \rowcolor[gray]{0.95}Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & 16 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & 16 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - \rowcolor[gray]{0.95}Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - Pogostost stikov z mentorjem/mentorico je primerna. & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - \rowcolor[gray]{0.95}Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - Informacije na spletnih straneh so dovolj jasne in celovite. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.6 \\ - \rowcolor[gray]{0.95}Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - Uradne ure študentskega referata so primerne. & 16 & 4.4 & 1.0 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & 16 & 4.3 & 0.9 \\ - Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & 15 & 4.3 & 1.0 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & 16 & 4.3 & 1.1 \\ - Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & 13 & 4.2 & 1.1 \\ - \rowcolor[gray]{0.95}V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & 15 & 4.1 & 1.2 \\ - Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & 15 & 4.0 & 1.3 \\ - \rowcolor[gray]{0.95}Ponudba izbirnih predmetov je ustrezna. & 14 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 0.9 \\ - Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & 15 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.1 \\ - \rowcolor[gray]{0.95}Imam možnost udeležbe na znanstvenih konferencah v tujini. & 15 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.5 \\ - Sem vključen/a v raziskovalno skupino / program / projekt. & 15 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 2.0 \\ - \rowcolor[gray]{0.95}Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & 16 & \textbf{\textcolor[HTML]{B6321C}{3.1}} & 1.7 \\ - Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & 14 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & 1.6 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] - \caption{Opisne statistike za dejavnike, urejene po povprečjih} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/grafVsehDejavnikov_prvi.pdf} - \end{figure}Najboljše je ocenjen dejavnik "Osebje študentskega referata je odzivno in učinkovito." (\textbf{\textcolor[HTML]{006666}{4.9}}) \\ \\Najslabše je ocenjen dejavnik "Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini." (\textbf{\textcolor[HTML]{B6321C}{3.0}})\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 16 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Ustrezen odnos osebja & 16 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.5 \\ - Celovite info. na spletni str. & 15 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.6 \\ - Uradne ure študentskega ref. & 16 & 2 & 5 & 4.4 & 1.0 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}Odzivnost mentorja po el. pošti & 16 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri znan. čl. & 15 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - \rowcolor[gray]{0.95}Mentor mi nudi podporo & 16 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri težavah & 16 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem & 16 & 4 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - \rowcolor[gray]{0.95}Ustrezno svetovanje mentorja & 16 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - \multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored izvajanja & 16 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Spremembe poteka & 16 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Razpored ur mi ustreza & 15 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - Pravilno navedeni izvajalci & 15 & 2 & 5 & 4.3 & 1.0 \\ - Infrastr. za pridobivanje virov & 16 & 2 & 5 & 4.3 & 1.1 \\ - Druga infrastruktura & 13 & 2 & 5 & 4.2 & 1.1 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & 16 & 2 & 5 & 4.3 & 0.9 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & 15 & 2 & 5 & 4.1 & 1.2 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & 15 & 1 & 5 & 4.0 & 1.3 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & 14 & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 0.9 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & 15 & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.1 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 15 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.5 \\ - Vključenost v razis. sk. & 15 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 2.0 \\ - Del študija ali razis. dela v tujini & 16 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.1}} & 1.7 \\ - Možnost študija/razis. dela v tuj. & 14 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & 1.6 \\ - \hline -\end{tabular} -\end{table} -\clearpage\newpage \begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike študijskega procesa po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:26 2017 - \hline \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 6 & 15 & 94 \\ - Ustrezen odnos osebja & 0 & 0 & 0 & 0 & 1 & 6 & 0 & 0 & 15 & 94 \\ - Celovite info. na spletni str. & 0 & 0 & 0 & 0 & 1 & 7 & 5 & 33 & 9 & 60 \\ - Uradne ure študentskega ref. & 0 & 0 & 2 & 12 & 0 & 0 & 3 & 19 & 11 & 69 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Odzivnost mentorja po el. pošti & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 12 & 14 & 88 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri znan. čl. & 0 & 0 & 0 & 0 & 1 & 7 & 2 & 13 & 12 & 80 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Mentor mi nudi podporo & 0 & 0 & 0 & 0 & 1 & 6 & 3 & 19 & 12 & 75 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri težavah & 0 & 0 & 0 & 0 & 1 & 6 & 3 & 19 & 12 & 75 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pogostost stikov z mentorjem & 0 & 0 & 0 & 0 & 0 & 0 & 5 & 31 & 11 & 69 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustrezno svetovanje mentorja & 0 & 0 & 0 & 0 & 2 & 12 & 3 & 19 & 11 & 69 \\ - \multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored izvajanja & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 19 & 13 & 81 \\ - Spremembe poteka & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 25 & 12 & 75 \\ - Razpored ur mi ustreza & 0 & 0 & 0 & 0 & 2 & 13 & 4 & 27 & 9 & 60 \\ - Pravilno navedeni izvajalci & 0 & 0 & 1 & 7 & 2 & 13 & 4 & 27 & 8 & 53 \\ - Infrastr. za pridobivanje virov & 0 & 0 & 2 & 12 & 1 & 6 & 4 & 25 & 9 & 56 \\ - Druga infrastruktura & 0 & 0 & 1 & 8 & 3 & 23 & 2 & 15 & 7 & 54 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 0 & 0 & 1 & 6 & 1 & 6 & 6 & 38 & 8 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 0 & 0 & 2 & 13 & 3 & 20 & 2 & 13 & 8 & 53 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 1 & 7 & 1 & 7 & 3 & 20 & 2 & 13 & 8 & 53 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 0 & 0 & 1 & 7 & 3 & 21 & 6 & 43 & 4 & 29 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 0 & 0 & 2 & 13 & 4 & 27 & 3 & 20 & 6 & 40 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 2 & 13 & 1 & 7 & 1 & 7 & 4 & 27 & 7 & 47 \\ - Vključenost v razis. sk. & 5 & 33 & 1 & 7 & 0 & 0 & 0 & 0 & 9 & 60 \\ - Del študija ali razis. dela v tujini & 5 & 31 & 2 & 12 & 1 & 6 & 3 & 19 & 5 & 31 \\ - Možnost študija/razis. dela v tuj. & 3 & 21 & 3 & 21 & 3 & 21 & 1 & 7 & 4 & 29 \\ - \hline \end{longtable}\newpage - - - - - - - - -\clearpage\clearpage\subsection{Podrobna analiza vseh spremenljivk po sklopih} - V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavji 4 in 5), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Infrastruktura in urniki - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Razpored izvajanja & 16 & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Spremembe poteka & 16 & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Razpored ur mi ustreza & 15 & 3 & 5 & 0.7 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Pravilno navedeni izvajalci & 15 & 2 & 5 & 1.0 & 4.3 \\ - Infrastr. za pridobivanje virov & 16 & 2 & 5 & 1.1 & 4.3 \\ - Druga infrastruktura & 13 & 2 & 5 & 1.1 & 4.2 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Infrastruktura in urniki - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis1_1letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Število tedensko porabljenih ur za doktorski študij}Študenti so v povprečju tedensko za svoj doktorski študij porabili \textbf{18 ur}. Standardni odklon znaša \textbf{14} ur.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Koliko časa povprečno tedensko porabite za svoj doktorski študij (vštejte vse obveznosti)?"} -\begin{tabular}{lp{3cm}p{1cm}p{1cm}} - \hline -\hline -\bfseries{} & \bfseries{Število ur} & \bfseries{n} & \bfseries{\%} \\ - \hline -Humanistika in družboslovje interdisciplinarni & 2 & 1 & 7 \\ - Humanistika in družboslovje interdisciplinarni & 3 & 1 & 7 \\ - Humanistika in družboslovje interdisciplinarni & 6 & 1 & 7 \\ - Humanistika in družboslovje interdisciplinarni & 7 & 1 & 7 \\ - Humanistika in družboslovje interdisciplinarni & 8 & 1 & 7 \\ - Humanistika in družboslovje interdisciplinarni & 10 & 2 & 13 \\ - Humanistika in družboslovje interdisciplinarni & 20 & 4 & 27 \\ - Humanistika in družboslovje interdisciplinarni & 25 & 2 & 13 \\ - Humanistika in družboslovje interdisciplinarni & 40 & 1 & 7 \\ - Humanistika in družboslovje interdisciplinarni & 50 & 1 & 7 \\ - \hline -Skupaj & 266 & 15 & 100 \\ - \hline -\hline -Povprečje & 18 & 15 & 100 \\ - Std. Odkl. & 14 & 15 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost časa za doktorski študij}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da, namenim ravno prav časa. & 9 & 56 \\ - Ne, namenim ga premalo, želel/a bi si več časa nameniti za svoj doktorski študij in raziskovalno delo & 7 & 44 \\ - Ne, namenim ga preveč, želel/a bi si manj časa nameniti za svoj doktorski študij in raziskovalno delo & 0 & 0 \\ - \hline -Skupaj & 16 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite zakaj."} \\ - \hline - \\[-0.4cm] \hline -\textit{Obdobjem intenzivnega dela sledijo obdobja, ko delo za doktorat stoji. Porabljenega časa mi ni škoda, ker menim, da vlagam v svoj osebni razvoj. Želela bi si, da bi imela več prostega časa, ki bi ga lahko namenila študiju, ker študiram ob delu in družini.} \\ - \rowcolor[gray]{0.95}\textit{Predmetnik ni bil zahteven. Priznano sem imel metodologijo. O raziskovanju sem razmišljal že pred vpisom na študij, tako da sem bil že s teorijo, raziskavami, ipd. seznanjen in nisem potreboval veliko časa.} \\ - \textit{Because I'm working full time (40 hours a week)} \\ - \rowcolor[gray]{0.95}\textit{Težko uskladim službene in študijske obveznosti.} \\ - \textit{ SLUŽBENE OBVEZNOSTI} \\ - \rowcolor[gray]{0.95}\textit{25 skozi celotno leto, v času opravljanja obveznosti primerno več (tudi prek 60). Želel bi ga nameniti več, a zaradi ostalih obveznosti to ni možno} \\ - \textit{Za bolj poglobljeno raziskovanje bi bilo potrebno več časa.} \\ - \hline -\hline -\end{longtable} -\clearpage \subsubsection{Izbira predmeta na drugih programih UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 3 & 19 \\ - Ne & 13 & 81 \\ - \hline -Skupaj & 16 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:" je velika večina študentov (81 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 19 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Študije spola } \\ - \rowcolor[gray]{0.95}\textit{psihologija} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kateri predmet ste izbrali?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Doktorski seminar} \\ - \rowcolor[gray]{0.95}\textit{socialna psihologija} \\ - \hline -\hline -\end{longtable} -\subsubsection{Izbira predmeta izven UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 0 & 0 \\ - Ne & 16 & 100 \\ - \hline -Skupaj & 16 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi." je velika večina študentov (100 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 0 \% študentov.\clearpage\subsubsection{Zadovoljstvo z izvajanjem programov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Zadovoljstvo z izvajanjem prog. & 16 & 2 & 5 & 0.9 & 4.3 \\ - Spodbujanje kritične razprave & 15 & 2 & 5 & 1.2 & 4.1 \\ - Uporabnost za dr. dizertacijo & 15 & 1 & 5 & 1.3 & 4.0 \\ - Ustreznost izbirnih predmetov & 14 & 2 & 5 & 0.9 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Pridobitev generičnih znanj & 15 & 2 & 5 & 1.1 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis2_1letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Primerna oblika izvedbe predmetov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -kombinacija obojega & 10 & 63 \\ - konzultacije & 6 & 38 \\ - predavanja & 0 & 0 \\ - \hline -Skupaj & 16 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite, zakaj:"} \\ - \hline - \\[-0.4cm] \hline -\textit{Po mojem mnenju s kombinacijo obojega izkoristimo prednosti tako konzultacij kot predavanj. } \\ - \rowcolor[gray]{0.95}\textit{Konzultacije so primernejše za individualne usmeritve, predavanja pa za bolj temeljne vsebine.} \\ - \textit{Participacija študentov se mi zdi zelo pomembna, prav tako več strokovnjakov pri reševanju problema. Različni pogledi in mnenja so podlaga za diskusijo, ki vodi k rešitvam.} \\ - \rowcolor[gray]{0.95}\textit{Na tej stopnji študija, mi je bolj pomembno, da se lahko osredotočam na svojo temo in da imam za svojo temo primerne konzultacije. Veliko predavanj sem že imela na 1. in 2. stopnji študija in bi se na podlagi že pridobljenih znanj, raje poglobila v svojo temo kot pa se učila ponovno stvari, ki niso povezane z mojo temo. } \\ - \textit{Kombinacija predavanj in konzultacij je po mojem mnenju bistvena za pridobitev poglobljenega znanja, kritik, komentarjev. } \\ - \rowcolor[gray]{0.95}\textit{Možnost lastnega organiziranja procesa izvedbe doktorata.} \\ - \textit{ BOLJ FOKUSIRANA RAZPRAVA (GLEDE NA TEMO DOKTORATA)} \\ - \rowcolor[gray]{0.95}\textit{Na tej stopnji študija so teoretične vsebine že osvojene, potrebnega je veliko samostojnega raziskovanja, za katerega pa lahko zaradi ponavljajočih se vsebin na več stopnjah študija, zmanjka časa.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"} \\ - \hline - \\[-0.4cm] \hline -\textit{Morda bi del snovi za izpit Teorije družbe lahko opravljali v obliki individualnih seminarskih nalog pri katerem od nosilcev predmeta, ki bi se že nanašal na tematiko, ki jo študent raziskuje v svoji disertaciji. Na ta način bi študent pridobil znanje, obenem pa bi s pripravljeno in ocenjeno seminarsko nalogo že imel narejen delček doktorske disertacije. } \\ - \rowcolor[gray]{0.95}\textit{Kar tako naprej.} \\ - \textit{Meni so zelo pomembne konzultacije in seminarji. Zelo bi bil uporaben seminar na področju statistike in statistične obdelave podatkov za doktorska dela. } \\ - \rowcolor[gray]{0.95}\textit{Organizirani doktorski seminar je bil izjemno produktivna in učinkovita metoda poglabljanja in raziskovanja področja doktorske tematike ter učenja pisanja znanstvenih člankov. } \\ - \textit{Večina predavanj je bila zasnovana klasično ex catedra brez debate o prebranem ali možnosti ter spodbujanja dodatnih vprašanj in komentarjev. Veliko predavateljic/predavateljev je imelo na začetku predavanj predstavitev študentov, ki so trajale tudi do 45 minut. Vsakotedensko (včasih celo dvakrat tedensko) predstavljanje študentk/študentov, ki se že poznamo je odbijajoče in velikokrat zgolj zapolnjuje čas namenjen predavanjem. Na določenih predavanjih je bil nivo angleščine zelo nizek tako, da je bilo težko slediti predavanjem in še težje vzpostaviti diskusijo. Velika večina predavanj, z nekaj izjemami je trajala dvakrat 45 minut in ne trikrat 45 minut kot je predvideno po urniku. Velikokrat literatura ni bila usklajena med izvedbenim načrtom in prosojnicami (angleškimi in slovenskimi), ker so prosojnice verjetno pripravljene nekaj let vnaprej. Primer: prvo predavanje pri predmetu Metodologija in epistemologija družbenih ved. V kolikor obveljajo samo angleške prosojnice je nemogoče odgovoriti na četrto izpitno vprašanje: Kateri razlogi so povzročili povečanje skrbi za zasebnost v družboslovnem raziskovanju v zadnjih desetletjih?, ki je enako tako na angleških kot slovenskih prosojnicah, dejansko pa je odgovor podan v slovenskem članku Malnar, Brina (2010): Raziskovalna etika med znanostjo, zasebnostjo in birokracijo. Družboslovne razprave, 26 (64): 7-24. Določena predavanja so bila slabo strukturirana ali pa so naslovila zgolj majhen aspekt tematike iz literature (npr. Mali, Žiberna, Cipek, Rizman, Bernik). Večina predavateljev predava osnove, ki bi si jih lahko prebrali vnaprej sami pa bi podajali primere svojih raziskav določene metodologije (predmet Metodologija) ali najsodobnejše uporabe določenih teoretskih okvirov – odpiranja novih aktualnih vprašanj (predmet Teorije). Vsekakor 4-5 knjig ni realnih, da bi jih prebrali za vsako predavanje. Lahko bi bili 2-3 je pregledni članki, ki odpirajo polje in odpirajo vprašanja. Predmet Metodologija in epistemologija družbenih ved naslavlja večinsko zgolj kvantitativne metode. Brez pojasnitve, zakaj so multivariatne analize pomembne v družboslovnem raziskovanju – nobene refleksije (z redkimi izjemami) kaj te metode predstavljajo za raziskovanje v družboslovju, kako se jih uporabi, kako so bile uporabljene pri raziskovanju družbenih fenomenov, kakšna je raziskovalna pozicija (specifične) raziskave in nenazadnje metode. Predavanje ex catedra brez možnosti sledenja predavanju. Razmisleki o ontoloških pozicijah in razlaga dojemanja epistemologije zelo pomanjkljiva } \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 16 & 100 \\ - Ne & 0 & 0 \\ - \hline -Skupaj & 16 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v letošnjem letu temeljne obvezne predmete?" je velika večina študentov (100 \%) odgovorila z "Da", odgovor "Ne" pa je podalo 0 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Some literature for the core courses is not well adopted. Namely, some text's are overburdening as they are not relevant for the elected study program. As such, the University should be careful when selecting the literature to adopt to the needs of students. Furthermore, the (long 4 hours) written exams are not in line with modern education. Especially at the PhD level research should be promoted through extensive research and writing of academic article. These articles then could be published by the student and mentor. } \\ - \rowcolor[gray]{0.95}\textit{I didn't like the mandatory courses because the subjects were not related to my research area} \\ - \textit{Ustrezen in smiseln se mi je zdel izbor snovi in širina zahtevanega znanja. Predavanja so malce nihala v kvaliteti, vendar menim, da so bila na splošno koristna in potrebna za pripravo na izpit. Menim, da je potrebno, da se pred doktorske študente postavi nek zahtevnejši izpit, s katerim se morajo dokazati. } \\ - \rowcolor[gray]{0.95}\textit{Več priložnosti za kritično analizo in diskusije.} \\ - \textit{Predavatelji za predmet Teorija družbe so bili v večini odlični.} \\ - \rowcolor[gray]{0.95}\textit{zelo mi je bila všeč širina, ki sta jo temeljna predmeta pokrila in zajela. Prav tako mi je bilo zelo všeč, da so predavali različni predavatelji, ki so vsebino predstavili iz različnih zornih kotov. } \\ - \textit{Izvedba predmetov je bila odlična. Pohvalila bi nabor tujih predavateljev. prenos njihovega znanja na nas študente zelo cenim.} \\ - \rowcolor[gray]{0.95}\textit{Kot sem že omenila pri prejšnjem odgovoru. Znanja, ki sem jih pridobila pri predmetu Teorije družbe, nimajo nobene povezave z mojo temo in interesi. Predvsem mi je bilo težko, ko smo se predstavljali vsakemu profesorju in mu razložili kaj nas zanima pri njihovi tematiki. Na žalost sem svojo temo težko navezala na njihove. Zato tudi ni prišlo do konstruktivne debate, kar se mi zdi pomembno na tej stopnji študija in sem to pri tem predmetu zelo pogrešala. Pohvalila bi organizacijo predmeta. Menim, da je bil predmet Metodologija in epistemologija družbenih ved zelo dobro organiziran in večina profesorjev je bila dobro pripravljena na njihova predavanja. Spremenila bi, da bi imeli manj predavanj in dodala praktično delo. Lahko bi bil predmet razdeljen na dva dela. Prvi del predavanja bi bil teoretičen del, drugi del bi bil lahko praktičen. } \\ - \textit{Nimam pripomb. } \\ - \rowcolor[gray]{0.95}\textit{Nekaj konstruktivnih kritik je bilo podanih že predhodno. - Večja vključenost mlajšega pedagoškega osebja in raziskovalk ter raziskovalcev na predavanja. Predavanja mlajših (npr. Olofsson, Trivundža, Štiks, Horvat) so bila najbolj strukturirana in vsebovala največ lastnih raziskav in teoretskih refleksij, - Vsebinska sprememba Metodologije in epistemologije družbenih ved, ki poleg dveh splošnih predavanj (Etika in epistemologija), vsebuje 6 kvantitativnih in 2 kvalitativni predavanji. Verjetno bi bilo bolj smiselno deliti kvalitativne in kvantitativne metodologije in omogočiti študentom da poglobijo specifično metodologijo, - Sprememba formata izpita pri Metodologiji in epistemologiji družbenih ved – veliko bolj smiselno bi bilo narediti predlog metodološkega dela doktorske disertacije, kot pa klasičen (dodiplomski izpit), ki zahteva pomnjenje in posledično pozabo določenih faktov. Zanimivo bi bilo opraviti poskus ali lahko študent dodiplomskega študija opravi izpit iz metodologije ob predpostavki, da dobi vprašanja in izpolnjene odgovore. Klasični izpiti na doktorskem študiju ne služijo usmeritvi doktorskega študenta temveč perpetuirajo prakso iz dodiplomskega študija. - Sprememba formata izpita pri Teorijah družbe – bolj smiselno bi bilo zahtevati teoretsko zasnovo in refleksijo doktorske disertacije kot pa štiriurno opravljanje izpita, - Pod obvezno literaturo naj se navede 2-3 pregledne znanstvene članke, 1 znanstveno monografijo (ali nekaj poglavji), pod dodatno pa več literature za nadaljnjo usmeritev in bolj poglobljeno spoznavanje s tematiko. Vsekakor je nerealno pričakovati, da je potrebno prebrati 5 in več monografij (denimo Mali, Kogovšek, Lozar Manfreda, Rizman). Literatura naj bo usklajena pred začetkom predavanj in dostopna v Fori ali v knjižnici, - Predavanja zasnovana z vključitvijo sodobnih teoretskih premislekov in aplikacijo uporabljene metodologije v lastnih raziskavah ter najpomembnejših raziskavah na področju ter hkrati tudi z debato med ali ob koncu predavanj, } \\ - \textit{KONCEPT KONZULTACIJ (IN PISANJE PRISPEVKOV) Z MENTORJEM IN NOSILCI PREDMETOV JE USTREZEN, SAJ OMOGOČA NASTANEK NOVIH IDEJ IN ŠE BOLJ OSREDOTOČA/IZŠČISTI IDEJO/TEMO DOKTORSKE NALOGE. NEPOSREDNE KRITIKE NIMAM, SAJ JE SODELOVANJE MED MENTORJEM, NOSILCI PREDMETA, KOMISIJO ODVISNO TUDI OD ČASOVNE RAZPOLOŽLJIVOSTI KANDIDATA.} \\ - \rowcolor[gray]{0.95}\textit{Morda bi razdelal izpit (Teorije družbe) na več manjših enot, saj je resnično obsežen} \\ - \textit{Preveč teoretičnih vsebin, potrebno bi bilo več samostojnega dela, branja in pisanja člankov, kritik, raziskav...} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"} \\ - \hline - \\[-0.4cm] \hline -\textit{As stated 4 hours written exams are outdated and discourages the research, which is the main purpose of PhD studies. This practice should be abolished in order for the University of Ljubljana to progress and be compliant with other European Universities. } \\ - \rowcolor[gray]{0.95}\textit{I would prefer the examination consisted in writing a paper on a topic of my choice (related to the course) instead of the question-answer exam as it is now} \\ - \textit{Morda je malce moteče le to, da se vse obsežno in naporno delo, ki ga vložiš v pripravo na izpit, konkretno ne navezuje na samo disertacijo. } \\ - \rowcolor[gray]{0.95}\textit{Pri teoriji družbe bi bilo potrebno razmisliti o potrebni po prebiranju obsežnih knjig. V tujini in tudi na drugih fakultetah univ. v Ljubljani (npr. na Socilogiji) imajo za izpite namesto knjig za proučiti članke. Skratka preobsežno in neučinkovito. Metodologija je izvedena jedernato, konkretno in korektno s strani predavateljev.} \\ - \textit{Res me je razveselilo, da smo izpit pri teoriji družbe pisali v wordu. } \\ - \rowcolor[gray]{0.95}\textit{Mogoče bi lahko pri študentih iskali več kritičnega razmišljanja.} \\ - \textit{Pri predmetu Teorije družbe se mi zdi izpit preobsežen, saj kot sem že omenila, se učim nekaj kar nima povezave z mojo temo. Na tej stopnji študija bi raje posvečala čas statistični obdelavi podatkov in tematiki, ki je pomembna za mojo doktorsko nalogo.} \\ - \rowcolor[gray]{0.95}\textit{Strinjam se z načinom preverjanja znanja. } \\ - \textit{Pojasnjeno predhodno} \\ - \rowcolor[gray]{0.95}\textit{PREVERJANJE ZNANJA JE USTREZEN.} \\ - \textit{Primeren} \\ - \rowcolor[gray]{0.95}\textit{Preobsežen/predolg izpit pri predmetu Temelji družbe.} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 3 & 19 \\ - Ne & 13 & 81 \\ - \hline -Skupaj & 16 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v letošnjem letu izbirne predmete?" je velika večina študentov (81 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 19 \% študentov.\newpage\clearpage\subsubsection{Pomoč in podpora mentorja}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:27 2017 -\begin{table}[ht] -\centering -\caption{Pomoč in podpora mentorja - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Odzivnost mentorja po el. pošti & 16 & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Pomoč mentorja pri znan. čl. & 15 & 3 & 5 & 0.6 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Mentor mi nudi podporo & 16 & 3 & 5 & 0.6 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Pomoč mentorja pri težavah & 16 & 3 & 5 & 0.6 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Pogostost stikov z mentorjem & 16 & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Ustrezno svetovanje mentorja & 16 & 3 & 5 & 0.7 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis3_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Mentorica Izr. prof. Iglič je odlična mentorica. Ima odlične karakteristike za mentorja. Je strokovn in z veliko znanja in izkušenj. Zahtevna, prožna, nevzvišena, pripravljena maksimalno pomagati in z veliko mero empatije. Dobra oseba.} \\ - \rowcolor[gray]{0.95}\textit{Sodelovanje je odlično! Lahko samo pohvalim tako podporo, odzivnost kot vse ostalo. } \\ - \textit{Moj mentor je zelo odziven. Zna prisluhniti. Moje mnenje upošteva. Do mojega dela je konstruktivno kritičen, kar mi pomaga do boljših rezultatov. Pohvalila bi njegovo strokovnost in njegovo dosedanje delo. } \\ - \rowcolor[gray]{0.95}\textit{Sodelovanje z mentorico je zelo dobro. } \\ - \textit{Sodelovanje bi ocenila kot odlično, saj me mentorica vodi, pomaga in uči. Spremenila nebi nič. } \\ - \rowcolor[gray]{0.95}\textit{SODELOVANJE JE DOBRO IN KONTINUIRANO, DOPUŠČA DOVOLJ MANEVERSKEGA PROSTORA ZA LASTEN RAZVOJ IDEJ, HKRATI PA, KO JE POTREBNO, KRITIČNO OVREDNOTI DELO IN PREDLAGA USTREZNE USMERITVE. } \\ - \textit{Samo dobro!} \\ - \hline -\hline -\end{longtable} -\subsubsection{Doktorska disertacija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste pred vpisom na doktorski študij že imeli idejo/raziskovalni načrt za doktorsko disertacijo:"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 14 & 93 \\ - Ne & 1 & 7 \\ - \hline -Skupaj & 15 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste pred vpisom na doktorski študij že imeli idejo/raziskovalni načrt za doktorsko disertacijo:" je velika večina študentov (93 \%) odgovorila z "Da", odgovor "Ne" pa je podalo 7 \% študentov.\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?"} \\ - \hline - \\[-0.4cm] \hline -\textit{I have already the first draft of the article. I have full support in this regard from the head of the department.} \\ - \rowcolor[gray]{0.95}\textit{Pisanje člankov se mi zdi nujna sestavina doktorskega študija. Članka sicer še nisem začela pisati, pričakujem pa, da me bo mentor s konstruktivno in jasno kritiko usmerjal tako, da bo članek povsem ustrezen za objavo, ko bo dokončan. } \\ - \textit{Pripravljen je osnutek, ki ga bom v naslednjem letu še dodelala - ne pričakujem težav. } \\ - \rowcolor[gray]{0.95}\textit{Članek sem napisal in objavil. Nisem imel težav.} \\ - \textit{Sem v prvi fazi postopka, pregledujem literaturo, članke in ostala strokovna gradiva. Prav tako sem v fazi pridobivanja podatkov za analizo. } \\ - \rowcolor[gray]{0.95}\textit{Zametki članka že obstajajo, prav tako sva dogovorjena z bivšim mentorjem za soavtorstvo. Imam pa precej dela še na disertaciji. } \\ - \textit{Nimam težav, imam že dva znanstvena članka v procesu objave. } \\ - \rowcolor[gray]{0.95}\textit{DA, VEČ ČLANKOV (TUDI V OKVIRU OBSTOJEČIH PROJEKTOV NA FAKULTETI). TEŽAVE SE VEČINOMA NANAŠAJO NA DOLGOTRAJNOST PISANJA, DELOMA JE ŠE VEDNO NESTRUKTURIRANO IN PREMALO KONCIZNO.} \\ - \textit{Ga že pišem, ob tem ni bilo težav.} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Del študija in ostale aktivnosti v tujini}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{table}[ht] -\centering -\caption{Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Možnost udeležbe konf. v tujini & 15 & 1 & 5 & 1.5 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Vključenost v razis. sk. & 15 & 1 & 5 & 2.0 & \textbf{\textcolor[HTML]{F58137}{3.5}} \\ - Del študija ali razis. dela v tujini & 16 & 1 & 5 & 1.7 & \textbf{\textcolor[HTML]{B6321C}{3.1}} \\ - Možnost študija/razis. dela v tuj. & 14 & 1 & 5 & 1.6 & \textbf{\textcolor[HTML]{B6321C}{3.0}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis4_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Tematika disertacije se navezuje na moje službeno delo in me ne napotuje na povezovanja s tujino, tudi nimam ambicij glede akademske kariere.} \\ - \rowcolor[gray]{0.95}\textit{Nisem razmišljala v tej smeri. Imam službo za nedoločen čas. V kolikor bi šla študirat v tujino, to pomeni, da bi se morali nadrejeni strinjati s suspenzom moje pogodbe o zaposlitvi.} \\ - \textit{Nudi mi vse potrebno. } \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Svetovalna pomoč študentom}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Odzivnost in učinkovitost ref. & 16 & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Ustrezen odnos osebja & 16 & 3 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Celovite info. na spletni str. & 15 & 3 & 5 & 0.6 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Uradne ure študentskega ref. & 16 & 2 & 5 & 1.0 & 4.4 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis5_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Vaši predlogi glede delovanja referata in svetovanja študentom."} \\ - \hline - \\[-0.4cm] \hline -\textit{Delovanje referata je po mojem mnenju za sedaj odlično in rada bi pohvalila gospo Meto Gnidovec, pri kateri sem vedno pridobila vse informacije, ki sem jih potrebovala.} \\ - \rowcolor[gray]{0.95}\textit{Če karkoli rabim se prej pozanimam na internetu in nato na podlagi informacij kontaktiram referat. Vsi študentje se prilagajamo uradnim uram referata. drugače ne gre.} \\ - \textit{META GNIDOVEC JE ODLIČNA.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali je prvo leto študija izpolnilo vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{The professors, including the head of department are very professional and supportive. One remark I would say it is that the advert for the course is different more extensive than the lectures / knowledge we have received. In the advert for the course there is a big number of subjects proposed to be covered, while at least in the first year only few of them have been covered. } \\ - \rowcolor[gray]{0.95}\textit{Moje prvo leto študija je potekalo uspešno in v skladu s pričakovanji, ki sem jih imela - torej da bo težko, vendar tudi zanimivo. V nadaljevanju pričakujem zelo individualno delo, morda bom pogrešala izmenjavo mnenj s kolegi. Opažam, da se doktorski študentje po izhodiščih in ciljih precej razlikujemo med seboj. Za sedaj lahko rečem, da sem s študijem zadovoljna.} \\ - \textit{Bolj enakomerna porazdelitev tem pri temeljnih predmetih, ki so zaenkrat precej bolj politološko kot pa sociološko naravnani. Moja pričakovanja so izpolnili predvsem doktorski seminarji, ki mi omogočajo, da se poglobim v teme, ki me raziskovalno in teoretsko najbolj zanimajo.} \\ - \rowcolor[gray]{0.95}\textit{Prvo leto je izpolnilo moja pričakovanja. Res se veselim nadaljnjega dela na doktorskem študiju.} \\ - \textit{Všeč so mi predavanja v angleščini. Odlično je poskrbljeno za posredovanje gradiva s predavanj. Mogoče bi zmanjšala šolnino :-)} \\ - \rowcolor[gray]{0.95}\textit{Opravljala sem samo 1. semester. Pohvalila bi organizacijo študija. Dodala bi praktično delo. } \\ - \textit{Pohvalila bi vestnost in odzivnost vseh strokovnih delavcev v spletnem referatu, prav tako pa mentorja in raziskovalno skupino, ki mi daje vse potrebne predispozicije in nove priložnosti za kvalitetno delo. } \\ - \rowcolor[gray]{0.95}\textit{GLEDE NA TO DA SEM ZAPOSLENA KOT RAZISKOVALKA IN ASISTENTKA NA FAKULTETI, SE VEČINO ČASA UKVARJAM Z RAZISKOVANJEM IN SEM V NENEHNEM STIKU Z MENTORJEM IN OSTALIMI KOLEGI NA FAKULTETI. V TEM KONTEKSTU JE GLEDE NA NARAVO MOJEGA DELA, PROGRAM USTREZEN.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Način študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Sem mladi raziskovalec / mlada raziskovalka & 3 & 20 \\ - Sem mladi raziskovalec/ mlada raziskovalka v gospodarstvu, & 0 & 0 \\ - Sem doktorski študent/doktorska študentka, ki se financira sam/a, & 8 & 53 \\ - Sem doktorski študent/doktorska študentka, ki mi šolnino plačuje delodajalec, & 3 & 20 \\ - Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih): & 1 & 7 \\ - \hline -Skupaj & 15 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Razlog študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij? Možnih je več odgovorov."} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline - Študij sem izbral/a, ker želim imeti akademsko kariero, & 9 & 36 \\ - Študij sem izbral/a zaradi želje po osebnem razvoju in napredku, & 7 & 28 \\ - Študij sem izbral/a, ker menim, da je dobro imeti doktorsko izobrazbo, & 0 & 0 \\ - Študij sem izbral/a, ker menim, da mi bo pridobljeno znanje koristilo na mojem delovnem mestu, & 6 & 24 \\ - Študij sem izbral/a, ker nisem dobil/a zaposlitve, & 1 & 4 \\ - Študij sem izbral/a, da bi lahko napredoval/a na delovnem mestu. & 2 & 8 \\ - Drugo: & 0 & 0 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Odločitev o vpisu}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: Če bi se danes odločali o vpisu na doktorski študij:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -bi se odločil/a enako & 15 & 100 \\ - bi se vpisal/a drugam & 0 & 0 \\ - se ne bi odločil/a za doktorski študij & 0 & 0 \\ - ne vem & 0 & 0 \\ - \hline -Skupaj & 15 & 100 \\ - \hline -\end{tabular} -\end{table} -\clearpage\subsubsection{Alternativni vpis} - Študenti na to vprašanje niso podali odgovorov.\subsubsection{Dodatni komentarji študentov} - -\newpage\pagestyle{drugi}\section{Podrobna analiza: Drugi letnik}\subsection{Analiza dejavnikov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so bile sicer vključene v agregatne analize že v poglavju 5 in 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:28 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & (9) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & (9) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & (9) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & (7) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & (9) & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem/mentorico je primerna. & (9) & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & (9) & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - \rowcolor[gray]{0.95}S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & (9) & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - Osebje študentskega referata je odzivno in učinkovito. & (9) & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 1.0 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & (9) & 4.4 & 1.0 \\ - Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & (9) & 4.4 & 1.3 \\ - \rowcolor[gray]{0.95}Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & (9) & 4.3 & 1.0 \\ - Osebje študentskega referata ima ustrezen odnos do študentov. & (9) & 4.3 & 1.4 \\ - \rowcolor[gray]{0.95}Informacije na spletnih straneh so dovolj jasne in celovite. & (9) & 4.1 & 0.9 \\ - Uradne ure študentskega referata so primerne. & (9) & 4.0 & 1.6 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & (9) & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.5 \\ - Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & (9) & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.2 \\ - \rowcolor[gray]{0.95}V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & (9) & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - Ponudba izbirnih predmetov je ustrezna. & (9) & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.3 \\ - \rowcolor[gray]{0.95}Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & (9) & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.6 \\ - Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & (6) & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.5 \\ - \rowcolor[gray]{0.95}Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & (8) & \textbf{\textcolor[HTML]{F58137}{3.6}} & 1.7 \\ - Imam možnost udeležbe na znanstvenih konferencah v tujini. & (8) & \textbf{\textcolor[HTML]{F58137}{3.6}} & 1.3 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & (8) & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.4 \\ - Sem vključen/a v raziskovalno skupino / program / projekt. & (9) & \textbf{\textcolor[HTML]{B6321C}{1.9}} & 1.8 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] - \caption{Opisne statistike za dejavnike, urejene po povprečjih} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/grafVsehDejavnikov_drugi.pdf} - \end{figure}Najboljše so ocenjeni dejavniki "Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu." (\textbf{\textcolor[HTML]{006666}{5.0}}), "Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu." (\textbf{\textcolor[HTML]{006666}{5.0}}), "Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna." (\textbf{\textcolor[HTML]{006666}{5.0}}) in "Pomoč mentorja pri pripravi znanstvenega članka je ustrezna." (\textbf{\textcolor[HTML]{006666}{5.0}}). \\ \\Najslabše je ocenjen dejavnik "Sem vključen/a v raziskovalno skupino / program / projekt." (\textbf{\textcolor[HTML]{B6321C}{1.9}})\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ Mentor mi nudi podporo & (9) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Ustrezno svetovanje mentorja & (9) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pomoč mentorja pri znan. čl. & (7) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pomoč mentorja pri težavah & (9) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Pogostost stikov z mentorjem & (9) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Odzivnost mentorja po el. pošti & (9) & 1 & 5 & 4.4 & 1.3 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ \rowcolor[gray]{0.95}Pravilno navedeni izvajalci & (9) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Razpored izvajanja & (9) & 4 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - \rowcolor[gray]{0.95}Spremembe poteka & (9) & 4 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - \rowcolor[gray]{0.95}Razpored ur mi ustreza & (9) & 3 & 5 & 4.3 & 1.0 \\ - \rowcolor[gray]{0.95}Infrastr. za pridobivanje virov & (9) & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.5 \\ - \rowcolor[gray]{0.95}Druga infrastruktura & (8) & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.4 \\ - \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & (9) & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 1.0 \\ - Ustrezen odnos osebja & (9) & 1 & 5 & 4.3 & 1.4 \\ - Celovite info. na spletni str. & (9) & 3 & 5 & 4.1 & 0.9 \\ - Uradne ure študentskega ref. & (9) & 1 & 5 & 4.0 & 1.6 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & (9) & 2 & 5 & 4.4 & 1.0 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & (9) & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.2 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & (9) & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & (9) & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.3 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & (9) & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.6 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost študija/razis. dela v tuj. & (6) & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.5 \\ - Del študija ali razis. dela v tujini & (8) & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.6}} & 1.7 \\ - Možnost udeležbe konf. v tujini & (8) & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.6}} & 1.3 \\ - Vključenost v razis. sk. & (9) & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{1.9}} & 1.8 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike študijskega procesa po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 - \hline \multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ Mentor mi nudi podporo & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 9 & 100 \\ - Ustrezno svetovanje mentorja & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 9 & 100 \\ - Pomoč mentorja pri znan. čl. & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 7 & 100 \\ - Pomoč mentorja pri težavah & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 11 & 8 & 89 \\ - Pogostost stikov z mentorjem & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 11 & 8 & 89 \\ - Odzivnost mentorja po el. pošti & 1 & 11 & 0 & 0 & 0 & 0 & 1 & 11 & 7 & 78 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pravilno navedeni izvajalci & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 9 & 100 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Razpored izvajanja & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 33 & 6 & 67 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spremembe poteka & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 33 & 6 & 67 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Razpored ur mi ustreza & 0 & 0 & 0 & 0 & 3 & 33 & 0 & 0 & 6 & 67 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Infrastr. za pridobivanje virov & 1 & 11 & 1 & 11 & 1 & 11 & 1 & 11 & 5 & 56 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Druga infrastruktura & 0 & 0 & 3 & 38 & 1 & 12 & 1 & 12 & 3 & 38 \\ - \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 0 & 0 & 1 & 11 & 0 & 0 & 1 & 11 & 7 & 78 \\ - Ustrezen odnos osebja & 1 & 11 & 0 & 0 & 1 & 11 & 0 & 0 & 7 & 78 \\ - Celovite info. na spletni str. & 0 & 0 & 0 & 0 & 3 & 33 & 2 & 22 & 4 & 44 \\ - Uradne ure študentskega ref. & 1 & 11 & 1 & 11 & 1 & 11 & 0 & 0 & 6 & 67 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 0 & 0 & 1 & 11 & 0 & 0 & 2 & 22 & 6 & 67 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 0 & 0 & 2 & 22 & 0 & 0 & 4 & 44 & 3 & 33 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 0 & 0 & 2 & 22 & 1 & 11 & 2 & 22 & 4 & 44 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 1 & 11 & 0 & 0 & 3 & 33 & 2 & 22 & 3 & 33 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 2 & 22 & 0 & 0 & 0 & 0 & 4 & 44 & 3 & 33 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost študija/razis. dela v tuj. & 1 & 17 & 0 & 0 & 1 & 17 & 2 & 33 & 2 & 33 \\ - Del študija ali razis. dela v tujini & 2 & 25 & 0 & 0 & 0 & 0 & 3 & 38 & 3 & 38 \\ - Možnost udeležbe konf. v tujini & 0 & 0 & 2 & 25 & 2 & 25 & 1 & 12 & 3 & 38 \\ - Vključenost v razis. sk. & 7 & 78 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 22 \\ - \hline \end{longtable} \newpage\subsection{Podrobna analiza vseh spremenljivk po sklopih} V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavji 4 in 5), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[ht] -\centering -\caption{Infrastruktura in urniki - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Pravilno navedeni izvajalci & (9) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Razpored izvajanja & (9) & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Spremembe poteka & (9) & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Razpored ur mi ustreza & (9) & 3 & 5 & 1.0 & 4.3 \\ - Infrastr. za pridobivanje virov & (9) & 1 & 5 & 1.5 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Druga infrastruktura & (8) & 2 & 5 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.5}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Infrastruktura in urniki - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis1_2letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Število tedensko porabljenih ur za doktorski študij}Študenti so v povprečju tedensko za svoj doktorski študij porabili \textbf{23 ur}. Standardni odklon znaša \textbf{12} ur.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Koliko časa povprečno tedensko porabite za svoj doktorski študij (vštejte vse obveznosti)?"} -\begin{tabular}{lp{3cm}p{1cm}p{1cm}} - \hline -\hline -\bfseries{} & \bfseries{Število ur} & \bfseries{n} & \bfseries{\%} \\ - \hline -Humanistika in družboslovje interdisciplinarni & 5 & 1 & 11 \\ - Humanistika in družboslovje interdisciplinarni & 12 & 1 & 11 \\ - Humanistika in družboslovje interdisciplinarni & 15 & 1 & 11 \\ - Humanistika in družboslovje interdisciplinarni & 20 & 2 & 22 \\ - Humanistika in družboslovje interdisciplinarni & 25 & 1 & 11 \\ - Humanistika in družboslovje interdisciplinarni & 30 & 1 & 11 \\ - Humanistika in družboslovje interdisciplinarni & 40 & 2 & 22 \\ - \hline -Skupaj & 207 & 9 & 100 \\ - \hline -\hline -Povprečje & 23 & 9 & 100 \\ - Std. Odkl. & 12 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost časa za doktorski študij}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da, namenim ravno prav časa. & 5 & 56 \\ - Ne, namenim ga premalo, želel/a bi si več časa nameniti za svoj doktorski študij in raziskovalno delo & 4 & 44 \\ - Ne, namenim ga preveč, želel/a bi si manj časa nameniti za svoj doktorski študij in raziskovalno delo & 0 & 0 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost trajanja doktorskega študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ocenjujete, da je triletno trajanje doktorskega študija ustrezno?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -da, ravno prav & 4 & 44 \\ - ne vem / ne morem oceniti & 2 & 22 \\ - ne, predolgo & 0 & 0 \\ - ne, prekratko & 3 & 33 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite zakaj. "} \\ - \hline - \\[-0.4cm] \hline -\textit{Trajanje študija ocenjujem kot prekratko, ker je veliko doktorskih študentov redno zaposlenih in ima družino. To pomeni, da imamo za študij na razpolago absolutno manj časa kot ga imajo kolegi, ki redno študirajo in pri katerih je študij primarna dejavnost. Hkrati je zaradi tega razloga za študij potrebnega ogromno usklajevanja družinskih in delovnih obveznosti in ogromno odrekanja. Drugi razlog, da dojemam trajanje študija kot prekratko je zaradi vseh formalnih in uradnih rokov, ki so predpisani s strani fakultete in univerze (potrjevanje dispozicije doktorske disertacije, termini sej delovnih teles, veljavnost potrjene teme naloge itd.).} \\ - \rowcolor[gray]{0.95}\textit{For serious research to be elaborated and implemented, three years would be feasible only in case of funded doctoral studies. When students have to combine work and doctoral studies, this is absolutely unrealistic.} \\ - \textit{Dovolj časa za opraviti vse obveznosti v kolikor ob študiju ne rabiš delati za preživetje in plačilo šolnine. V nasprotnem primeru je oboje hkrati (doktorski študij in delo za plačilo položnic šolnilna+življenje) velik problem. } \\ - \rowcolor[gray]{0.95}\textit{The doctoral program in FDV is very well structured. In first year, there were study courses and the remaining years for research activities. So i think it is very well structured and there is no need to change this structure } \\ - \textit{If there were no mandatory courses and exams that take consume too much time to attend and then study, the situation would be different. Courses such as research methods are very useful, whilst electives, for example, are mostly time consuming, especially if these are assessed in the form of essay writing, etc. Studies could last for three years (or four) if the focus right away would be the dissertation, research methods and writing skills. } \\ - \rowcolor[gray]{0.95}\textit{tri leta je dovolj za pisanje bolonjskega doktorata, upoštevajoč vmesna, prosta dodatna leta. sam sem pristranski, ker sem mladi raziskovalec, počnem samo to. tisti s službami izven programa se verjetno ne strinjajo.} \\ - \hline -\hline -\end{longtable} -\clearpage \subsubsection{Izbira predmeta na drugih programih UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "V 2. letniku sem si izbral/a izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 5 & 56 \\ - Ne & 4 & 44 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "V 2. letniku sem si izbral/a izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:" je večina (56 \%) študentov odgovorila z "Da", odgovor "Ne" pa je podalo 44 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Iz katerega drugega doktorskega študijskega programa UL ste si izbrali izbirni predmet?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Doktorski program Izobraževanje učiteljev in edukacijske vede} \\ - \rowcolor[gray]{0.95}\textit{Statistika} \\ - \textit{Ekonomskih in poslovnih ved} \\ - \rowcolor[gray]{0.95}\textit{Sociologija, Filozofska fakulteta, Ljubjana} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kateri predmet ste izbrali?"} \\ - \hline - \\[-0.4cm] \hline -\textit{1) Učenje in individualne razlike (5 KT) 2) Pisanje znanstvenih člankov in predstavitev raziskovalnih rezultatov (5 KT)} \\ - \rowcolor[gray]{0.95}\textit{Načrtovanje in analiza poskusov (prof. dr. Katarina Košmelj)} \\ - \textit{Consumer Behavior} \\ - \rowcolor[gray]{0.95}\textit{Sociologija medijev} \\ - \hline -\hline -\end{longtable} -\subsubsection{Izbira predmeta izven UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "V 2. letniku sem si izbral/a izbirni predmet na drugi domači ali tuji univerzi."} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 0 & 0 \\ - Ne & 8 & 100 \\ - \hline -Skupaj & 8 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "V 2. letniku sem si izbral/a izbirni predmet na drugi domači ali tuji univerzi." je velika večina študentov (100 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 0 \% študentov.\newpage\subsubsection{Zadovoljstvo z izvajanjem programov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:29 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Zadovoljstvo z izvajanjem prog. & (9) & 2 & 5 & 1.0 & 4.4 \\ - Uporabnost za dr. dizertacijo & (9) & 2 & 5 & 1.2 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Spodbujanje kritične razprave & (9) & 2 & 5 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Ustreznost izbirnih predmetov & (9) & 1 & 5 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.7}} \\ - Pridobitev generičnih znanj & (9) & 1 & 5 & 1.6 & \textbf{\textcolor[HTML]{F58137}{3.7}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis2_2letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Primerna oblika izvedbe predmetov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -predavanja & 1 & 11 \\ - konzultacije & 2 & 22 \\ - kombinacija obojega & 6 & 67 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite zakaj: "} \\ - \hline - \\[-0.4cm] \hline -\textit{Pri zunanjih izbirnih predmetih mi je bilo všeč, da so bila zasnovana v prvem delu v obliki predavanj (spoznavanje teorije, pregled raziskav), drugi del pa v obliki diskusije med študenti in profesorji, aktivnega vključevanja študentov v učni proces. Na tak način smo pridobili vpogled v teorijo ter hkrati ogromno znanja pridobili skozi diskusijo (tako od profesorjev kot od sošolcev, ki imajo ogromno znanja in izkušenj tudi iz prakse). Tako na predavanjih kot na konzultacijah pri določenih profesorjih smo izvedeli veliko novega. Ker gre za zelo različni učni metodi, so prednosti različne. Pri konzultacijah je dobro, da se lahko na individualni ravni pogovorimo direktno o izzivih in temah, s katerimi se srečujemo v našem raziskovalnem procesu. Pri predavanjih pa je dobro, da dobimo celoten pregled nad stanjem na določenem področju. Vsekakor pa menim, da je dobro, da so organizirana predavanja na doktorske študente ozko tematsko usmerjena (tako kot so bila predavanja v 2. letniku) in manj širše tematsko usmerjena (kot npr. predmet Teorije družbe v 1. letniku), saj pri svojem raziskovanju potrebujemo predvsem specifično znanja s področij - bolj kot splošen pregled različnih družboslovnih smeri. Prav tako so bili učni učinki večji pri predavanjih, ki so bila organizirana za manjše skupine študentov - do maksimalno 15 ali 20 ljudi, kot pri predavanjih za več deset ali celo preko 100 študentov.} \\ - \rowcolor[gray]{0.95}\textit{osebni stik, izmenjava mnenj} \\ - \textit{At the doctoral level, truly the most appropriate format would be seminars.} \\ - \rowcolor[gray]{0.95}\textit{Ustrezen čas za poglobljen študij in raziskavo. } \\ - \textit{Yes i think the combination is best. As in this way students can share their opinions and can ask the lecturer for what they feel any difficulty } \\ - \rowcolor[gray]{0.95}\textit{Lectures are very useful, because they expand knowledge in any case. Consultations are necessary in order to make use of lectures and put knowledge into practice. } \\ - \textit{šele kombinacija omogoča najbolj produktivno pridobivanje znanja} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"} \\ - \hline - \\[-0.4cm] \hline -\textit{Postopki trajajo dolgo in so nejasni. Kakšna časovnica (infografika) o poteku in obveznostih bi bila koristna. } \\ - \rowcolor[gray]{0.95}\textit{Organized forms of the studies are conducted in such a way that they consume too much time. Some of the mandatory courses are extremely difficult and require full time attention until the end of the course (semester). This leaves no free time for a student to engage in research. } \\ - \textit{odprite nekaj mest za neplačljiv študij, da se odlični študentje ne bi preživljali z natakarstvom} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Temeljni/obvezni izbirni predmeti}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v 2. letniku posamezne temeljne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 2 & 22 \\ - Ne & 7 & 78 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v 2. letniku posamezne temeljne predmete?" je velika večina študentov (78 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 22 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{The teacher also invited guest lecturers for specific topics who were specialized in their fields. } \\ - \rowcolor[gray]{0.95}\textit{Mandatory seminar was a good opportunity to hear useful advice from students that are in the later phases of their research. However, the fact that the mandatory seminar of such difficulty was held at the very beginning of year 2 was very inconvenient, as after a very busy year 1, when the major idea of the research has not been formulated yet, this is very frustrating. } \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"} \\ - \hline - \\[-0.4cm] \hline -\textit{It was good. The way teachers organized the examination is appropriate } \\ - \rowcolor[gray]{0.95}\textit{Too strict. } \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Izbirni predmeti}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 7 & 78 \\ - Ne & 2 & 22 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v letošnjem letu izbirne predmete?" je velika večina študentov (78 \%) odgovorila z "Da", odgovor "Ne" pa je podalo 22 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{globalizacija, odlično izpeljan predmet} \\ - \rowcolor[gray]{0.95}\textit{It was interesting to hear other professors from different disciplines at the University. The course was not adapted to the needs of the doctoral students attending and had little value for our research.} \\ - \textit{The teacher also invited guest lecturers for specific topics who were specialized in their fields. } \\ - \rowcolor[gray]{0.95}\textit{The elective course I had this year was conducted on two occasions (three days in two different weeks of the same month) and was too demanding. Apart from a number of readings that for each day of a course and a preparation of reviews of these readings, we were also required to do presentations, discuss and then write a final paper using theories from class. All this would be okay for a mandatory course, but not the elective one. Positive side of the course were class topics which were presented in an interesting and discussion engaging manner. } \\ - \textit{pohvala je odvisna od posameznega profesorja, to pa ni predmet ankete, spremenil ne bi nič} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Essays are in principle a good manner of examination but this requires the responsiveness from the professor and the wish to engage in constructive feedback.} \\ - \rowcolor[gray]{0.95}\textit{It was good. The way teachers organized the examination is appropriate } \\ - \textit{Too demanding and time consuming. } \\ - \rowcolor[gray]{0.95}\textit{profesorji, sploh starejši, vedo kaj delajo, le preobremenjeni ne smejo biti} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Pomoč in podpora mentorja} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{table}[ht] -\centering -\caption{Pomoč in podpora mentorja - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Mentor mi nudi podporo & (9) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Ustrezno svetovanje mentorja & (9) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Pomoč mentorja pri znan. čl. & (7) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Pomoč mentorja pri težavah & (9) & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Pogostost stikov z mentorjem & (9) & 4 & 5 & 0.3 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - Odzivnost mentorja po el. pošti & (9) & 1 & 5 & 1.3 & 4.4 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis3_2letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Mentorstvo ocenjujem kot zelo dobro. Mentor in somentor sta vedno na voljo za pogovor, nasvete in zelo pomagata pri usmeritvah mojega študija, študijski časovnici ter pri vsebinskih dilemah. Oba imate ogromno izkušenj z raziskovalnim delom in njune nasvete dojemam kot ključne in pomembne. Prav tako je odnos do študentov zelo korekten. Predlagam le, da bi imeli profesorji, ki delajo kot mentorji občasno (npr. 1x mesečno) govorilne ure po 16. uri. Na ta način bi študentje, ki smo redno zaposleni, lažje usklajevali študijske obveznosti s službo in družinskimi obveznostmi.} \\ - \rowcolor[gray]{0.95}\textit{odlično. pohvalila bi hitro odzivnost in pripravljenost za pomoč} \\ - \textit{My supervisor is the biggest strength of this doctoral studies programme, and the reason why I came to University of Ljubljana. I would kindly suggest to the Faculty to provide adequate support for people with initiative and brilliant ideas and motivation to enhance the Faculty and the studies.} \\ - \rowcolor[gray]{0.95}\textit{Mentorica je super. Somentor je tudi super. Pohvale za oba. } \\ - \textit{Z mentorjem odlično sodelujem. } \\ - \rowcolor[gray]{0.95}\textit{I dont think that there is any thing which is needed to be changed. My supervisor was always helping towards me. } \\ - \textit{All our consultations are very constructive and enjoyable. I have learned a lot from my supervisor and our work has been encouraging. I encountered problems in communication between our meetings - the old fashioned way of communicating face to face, rather than using emails. } \\ - \rowcolor[gray]{0.95}\textit{odlično. odzivnost bi pohvalil, spremenil ne bi nič} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kakšne so vaše izkušnje s prijavo dispozicije doktorske naloge?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Študentom bi delo pri prijavi dispozicije zelo olajšalo, če bi bilo vsi pomembni datumi in roki (npr. seznam sej senata, okvirno trajanje postopkov..) objavljeni na eni spletni strani oz. na enem mestu (lahko tudi v spletnem referatu). Prav tako bi bili v odgovorih komisije poleg negativnih komentarjev, kaj je treba popraviti, veseli tudi pozitivnih komentarje (kaj je v dispoziciji dobro). Tako bi bili študentje lažje in bolj motivirani za popravljanje dispozicije. Študentom bi delo s popravki olajšalo tudi, če bi se lahko s komisijo za doktorski študij pogovorili pred oddajo popravkov dispozicije. Sploh v luči dejstva, da je pravno omejeno, kolikokrat lahko študent odda popravke dispozicije.} \\ - \rowcolor[gray]{0.95}\textit{V redu. V referatu je gospa Meta Gnidovec vedno pripravljena svetovati in mi je pri prijavi v veliko pomoč} \\ - \textit{Excellent, my doctoral studies programme administrative secretary is the only professional and highly responsible and efficient person within administrative staff of the Faculty.} \\ - \rowcolor[gray]{0.95}\textit{Veliko dela, veliko neznanega, ampak poglobljeno in koristno za nalogo.} \\ - \textit{All went good. } \\ - \rowcolor[gray]{0.95}\textit{slabe,izrazil sem jih večkrat, ne i ponavljal, spremembe bi morale biti sistemske,preobsežne so za eno anketo} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Da. Delo bi olajšalo, če bi obstajal kakšen forum (podobno kot je Research Gate), kjer bi lahko doktorski študentje FDV izmenjavali izkušnje glede metodoloških izzivov in ostalih dilem, s katerimi se srečujemo pri raziskovanju. Vrstniški feedback bi nam prišel zelo prav pri delu. Ker je pri doktorskem študiju veliko individualnega dela, včasih pogrešam diskusijo z vrstniki. Zato pohvale FDV za organizacijo prednovoletnega druženja študentov. Izražam željo po (ponovnem) organiziranju podobnih dogodkov, na katerih se študentje različnih smeri (ali različnih fakultetm univerz) lahko srečujemo.} \\ - \rowcolor[gray]{0.95}\textit{Članek je že v nastajanju} \\ - \textit{I have already published the article.} \\ - \rowcolor[gray]{0.95}\textit{Da. Ne vem kje objaviti in kako težko je to. } \\ - \textit{Yes, i have already collected the data. The data collection process is thought to be most difficult. But i have gone through it. I hope to get this published in my 3rd year of doctoral studies. } \\ - \rowcolor[gray]{0.95}\textit{I have started thinking but not writing yet. I expect a number of problems - starting from the choice of topic, review process, etc. } \\ - \textit{že začel. recenzentski postopki znajo biti težava} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Del študija in ostale aktivnosti v tujini} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{table}[ht] -\centering -\caption{Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Možnost študija/razis. dela v tuj. & (6) & 1 & 5 & 1.5 & \textbf{\textcolor[HTML]{F58137}{3.7}} \\ - Del študija ali razis. dela v tujini & (8) & 1 & 5 & 1.7 & \textbf{\textcolor[HTML]{F58137}{3.6}} \\ - Možnost udeležbe konf. v tujini & (8) & 2 & 5 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.6}} \\ - Vključenost v razis. sk. & (9) & 1 & 5 & 1.8 & \textbf{\textcolor[HTML]{B6321C}{1.9}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis4_2letnik.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Administration of the International Office of the Faculty is not providing needed support in exchange programs and needs additional training in both the possibilities for exchange for doctoral students as well as communication and responsiveness. For participation at scientific conferences, the Faculty should provide funding and find ways to include doctoral students in its research and project activities.} \\ - \rowcolor[gray]{0.95}\textit{Za tiste, ki nismo imeli nobenega sofinanciranja (za razliko od kolegov, ki so prej imeli možnost inovativne sheme) smo bili samoplačniki v zadnjih generacijah omejeni, prikrajšani in dodatno (finančno in posledično finančno) obremenjeni. Osebno sem imel osnutek članka sprejet za predstavitev na konferenci v tujini, ampak zaradi pomanjkanja finančnih sredstev (letalo + hotel bi me kljub brezplačni kotizaciji stalo več kot zaslužim v enem mesecu) moral odpovedati sodelovanje. } \\ - \textit{The international cooperation must be enhanced. There must be more opportunities for doctoral candidates to work in foreign universities. } \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Svetovalna pomoč študentom} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Humanistik.} \\ - \hline -Odzivnost in učinkovitost ref. & (9) & 2 & 5 & 1.0 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Ustrezen odnos osebja & (9) & 1 & 5 & 1.4 & 4.3 \\ - Celovite info. na spletni str. & (9) & 3 & 5 & 0.9 & 4.1 \\ - Uradne ure študentskega ref. & (9) & 1 & 5 & 1.6 & 4.0 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/izpis5_2letnik.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Vaši predlogi glede delovanja referata in svetovanja študentom."} \\ - \hline - \\[-0.4cm] \hline -\textit{Osebje študijskega referata je izjemno odzivno, prijazno in nudi korektne in pomembne informacije. } \\ - \rowcolor[gray]{0.95}\textit{Delovanje referata in organiziranost sta odlična. Osebje profesionalno.} \\ - \textit{Infografika s časovnico birokratskih postopkov in obveznosti (članek + doktorska naloga).} \\ - \rowcolor[gray]{0.95}\textit{The staff at international office and students' affair office is very helpful especially Ms. Meta Gnidovec. She is always ready to help the students. She has a great impact on my career. } \\ - \textit{Student affairs office hours are not appropriate for PhD students, as most of us arrive to faculty in the late afternoon. Also, it happens that we do not get answers to emails for days.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:30 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali sta prvi dve leti študija izpolnili vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Pohvalim vsebino študijskega programa, znanje profesorjev in predavateljev, etične standarde, možnost izbire zunanjih izbirnih predmetov, mentorja, prijaznost in odzivnost osebja v referatu, organizacijo novoletnega druženja študentov, organizacijo decembrskega seminarja o metodoloških napotkih, rokih ter pisanju dispozicije, elektronsko poslovanje v primerjavi z ostalimi fakultetami (spletna stran, spletni referat, komuniciranje preko e-pošte), odzivnost in strokovnost osebja v knjižnici (ODKJG). Pogrešam bolj natančna navodila, na kakšnem nivoju (do kakšne stopnje razdelanosti) se pričakuje dispozicija pred oddajo. Pogrešam bolj motivacijsko povratno sporočilo komisije za doktorski študij (ne le vsebine, ki jih je potrebno popraviti, temveč vsaj kakšen pozitiven komentar). Pogrešam večjo prilagojenost študija študentom, ki imamo družinske in službene obveznosti - več razumevanja ter prilagojenost urnikov (ne predavanj, temveč širše). Pogrešam večje razumevanje do drugačnosti predznanja študentov, ki prihajamo iz drugih univerz in fakultet (mogoče kot možnost obiskovanja dodatnih predavanj o metodoloških temah, določenih vsebinskih tematikah, o določenih pravilih, ki so samoumevna na tej fakulteti, na drugih univerzah in fakultetah pa je drugačna praksa itd.).} \\ - \rowcolor[gray]{0.95}\textit{This doctoral programme did not meet my expectations. The biggest strength of this programme are the professors and researchers at FDV and the Faculty of Philosophy who are capable of providing knowledge and skills needed for the doctoral research and some of them especially excel as supervisors, like my supervisor. Ljubljana has a vibrant intellectual community and could be a magnificent student city if these potentials would be used. The administration of the Faculty, with special regards to the International Office, are highly unprofessional and unwelcoming to students. There is an absolute lack of initiative and support and students feel like they are really annoyed that they have to do their job (with the exception of the administrative staff of the specific programme I am enrolled in). The Faculty needs to provide funding for students to participate at international conferences and summer schools and find ways to include doctoral students in the research programmes and projects of the Faculty. Doctoral students should be perceived as research colleagues at the Faculty and not just a hobby like one of your professors told us at the beginning of the first year. } \\ - \textit{- Spremenil bi način financiranja (z javnimi sredstvi plačana 3. stopnja). - Pohvalil bi odzivnost, strokovnost in kakovost dela FDV, tako pedagoško-raziskovalnega osebja (mentorica, somentor, profesorji) in strokovnih služb (referat). } \\ - \rowcolor[gray]{0.95}\textit{Yes, everything went good. I am pleased for the facilities provided by FDV during my studies. } \\ - \textit{I would definitely change the difficulty level of mandatory courses and they duration. I would suggest focusing on the way of thinking about research, teaching students writing skills and methodology which are both necessary in the process of dissertation preparation. Studies have met some of my expectations, I can say that I am overall satisfied. There are always things to be improved. } \\ - \rowcolor[gray]{0.95}\textit{pohvalil predavanja, spremenil dolge roka odziva komisije glede dispozicije. nujno skrajšati roke obveščanja zavračanja ali potrditve dispozicije. operirajte z maili, po pošti naj gre dokončna potrditev. večje sodelovanje komisij s študenti, če se da} \\ - \hline -\hline -\end{longtable} -\subsubsection{Način študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Sem mladi raziskovalec / mlada raziskovalka & 2 & 22 \\ - Sem mladi raziskovalec/ mlada raziskovalka v gospodarstvu, & 0 & 0 \\ - Sem doktorski študent/doktorska študentka, ki se financira sam/a, & 6 & 67 \\ - Sem doktorski študent/doktorska študentka, ki mi šolnino plačuje delodajalec, & 0 & 0 \\ - Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih): & 1 & 11 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage\subsubsection{Razlog študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij? Možnih je več odgovorov."} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline - Študij sem izbral/a, ker želim imeti akademsko kariero, & 6 & 27 \\ - Študij sem izbral/a zaradi želje po osebnem razvoju in napredku, & 7 & 32 \\ - Študij sem izbral/a, ker menim, da je dobro imeti doktorsko izobrazbo, & 3 & 14 \\ - Študij sem izbral/a, ker menim, da mi bo pridobljeno znanje koristilo na mojem delovnem mestu, & 3 & 14 \\ - Študij sem izbral/a, ker nisem dobil/a zaposlitve, & 0 & 0 \\ - Študij sem izbral/a, da bi lahko napredoval/a na delovnem mestu. & 2 & 9 \\ - Drugo: & 1 & 5 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Drugo:"} \\ - \hline - \\[-0.4cm] \hline -\textit{boljše zaposlitvene možnosti} \\ - \hline -\hline -\end{longtable} -\subsubsection{Odločitev o vpisu}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -bi se odločil/a enako & 6 & 67 \\ - bi se vpisal/a drugam & 2 & 22 \\ - se ne bi odločil/a za doktorski študij & 0 & 0 \\ - ne vem & 1 & 11 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Alternativni vpis}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -na drugi program na UL & 0 & 0 \\ - na drugi visokošolski zavod v RS & 1 & 50 \\ - v tujino & 1 & 50 \\ - \hline -Skupaj & 2 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "1. korak: Čas od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:"} -\begin{tabular}{p{9cm}cccc} - \hline -\hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{Čas v mesecih} & \bfseries{n} & \bfseries{\%} \\ - \hline -Humanistika in družboslovje interdisciplinarni & 2. & 1 & 2 & 40 \\ - Humanistika in družboslovje interdisciplinarni & 2. & 2 & 1 & 20 \\ - Humanistika in družboslovje interdisciplinarni & 2. & 3 & 1 & 20 \\ - Humanistika in družboslovje interdisciplinarni & 2. & 24 & 1 & 20 \\ - \hline -Skupaj & & 31 & 5 & 100 \\ - \hline -\hline -Povprečje & & 6 & . & . \\ - Standardni odklon & & 10 & . & . \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "2. korak: Čas od soglasja senata/komisije fakultete do soglasja senata UL (zapišite podatek, če je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):"} -\begin{tabular}{p{9cm}cccc} - \hline -\hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{Čas v mesecih} & \bfseries{n} & \bfseries{\%} \\ - \hline -Humanistika in družboslovje interdisciplinarni & 2. & 2 & 1 & 33 \\ - Humanistika in družboslovje interdisciplinarni & 2. & 3 & 1 & 33 \\ - Humanistika in družboslovje interdisciplinarni & 2. & 6 & 1 & 33 \\ - \hline -Skupaj & & 11 & 3 & 100 \\ - \hline -\hline -Povprečje & & 4 & . & . \\ - Standardni odklon & & 2 & . & . \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Dodatni komentarji študentov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 08 11:18:31 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj, kar ni bilo zajeto v anketi?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Veseli me, da izvajate anketo o študiju. Želim si, da bodo predlogi študentov v največji možni meri upoštevani.} \\ - \rowcolor[gray]{0.95}\textit{še čakam na potrditev teme } \\ - \textit{Introduce stronger quality assurance mechanisms in your doctoral studies programmes.} \\ - \hline -\hline -\end{longtable} -Študenti na to vprašanje niso podali odgovorov. -\end{document} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.toc b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.toc deleted file mode 100644 index 7e7aba931..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/splosnaDoktorska_po_Programih.toc +++ /dev/null @@ -1,45 +0,0 @@ -\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1} -\contentsline {section}{\numberline {2.}Metodologija}{3}{section.0.2} -\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{5}{section.0.3} -\contentsline {section}{\numberline {4.}Analiza dejavnikov in vsebinskih sklopov - oba letnika zdru\IeC {\v z}eno}{6}{section.0.4} -\contentsline {section}{\numberline {5.}Analize skupnih spremenljivk po letnikih}{10}{section.0.5} -\contentsline {section}{\numberline {6.}Podrobna analiza: Prvi letnik}{16}{section.0.6} -\contentsline {subsection}{\numberline {6.1}Analiza dejavnikov}{16}{subsection.0.6.1} -\contentsline {subsection}{\numberline {6.2}Podrobna analiza vseh spremenljivk po sklopih}{20}{subsection.0.6.2} -\contentsline {subsubsection}{\numberline {6.2.1}Infrastruktura in urniki}{20}{subsubsection.0.6.2.1} -\contentsline {subsubsection}{\numberline {6.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.2} -\contentsline {subsubsection}{\numberline {6.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.3} -\contentsline {subsubsection}{\numberline {6.2.4}Izbira predmeta na drugih programih UL}{22}{subsubsection.0.6.2.4} -\contentsline {subsubsection}{\numberline {6.2.5}Izbira predmeta izven UL}{22}{subsubsection.0.6.2.5} -\contentsline {subsubsection}{\numberline {6.2.6}Zadovoljstvo z izvajanjem programov}{23}{subsubsection.0.6.2.6} -\contentsline {subsubsection}{\numberline {6.2.7}Primerna oblika izvedbe predmetov}{24}{subsubsection.0.6.2.7} -\contentsline {subsubsection}{\numberline {6.2.8}Pomo\IeC {\v c} in podpora mentorja}{29}{subsubsection.0.6.2.8} -\contentsline {subsubsection}{\numberline {6.2.9}Doktorska disertacija}{30}{subsubsection.0.6.2.9} -\contentsline {subsubsection}{\numberline {6.2.10}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{32}{subsubsection.0.6.2.10} -\contentsline {subsubsection}{\numberline {6.2.11}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{34}{subsubsection.0.6.2.11} -\contentsline {subsubsection}{\numberline {6.2.12}Na\IeC {\v c}in \IeC {\v s}tudija}{36}{subsubsection.0.6.2.12} -\contentsline {subsubsection}{\numberline {6.2.13}Razlog \IeC {\v s}tudija}{36}{subsubsection.0.6.2.13} -\contentsline {subsubsection}{\numberline {6.2.14}Odlo\IeC {\v c}itev o vpisu}{36}{subsubsection.0.6.2.14} -\contentsline {subsubsection}{\numberline {6.2.15}Alternativni vpis}{37}{subsubsection.0.6.2.15} -\contentsline {subsubsection}{\numberline {6.2.16}Dodatni komentarji \IeC {\v s}tudentov}{37}{subsubsection.0.6.2.16} -\contentsline {section}{\numberline {7.}Podrobna analiza: Drugi letnik}{38}{section.0.7} -\contentsline {subsection}{\numberline {7.1}Analiza dejavnikov}{38}{subsection.0.7.1} -\contentsline {subsection}{\numberline {7.2}Podrobna analiza vseh spremenljivk po sklopih}{42}{subsection.0.7.2} -\contentsline {subsubsection}{\numberline {7.2.1}Infrastruktura in urniki}{42}{subsubsection.0.7.2.1} -\contentsline {subsubsection}{\numberline {7.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{43}{subsubsection.0.7.2.2} -\contentsline {subsubsection}{\numberline {7.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{43}{subsubsection.0.7.2.3} -\contentsline {subsubsection}{\numberline {7.2.4}Ustreznost trajanja doktorskega \IeC {\v s}tudija}{43}{subsubsection.0.7.2.4} -\contentsline {subsubsection}{\numberline {7.2.5}Izbira predmeta na drugih programih UL}{45}{subsubsection.0.7.2.5} -\contentsline {subsubsection}{\numberline {7.2.6}Izbira predmeta izven UL}{45}{subsubsection.0.7.2.6} -\contentsline {subsubsection}{\numberline {7.2.7}Zadovoljstvo z izvajanjem programov}{46}{subsubsection.0.7.2.7} -\contentsline {subsubsection}{\numberline {7.2.8}Primerna oblika izvedbe predmetov}{47}{subsubsection.0.7.2.8} -\contentsline {subsubsection}{\numberline {7.2.9}Temeljni/obvezni izbirni predmeti}{48}{subsubsection.0.7.2.9} -\contentsline {subsubsection}{\numberline {7.2.10}Izbirni predmeti}{49}{subsubsection.0.7.2.10} -\contentsline {subsubsection}{\numberline {7.2.11}Pomo\IeC {\v c} in podpora mentorja}{50}{subsubsection.0.7.2.11} -\contentsline {subsubsection}{\numberline {7.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{53}{subsubsection.0.7.2.12} -\contentsline {subsubsection}{\numberline {7.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{55}{subsubsection.0.7.2.13} -\contentsline {subsubsection}{\numberline {7.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{57}{subsubsection.0.7.2.14} -\contentsline {subsubsection}{\numberline {7.2.15}Razlog \IeC {\v s}tudija}{58}{subsubsection.0.7.2.15} -\contentsline {subsubsection}{\numberline {7.2.16}Odlo\IeC {\v c}itev o vpisu}{58}{subsubsection.0.7.2.16} -\contentsline {subsubsection}{\numberline {7.2.17}Alternativni vpis}{58}{subsubsection.0.7.2.17} -\contentsline {subsubsection}{\numberline {7.2.18}Dodatni komentarji \IeC {\v s}tudentov}{59}{subsubsection.0.7.2.18} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/.Rhistory b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/.Rhistory deleted file mode 100644 index 08c452cdf..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/.Rhistory +++ /dev/null @@ -1,512 +0,0 @@ -axis(1,seq(2, by = 2, length = 1:40),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1,seq(2, by = 2, length = 1:10),labels=c(expression(lambda),expression(lambda)),las=1) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(1, at=1:1, labels=labels=c(expression(lambda))) -axis(1, at=1:1, labels=expression(lambda)) -axis(1,seq(2, by = 2, length = 1:10), labels=expression(lambda)) -axis(1,seq(2, by = 2, length = 5), labels=expression(lambda)) -lambda_grids -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(1,seq(2, by = 2, length = 1:10),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1,seq(2, by = 2, length = 1),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1, at=c(2,4), labels=expression(lambda))) -axis(1, at=c(2,4), labels=expression(lambda)) -at = floor(seq(from = 1, to = 5913, length.out = 7)) -axis(1, seq(2, by = 2, length = 1),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1, at = floor(seq(from = 1, to = 10, length.out = 7)), labels=expression(lambda)) -axis(side=1,at=c(2,4,8,10),labels=c("C","S","M","a")) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda)"2",expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(c(expression(lambda)"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(paste(expression(lambda)"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(paste(expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(paste0(expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(c(expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c((expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda^3),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda3),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda2==2),expression(lambda)),las=1) -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda==2),expression(lambda)),las=1) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda3),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda==2),expression(lambda)),las=1) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda==2),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2=lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2==lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2==lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda[2]),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*4),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*[4]),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*[4]),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*"["4"]"),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*,"[",4,"]",),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda ^ 2), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -lambda_grids=exp(linspace(log(1),log(1e-4),grid)) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda ^ 2), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda ^ 2), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda [2]), -expression(lambda [2]), expression(lambda [2]), expression(lambda [2]))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda [4]), -expression(lambda [6]), expression(lambda [8]), expression(lambda [10]))) -paste0(ass,".tex") -paste0("fileOutputName",".tex") -fileOutputName -gsub("\\.pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex ") -gsub("\\.pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex ") -gsub(".pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex ") -gsub(".pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex.") -gsub("\\.pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex.") -paste0(gsub("\\.pdf", "", "aa.pdf"),".tex") -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -a <- str_split(a, ";") -library(stringr) -a <- str_split(a, ";") -a -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -str_split(a, ";") -unique(str_split(a, ";")) -unique(unlist(a, use.names = FALSE)) -b <- unique(str_split(a, ";")) -unique(unlist(b, use.names = FALSE)) -čist(unique(unlist(b))) -list(unique(unlist(b))) -unique(unlist(b)) -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -Then -a <- str_split(a, ";") -and finally -list(unique(unlist(a))) -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -unique(unlist(sapply(a, function(i) strsplit(i, ';')))) -df = data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df[df$item_text=="car",] -df -(df[grep("car", df$item_text),]) -df[grep("car", df$item_text),] -df[grep("car", df$item_text)] -df[,grep("car", df$item_text)] -df[grep("car", df)] -df$item_text= -df$item_text -df[grep("car", df$item_text, value = TRUE)] -df$item_text -df = data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df -df$item_text -df[grep("car", df[,1], value = TRUE)] -df[,1] -str(df) -df$item_text <- as.character(df$item_text) -df$item_text -df$item_text -df[grep("car", df$item_text , value = TRUE)] -df[grep("car", df$item_text, value = TRUE),] -df = as.data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df = as.data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df = data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df -df[grep("car", df["item_text"], value = TRUE),] -df[grep("car", df["item_text"], value = TRUE)] -df[,grep("car", df["item_text"], value = TRUE)] -df = data.frame(item_text = c("car", "a car", "my carry", "carry a car", "something")) -subset(df, subset = grepl("car", df$item_text) & !grepl("carry", df$item_text)) -subset(df, subset = grepl("car", df$item_text) & !grepl("carry", df$item_text)) -df = data.frame(item_text = c("car", "a car", "my carry", "carry a car", "something")) -subset(df, subset = grepl("car", df$item_text) & !grepl("carry", df$item_text)) -grepl("car", df$item_text) & !grepl("carry", df$item_text) -df[grep("car", df$item_text) & !grep("carry", df$item_text),] -subatring %in% string -subatring <- c("phone","phones","telephonesss") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -subatring %in% string -subatring[subatring %like% string] -subatring[subatring %in% string] -str_subset(subatring, string) -library(stringr) -str_subset(subatring, string) -subatring -string -str_detect(subatring, string) -stri_detect_fixed(subatring, string) -library(stringi) -stri_detect_fixed(subatring, string) -subatring -stri_detect_fixed(string,subatring) -string -if(stri_detect_fixed(string, subatring), 1, 0 -ifelse(stri_detect_fixed(string, subatring), 1, 0) -ifelse(stri_detect_fixed(string, subatring), TRUE, FALSE) -df <- data.frame(subatring,string) -df <- data.frame(subatring,string) -ifelse(stri_detect_fixed(df$string, df$subatring), TRUE, FALSE) -stri_detect_fixed(df$string, df$subatring) -df$string -df$subatring -df -ifelse(stri_detect_fixed(df$string, df$subatring), TRUE, FALSE) -stri_detect_fixed(df$string, df$subatring) -df$match <- ifelse(stri_detect_fixed(df$string, df$subatring), TRUE, FALSE) -df -stri_detect_fixed(df$string, df$substring) -subatring <- c("phone", "phones", "telephonesss") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -df <- data.frame(subatring,string) -stri_detect_fixed(df$string, df$substring) -stri_detect_fixed( df$substring, df$string) -subatring <- c("phone", "phones", "telephonesss") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -stri_detect_fixed(df$substring, df$string) -stri_detect_fixed(df$string, df$subatring) -df$t <- (df$string, df$subatring) -df$t <- stri_detect_fixed(df$string, df$subatring) -df -stri_detect_fixed(df$string, df$subatring) -subatring <- c("phone", "phones", "telephonesss","my new phone","this is my new mobile phone") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -df <- data.frame(subatring,string) -subatring <- c("phone", "phones", "telephonesss","my new phone") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone","this is my new mobile phone") -df <- data.frame(subatring,string) -stri_detect_fixed(df$string, df$subatring) -str_detect(df$substring, df$string) -ifelse(str_detect(df$string, df$subatring), TRUE, FALSE) -df -df[] <- lapply(df, as.character) -stri_detect_fixed(df$string, df$subatring) -df$t <- -str_detect(df$string, df$subatring) -str_detect(df$string, df$subatring) -stri_extract_all_words(df$string, df$subatring) -string[string %in% subatring)] -string[string %in% subatring] -string -ifelse (string %in% subatring, "*match*", B) -ifelse (string %in% subatring, "*match*", 1) -string -subatring -ifelse (subatring %in% string, "*match*", 1) -intersect(subatring, string) -setdiff(subatring, string) -subatring -string -match(subatring, string) -regmatches(df, gregexpr(string, subatring)) -regmatches(df, gregexpr(string, subatring),invert=TRUE) -regmatches(string, subatring) -str_extract(df$string, df$subatring) -str_extract(df$string, df$subatring,simplify = FALSE) -str_locate(df$string, df$subatring) -str_match_all(df$string, df$subatring) -agrep(df$string, df$subatring) -charmatch(df$string, df$subatring) -library(stringdist) -install.packages("stringdist ") -install.packages("stringdist") -library(stringdist) -ain(df$string, df$subatring) -df$string -ain(df$string, df$subatring, maxDist=10) -amatch(df$string, df$subatring) -ifelse(df$string==df$subatring,1,0) -subatring <- c("phone", "phones", "telephonesss","my new phone") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone","this is my new mobile phone") -df <- data.frame(subatring,string) -df[] <- lapply(df, as.character) -ifelse(df$string==df$subatring,1,0) -mapply(function(i, j) length(grep(i, j)), df$string, df$subatring) -df$string -mapply(grepl, pattern= df$string, x=df$subatring) -df$string -mapply(grepl, pattern= df$subatring, x=df$string) -library(data.table) -DT[, df := grepl(string, subatring), by = subatring] -library(data.table) -DT <- data.table(df) -DT[, := grepl(string, subatring), by = subatring] -DT[, grepl(string, subatring), by = subatring] -DT[, grepl(subatring, string), by = subatring] -DT[, grepl(subatring, string), by = string] -DT[, grepl(subatring, string), by = subatring] -which(df$string == df$subatring) -which(df$subatring == df$string) -mapply(grepl, paste0('\\b', df$string, '\\b'), df$subatring) -mapply(grepl, paste0('\\b', df$subatring, '\\b'), df$string) -mapply(grepl, paste0('\\W', df$subatring, '\\b'), df$string) -mapply(grepl, paste0('\\w', df$subatring, '\\b'), df$string) -a <- "I’m" -gsub("’","'",a) -Encoding(a) -2+4+4+4+3+4+4+4 -library("igraph") -from <- c(1,2,3,3,6,6,8,9) -to <- c(2,3,4,5,7,8,6,10) -edges = data.frame(from,to) -g<- graph_from_data_frame(edges,directed=FALSE) -plot(g) -clc <- max_cliques(g, min=3) -clc -g2 <- graph.full(length(clc)) -g2 -V(g2)$name <- V(g)$name[clc] -max_cliques(g) -cliques(g, min=3) -clique.number(clc) -clique.number(g) -cliques(g, min=2) -clique.number(g) -g -clusters(g) -clc <- cliques(g, min=3) -clc -cliques(g) -cl <- clusters(g) -me <- which(cl$csize >= 3) -res <- split(names(cl$membership), cl$membership)[me] -res -library(knitr) -# Delovna mapa mora biti tista, kjer sta obe .r skripti -for (i in c(1:10, 12:17)){ -IDs <- c(3000021) -ID <- IDs[i] -owd = setwd('temp') -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -prvaBaza <- seq(1,30,2)[i] -drugaBaza <- seq(2,30,2)[i] -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), -paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) -# Uvozimo podatke, if stavek, ker imajo nekatere baze drugacen encoding -vhodni_podatki <- vector('list',2) -podatki <- list() -if (i %in% c(8,12,13)){ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE)) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE)) -}else if(i %in% c(16,17)){ -if (i==16){ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSP_1_anketa221-2016-11-02.csv")) -}else{ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) -} -#imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/BF_2_anketa218-2016-11-02.csv")) -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel, stringsAsFactors = FALSE, encoding="UTF-8")) -}else{ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE, encoding="UTF-8")) -} -# prek idprogram-a poveĹľemo bazo odgovorov z bazo, -# kjer je dostopno stevilo vpisanih -vpisani_tabela <- list() -vpisani_tabela[[1]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_prvi_letnik.csv")) -vpisani_tabela[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_drugi_letnik.csv")) -# Kodo pretvorimo v pdf. -knit2pdf('../splosnaDoktorska_po_Institucijah.Rnw', encoding = 'UTF-8') -#knit2pdf('../splosnaDoktorska.Rnw', encoding = 'UTF-8') -# Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID -novaMapa <- paste0("../rezultati/", ID, "/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -# Testi: -novaMapa <- paste0("../rezultati/vsaPorocila/po_institucijah/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -file.copy("splosnaDoktorska_po_Institucijah.pdf", novaMapa, overwrite =T) -# Delovno pot spremenimo v prvotno. -setwd(owd) -print(i) -print(imenaTabel) -} -ID -owd -owd = setwd('temp') -getwd() -owd = setwd('temp') -setwd("C:/MIHA DELO/EVALVACIJE UL SPLOŠNA IN DOKTORSKA POROČILA/R_splosna_porocila/temp") -owd = setwd('temp') -setwd(work_dir) -owd = setwd("C://MIHA DELO/EVALVACIJE UL SPLOŠNA IN DOKTORSKA POROČILA//R_splosna_porocila//temp") -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -for (i in c(1:10, 12:17)){ -IDs <- c(3000021) -ID <- IDs[i] -owd = setwd("C://MIHA DELO/EVALVACIJE UL SPLOŠNA IN DOKTORSKA POROČILA//R_splosna_porocila//temp") -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -prvaBaza <- seq(1,30,2)[i] -drugaBaza <- seq(2,30,2)[i] -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), -paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) -# Uvozimo podatke, if stavek, ker imajo nekatere baze drugacen encoding -vhodni_podatki <- vector('list',2) -podatki <- list() -if (i %in% c(8,12,13)){ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE)) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE)) -}else if(i %in% c(16,17)){ -if (i==16){ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSP_1_anketa221-2016-11-02.csv")) -}else{ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) -} -#imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/BF_2_anketa218-2016-11-02.csv")) -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel, stringsAsFactors = FALSE, encoding="UTF-8")) -}else{ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE, encoding="UTF-8")) -} -# prek idprogram-a poveĹľemo bazo odgovorov z bazo, -# kjer je dostopno stevilo vpisanih -vpisani_tabela <- list() -vpisani_tabela[[1]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_prvi_letnik.csv")) -vpisani_tabela[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_drugi_letnik.csv")) -# Kodo pretvorimo v pdf. -knit2pdf('../splosnaDoktorska_po_Institucijah.Rnw', encoding = 'UTF-8') -#knit2pdf('../splosnaDoktorska.Rnw', encoding = 'UTF-8') -# Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID -novaMapa <- paste0("../rezultati/", ID, "/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -# Testi: -novaMapa <- paste0("../rezultati/vsaPorocila/po_institucijah/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -file.copy("splosnaDoktorska_po_Institucijah.pdf", novaMapa, overwrite =T) -# Delovno pot spremenimo v prvotno. -setwd(owd) -print(i) -print(imenaTabel) -} -IDs <- c(3000021) -ID <- IDs[i] -owd = setwd("C://MIHA DELO/EVALVACIJE UL SPLOŠNA IN DOKTORSKA POROČILA//R_splosna_porocila//temp") -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -prvaBaza <- seq(1,30,2)[i] -drugaBaza <- seq(2,30,2)[i] -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), -paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) -imenaTabel -prvaBaza -drugaBaza -imenaTabel_seznam -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -imenaTabel_seznam -owd = setwd("C://MIHA DELO/EVALVACIJE UL SPLOŠNA IN DOKTORSKA POROČILA//R_splosna_porocila") -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -imenaTabel_seznam -setwd -owd -owd = setwd("C://MIHA DELO/EVALVACIJE UL SPLOŠNA IN DOKTORSKA POROČILA//R_splosna_porocila") -owd -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -imenaTabel_seznam -prvaBaza <- seq(1,30,2)[i] -drugaBaza <- seq(2,30,2)[i] -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), -paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) -vhodni_podatki <- vector('list',2) -podatki <- list() -if (i %in% c(8,12,13)){ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE)) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE)) -}else if(i %in% c(16,17)){ -if (i==16){ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSP_1_anketa221-2016-11-02.csv")) -}else{ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) -} -#imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/BF_2_anketa218-2016-11-02.csv")) -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel, stringsAsFactors = FALSE, encoding="UTF-8")) -}else{ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE, encoding="UTF-8")) -} -vpisani_tabela <- list() -vpisani_tabela[[1]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_prvi_letnik.csv")) -vpisani_tabela[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_drugi_letnik.csv")) -knit2pdf('../splosnaDoktorska_po_Institucijah.Rnw', encoding = 'UTF-8') -getwd() -knit2pdf('splosnaDoktorska_po_Institucijah.Rnw', encoding = 'UTF-8') -novaMapa <- paste0("../rezultati/", ID, "/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -novaMapa <- paste0("../rezultati/vsaPorocila/po_institucijah/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -file.copy("splosnaDoktorska_po_Institucijah.pdf", novaMapa, overwrite =T) -setwd(owd) -print(i) -print(imenaTabel) -owd = setwd('temp') -owd -rm(list=ls()) -owd = setwd('temp') -owd -library(knitr) -for (i in c(1:10, 12:17)){ -IDs <- c(3000021) -ID <- IDs[i] -owd = setwd('temp') -imenaTabel_seznam = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -prvaBaza <- seq(1,30,2)[i] -drugaBaza <- seq(2,30,2)[i] -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[prvaBaza]), -paste0(owd, "/zacasnaMapa_baz/", imenaTabel_seznam[drugaBaza])) -# Uvozimo podatke, if stavek, ker imajo nekatere baze drugacen encoding -vhodni_podatki <- vector('list',2) -podatki <- list() -if (i %in% c(8,12,13)){ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE)) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE)) -}else if(i %in% c(16,17)){ -if (i==16){ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSP_1_anketa221-2016-11-02.csv")) -}else{ -imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/FSD_1_anketa233-2016-11-02.csv")) -} -#imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/BF_2_anketa218-2016-11-02.csv")) -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel, stringsAsFactors = FALSE, encoding="UTF-8")) -}else{ -vhodni_podatki[[1]] <- suppressWarnings(read.csv2(imenaTabel[[1]], stringsAsFactors = FALSE, encoding="UTF-8")) -vhodni_podatki[[2]] <- suppressWarnings(read.csv2(imenaTabel[[2]], stringsAsFactors = FALSE, encoding="UTF-8")) -} -# prek idprogram-a poveĹľemo bazo odgovorov z bazo, -# kjer je dostopno stevilo vpisanih -vpisani_tabela <- list() -vpisani_tabela[[1]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_prvi_letnik.csv")) -vpisani_tabela[[2]] <- read.csv2(paste0(owd,"/pomozne_tabele/Vpisani_dr_drugi_letnik.csv")) -# Kodo pretvorimo v pdf. -knit2pdf('../splosnaDoktorska_po_Institucijah.Rnw', encoding = 'UTF-8') -#knit2pdf('../splosnaDoktorska.Rnw', encoding = 'UTF-8') -# Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID -novaMapa <- paste0("../rezultati/", ID, "/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -# Testi: -novaMapa <- paste0("../rezultati/vsaPorocila/po_institucijah/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna_doktorska",".pdf") -file.copy("splosnaDoktorska_po_Institucijah.pdf", novaMapa, overwrite =T) -# Delovno pot spremenimo v prvotno. -setwd(owd) -print(i) -print(imenaTabel) -} -setwd('temp') diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.aux b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.aux deleted file mode 100644 index 97cf70e73..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.aux +++ /dev/null @@ -1,148 +0,0 @@ -\relax -\providecommand\hyper@newdestlabel[2]{} -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\providecommand\HyField@AuxAddToCoFields[2]{} -\@writefile{toc}{\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.1} Prvi letnik}{1}{subsection.0.1.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.2} Drugi letnik}{2}{subsection.0.1.2}} -\@writefile{toc}{\contentsline {section}{\numberline {2.}Metodologija}{4}{section.0.2}} -\gdef \LT@i {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.94998pt}\LT@entry - {2}{29.41176pt}\LT@entry - {2}{23.32263pt}\LT@entry - {2}{43.13158pt}\LT@entry - {1}{23.32263pt}\LT@entry - {1}{31.67201pt}\LT@entry - {5}{22.94998pt}\LT@entry - {1}{36.68782pt}\LT@entry - {5}{17.47499pt}\LT@entry - {1}{30.38062pt}} -\gdef \LT@ii {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.94998pt}\LT@entry - {2}{29.41176pt}\LT@entry - {2}{23.32263pt}\LT@entry - {2}{40.89761pt}\LT@entry - {1}{23.32263pt}\LT@entry - {1}{31.67201pt}\LT@entry - {5}{22.94998pt}\LT@entry - {1}{36.68782pt}\LT@entry - {5}{17.47499pt}\LT@entry - {1}{30.38062pt}} -\@writefile{toc}{\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{6}{section.0.3}} -\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - prvi letnik\relax }}{6}{table.0.1}} -\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - drugi letnik\relax }}{6}{table.0.2}} -\@writefile{toc}{\contentsline {section}{\numberline {4.}Podrobne analize: Prvi letnik}{7}{section.0.4}} -\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Analiza dejavnikov}{7}{subsection.0.4.1}} -\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{7}{table.caption.3}} -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{8}{figure.caption.4}} -\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{9}{table.caption.5}} -\gdef \LT@iii {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{34.66718pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{52.44992pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{37.71112pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{37.40466pt}\LT@entry - {3}{22.94998pt}\LT@entry - {2}{41.763pt}} -\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{10}{table.0.5}} -\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Podrobna analiza vseh spremenljivk po sklopih}{11}{subsection.0.4.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.1}Infrastruktura in urniki}{11}{subsubsection.0.4.2.1}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{12}{subsubsection.0.4.2.2}} -\@writefile{toc}{\contentsline {section}{\numberline {5.}Podrobne analize: Drugi letnik}{13}{section.0.5}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Analiza dejavnikov in vsebinskih sklopov}{13}{subsection.0.5.1}} -\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{13}{table.caption.6}} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{14}{figure.caption.7}} -\@writefile{lot}{\contentsline {table}{\numberline {7}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{15}{table.caption.8}} -\gdef \LT@iv {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{34.66718pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{52.44992pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{37.71112pt}\LT@entry - {1}{17.47499pt}\LT@entry - {2}{37.40466pt}\LT@entry - {3}{22.94998pt}\LT@entry - {2}{41.763pt}} -\@writefile{lot}{\contentsline {table}{\numberline {8}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{16}{table.0.8}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Podrobna analiza vseh spremenljivk po sklopih}{17}{subsection.0.5.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.1}Infrastruktura in urniki}{17}{subsubsection.0.5.2.1}} -\gdef \LT@v {\LT@entry - {1}{268.0748pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{23.34998pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.03229pt}\LT@entry - {1}{29.62881pt}} -\gdef \LT@vi {\LT@entry - {1}{253.84842pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{23.34998pt}\LT@entry - {1}{32.18567pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{29.9245pt}} -\gdef \LT@vii {\LT@entry - {1}{253.84842pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{23.34998pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.03229pt}} -\gdef \LT@viii {\LT@entry - {1}{296.52756pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{23.34998pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{34.58914pt}} -\@writefile{toc}{\contentsline {section}{\numberline {6.}Analize skupnih spremenljivk po programih in po letnikih}{18}{section.0.6}} -\@writefile{lot}{\contentsline {table}{\numberline {9}{\ignorespaces Infrastruktura in urniki - po programih in po letnikih\relax }}{18}{table.0.9}} -\@writefile{lot}{\contentsline {table}{\numberline {10}{\ignorespaces Zadovoljstvo z izvajanjem programov - po programih in po letnikih\relax }}{18}{table.0.10}} -\@writefile{lot}{\contentsline {table}{\numberline {11}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - po programih in po letnikih\relax }}{18}{table.0.11}} -\@writefile{lot}{\contentsline {table}{\numberline {12}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - po programih in po letnikih\relax }}{18}{table.0.12}} -\gdef \LT@ix {\LT@entry - {1}{296.52756pt}\LT@entry - {1}{40.59012pt}\LT@entry - {5}{23.34998pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{29.77112pt}\LT@entry - {1}{32.32797pt}} -\@writefile{lot}{\contentsline {table}{\numberline {12}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - po programih in po letnikih - \textit {nadaljevanje}\relax }}{19}{table.0.12}} -\@writefile{lot}{\contentsline {table}{\numberline {13}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - po programih in po letnikih\relax }}{19}{table.0.13}} -\@writefile{lot}{\contentsline {table}{\numberline {14}{\ignorespaces Povpre\IeC {\v c}no \IeC {\v s}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij - po programih in po letnikih\relax }}{20}{table.caption.9}} -\@writefile{lot}{\contentsline {table}{\numberline {15}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{20}{table.caption.10}} -\@writefile{lot}{\contentsline {table}{\numberline {16}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?"\relax }}{21}{table.caption.11}} -\@writefile{lot}{\contentsline {table}{\numberline {17}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{21}{table.caption.12}} -\@writefile{lot}{\contentsline {table}{\numberline {18}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij?"\relax }}{21}{table.caption.13}} -\@writefile{lot}{\contentsline {table}{\numberline {19}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kam bi se vpisali?"\relax }}{22}{table.caption.14}} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.out b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.out deleted file mode 100644 index b50b681ac..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.out +++ /dev/null @@ -1,15 +0,0 @@ -\BOOKMARK [1][-]{section.0.1}{Povzetek}{}% 1 -\BOOKMARK [2][-]{subsection.0.1.1}{ Prvi letnik}{section.0.1}% 2 -\BOOKMARK [2][-]{subsection.0.1.2}{ Drugi letnik}{section.0.1}% 3 -\BOOKMARK [1][-]{section.0.2}{Metodologija}{}% 4 -\BOOKMARK [1][-]{section.0.3}{Sodelovanje \235tudentov v anketi}{}% 5 -\BOOKMARK [1][-]{section.0.4}{Podrobne analize: Prvi letnik}{}% 6 -\BOOKMARK [2][-]{subsection.0.4.1}{Analiza dejavnikov}{section.0.4}% 7 -\BOOKMARK [2][-]{subsection.0.4.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.4}% 8 -\BOOKMARK [3][-]{subsubsection.0.4.2.1}{Infrastruktura in urniki}{subsection.0.4.2}% 9 -\BOOKMARK [3][-]{subsubsection.0.4.2.2}{\227tevilo tedensko porabljenih ur za doktorski \235tudij}{subsection.0.4.2}% 10 -\BOOKMARK [1][-]{section.0.5}{Podrobne analize: Drugi letnik}{}% 11 -\BOOKMARK [2][-]{subsection.0.5.1}{Analiza dejavnikov in vsebinskih sklopov}{section.0.5}% 12 -\BOOKMARK [2][-]{subsection.0.5.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.5}% 13 -\BOOKMARK [3][-]{subsubsection.0.5.2.1}{Infrastruktura in urniki}{subsection.0.5.2}% 14 -\BOOKMARK [1][-]{section.0.6}{Analize skupnih spremenljivk po programih in po letnikih}{}% 15 diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.pdf b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.pdf deleted file mode 100644 index 8f087854b..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.pdf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.synctex.gz b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.synctex.gz deleted file mode 100644 index f755fed42..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.synctex.gz and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.tex b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.tex deleted file mode 100644 index 100f709f4..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.tex +++ /dev/null @@ -1,800 +0,0 @@ -% Skripta 1: po institucijah - -\documentclass[11pt,a4paper]{report}\usepackage[]{graphicx}\usepackage[]{color} -%% maxwidth is the original width if it is less than linewidth -%% otherwise use linewidth (to make sure the graphics do not exceed the margin) -\makeatletter -\def\maxwidth{ % - \ifdim\Gin@nat@width>\linewidth - \linewidth - \else - \Gin@nat@width - \fi -} -\makeatother - -\definecolor{fgcolor}{rgb}{0.345, 0.345, 0.345} -\newcommand{\hlnum}[1]{\textcolor[rgb]{0.686,0.059,0.569}{#1}}% -\newcommand{\hlstr}[1]{\textcolor[rgb]{0.192,0.494,0.8}{#1}}% -\newcommand{\hlcom}[1]{\textcolor[rgb]{0.678,0.584,0.686}{\textit{#1}}}% -\newcommand{\hlopt}[1]{\textcolor[rgb]{0,0,0}{#1}}% -\newcommand{\hlstd}[1]{\textcolor[rgb]{0.345,0.345,0.345}{#1}}% -\newcommand{\hlkwa}[1]{\textcolor[rgb]{0.161,0.373,0.58}{\textbf{#1}}}% -\newcommand{\hlkwb}[1]{\textcolor[rgb]{0.69,0.353,0.396}{#1}}% -\newcommand{\hlkwc}[1]{\textcolor[rgb]{0.333,0.667,0.333}{#1}}% -\newcommand{\hlkwd}[1]{\textcolor[rgb]{0.737,0.353,0.396}{\textbf{#1}}}% -\let\hlipl\hlkwb - -\usepackage{framed} -\makeatletter -\newenvironment{kframe}{% - \def\at@end@of@kframe{}% - \ifinner\ifhmode% - \def\at@end@of@kframe{\end{minipage}}% - \begin{minipage}{\columnwidth}% - \fi\fi% - \def\FrameCommand##1{\hskip\@totalleftmargin \hskip-\fboxsep - \colorbox{shadecolor}{##1}\hskip-\fboxsep - % There is no \\@totalrightmargin, so: - \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}% - \MakeFramed {\advance\hsize-\width - \@totalleftmargin\z@ \linewidth\hsize - \@setminipage}}% - {\par\unskip\endMakeFramed% - \at@end@of@kframe} -\makeatother - -\definecolor{shadecolor}{rgb}{.97, .97, .97} -\definecolor{messagecolor}{rgb}{0, 0, 0} -\definecolor{warningcolor}{rgb}{1, 0, 1} -\definecolor{errorcolor}{rgb}{1, 0, 0} -\newenvironment{knitrout}{}{} % an empty environment to be redefined in TeX - -\usepackage{alltt} -\usepackage[cm]{fullpage} -\newcommand*\rot{\rotatebox{90}} -%\zmanjša robove dokumenta -%\usepackage{fullpage} -% Spremeni razmik med naslovom kazala vrhom strani -\usepackage{titlesec} -\titleformat{\chapter}[display] - {\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge} -\titlespacing*{\chapter}{0pt}{-15pt}{25pt} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%slovenski napisi -\usepackage{../sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -%Hiperlink tabele -% Pomembno, da pravilno prelomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -% Times font -\usepackage{times} -\usepackage{color} %May be necessary if you want to color links -\usepackage[breaklinks]{hyperref} -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} -\usepackage{breakurl} -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri poglavjih -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -\usepackage{graphicx} -\graphicspath{ {../logo/} } -% Uporabimo za prilagajanje glave in noge porocila -\usepackage{fancyhdr} - - - - - - -% Naslovnica - -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{Fakulteta za družbene vede}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt - -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\fancypagestyle{prvi}{ - \fancyhead[R]{\small{Prvi letnik}} - -} - -\fancypagestyle{drugi}{ - \fancyhead[R]{\small{Drugi letnik}} -} - -\fancypagestyle{oba}{ - \fancyhead[R]{\small{}} -} - -% Pomembno da so podpoglavja ostevilcena -\setcounter{secnumdepth}{3} -\setcounter{tocdepth}{3} -\IfFileExists{upquote.sty}{\usepackage{upquote}}{} -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{logo_FDV} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2in]}}} -\textup{\LARGE \textbf{Fakulteta za družbene vede} \\[0.3in] \textcolor[HTML]{B4162C} {\textbf{Študentska anketa o študiju na III. stopnji}}} \\[0.5in] -{\large Študijsko leto 2016/17 \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - - - - - - - -\begin{kframe} - - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in nchar(as.character(vrstaProg\_output[[i]][j])): invalid multibyte string, element 1}}\end{kframe}\section{Povzetek}Povzemamo glavne ugotovitve evalvacijske ankete zadovoljstva študentov tretje stopnje "FDV (2016/17)". V anketi je odgovarjalo 16 študentov prvega letnika (od 28 vpisanih) in 12 študentov drugega letnika (od 26 vpisanih). -V povzetku se omejujemo predvsem na prikaz ocen za dejavnike splošnega zadovoljstva na lestvici 1 - 5. Povprečja, ki izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji). \\ \\ - -\vspace*{-1cm}\subsection{ Prvi letnik} Odlično je ocenjen naslednji sklop (mediana dejavnikov je v intervalu 4.5 - 5.0): \begin{itemize}\item \textbf{Svetovalna pomoč študentom:} \textit{'Osebje študentskega referata ima ustrezen odnos do študentov.'} (\textcolor[HTML]{006666}{\textbf{4.9}}), \textit{'Osebje študentskega referata je odzivno in učinkovito.'} (\textcolor[HTML]{006666}{\textbf{4.7}}), \textit{'Informacije na spletnih straneh so dovolj jasne in celovite.'} (\textcolor[HTML]{006666}{\textbf{4.7}}) in \textit{'Uradne ure študentskega referata so primerne.'} (\textbf{\textcolor[HTML]{36BF4B}{4.4}}). \end{itemize}Zelo dobro so ocenjeni naslednji sklopi (mediana dejavnikov je v intervalu 4.0 - 4.5): \begin{itemize}\item \textbf{Infrastruktura in urniki:} \textit{'Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a.'} (\textcolor[HTML]{006666}{\textbf{4.6}}), \textit{'Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza.'} (\textbf{\textcolor[HTML]{36BF4B}{4.4}}), \textit{'Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}) in \textit{'Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}).\item \textbf{Pomoč in podpora mentorja:} \textit{'Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti.'} (\textcolor[HTML]{006666}{\textbf{4.7}}), \textit{'Pomoč mentorja pri pripravi znanstvenega članka je ustrezna.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Pogostost stikov z mentorjem/mentorico je primerna.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga.'} (\textcolor[HTML]{006666}{\textbf{4.5}}) in \textit{'Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.4}}).\item \textbf{Zadovoljstvo z izvajanjem programov:} \textit{'Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa.'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}), \textit{'Ponudba izbirnih predmetov je ustrezna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.1}}), \textit{'Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.1}}), \textit{'V okviru organiziranih oblik študija je bila spodbujena kritična razprava.'} (3.9) in \textit{'Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji.'} (3.7). \end{itemize}V celoti gledano je pozitivno ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave (mediana dejavnikov je v intervalu 3.5 - 4.0): \begin{itemize}\item \textbf{Del študija in ostale aktivnosti v tujini:} \textit{'Imam možnost udeležbe na znanstvenih konferencah v tujini.'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}), \textit{'Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini.'} (\textbf{\textcolor[HTML]{36BF4B}{4.0}}), \textit{'Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini.'} (3.5) in \textit{'Sem vključen/a v raziskovalno skupino / program / projekt.'} (\textcolor[HTML]{F58137}{\textbf{3.4}}). \end{itemize} Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana. \newline Podrobna primerjava rezultatov z drugimi članicami UL je na povezavi \url{http://ul.1ka.si}.\newpage\subsection{ Drugi letnik} Odlično je ocenjen naslednji sklop (mediana dejavnikov je v intervalu 4.5 - 5.0): \begin{itemize}\item \textbf{Svetovalna pomoč študentom:} \textit{'Osebje študentskega referata ima ustrezen odnos do študentov.'} (\textcolor[HTML]{006666}{\textbf{4.9}}), \textit{'Osebje študentskega referata je odzivno in učinkovito.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Uradne ure študentskega referata so primerne.'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}) in \textit{'Informacije na spletnih straneh so dovolj jasne in celovite.'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}). \end{itemize}Zelo dobro sta ocenjena naslednja sklopa (mediana dejavnikov je v intervalu 4.0 - 4.5): \begin{itemize}\item \textbf{Infrastruktura in urniki:} \textit{'Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza.'} (\textcolor[HTML]{006666}{\textbf{4.8}}), \textit{'Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.).'} (\textcolor[HTML]{006666}{\textbf{4.6}}), \textit{'S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.).'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}), \textit{'Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a.'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}) in \textit{'Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu.'} (\textbf{\textcolor[HTML]{36BF4B}{4.1}}).\item \textbf{Pomoč in podpora mentorja:} \textit{'Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Pomoč mentorja pri pripravi znanstvenega članka je ustrezna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.4}}), \textit{'Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu.'} (\textbf{\textcolor[HTML]{36BF4B}{4.4}}), \textit{'Pogostost stikov z mentorjem/mentorico je primerna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}) in \textit{'Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna.'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}). \end{itemize}V celoti gledano je pozitivno ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave (mediana dejavnikov je v intervalu 3.5 - 4.0): \begin{itemize}\item \textbf{Zadovoljstvo z izvajanjem programov:} \textit{'Ponudba izbirnih predmetov je ustrezna.'} (\textcolor[HTML]{006666}{\textbf{4.5}}), \textit{'Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa.'} (\textbf{\textcolor[HTML]{36BF4B}{4.2}}), \textit{'Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji.'} (3.8), \textit{'V okviru organiziranih oblik študija je bila spodbujena kritična razprava.'} (3.8) in \textit{'Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.).'} (3.8). \end{itemize}Kritično nizko je ocenjen naslednji sklop (mediana dejavnikov je manjša od 3.0): \begin{itemize}\item \textbf{Del študija in ostale aktivnosti v tujini:} \textit{'Imam možnost udeležbe na znanstvenih konferencah v tujini.'} (\textcolor[HTML]{F58137}{\textbf{3.4}}), \textit{'Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini.'} (\textcolor[HTML]{F58137}{\textbf{3.0}}), \textit{'Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini.'} (\textcolor[HTML]{B6321C}{\textbf{2.9}}) in \textit{'Sem vključen/a v raziskovalno skupino / program / projekt.'} (\textcolor[HTML]{B6321C}{\textbf{2.3}}). \end{itemize} Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana. \newline Podrobna primerjava rezultatov z drugimi članicami UL je na povezavi \url{http://ul.1ka.si}.\newpage -%\vfill \hyperlink{thesentence}{*Način avtomatskega generiranja povzetka je opisan v prilogi 2.} -\tableofcontents -\newpage -\section{Metodologija} - - V okviru projekta Kakovost – Univerza v Ljubljani (KUL) je bila v letih 2013 in 2014 izvedena prenova študentskih anket, nato pa je s študijskim letom 2014/2015 v veljavo stopil tudi nov Pravilnik o študentskih anketah. Pravilnik ureja izvajanje šestih študentskih anket na vseh članicah Univerze v Ljubljani (podrobnosti so na {\url{http://ul.1ka.si}}). Ankete se izvajajo za predmete in pedagoge na vseh treh stopnjah, na prvih dveh stopnjah pa se izvaja tudi posebna anketa o splošnih vidikih študijskega procesa. Po pilotni izvedbi 2014/2015 so bile v študijskem letu 2015/2016 ankete prvič izvedene na vseh članicah. \\ - Anketa o doktorskem študiju se izvede v prvem (dostop do ankete: {\url{http://ul.1ka.si/dr1}}) in v drugem (dostop do ankete: {\url{http://ul.1ka.si/dr2}}) letniku doktorskega študija, in sicer po zaključenih izpitnih obdobjih od julija do konca drugega semestra. Opravljena ali izrecno zavrnjena anketa je predpogoj za vpis v naslednji letnik. \\ - Za razliko od prve in druge stopnje študenti na tretji stopnji ne dobijo dinamično generiranega vprašalnika glede na vpisane predmete, ampak imajo vsi enak vprašalnik. \\ - Anketi se sicer razlikujeta glede na letnik, vendar obe vsebujeta tudi pet skupnih sklopov s 25 vprašanji. Sklopi so naslednji: - \begin{itemize} - \item Svetovalna pomoč študentom - \item Infrastruktura in urniki - \item Pomoč in podpora mentorja - \item Zadovoljstvo z izvajanjem - \item Aktivnosti v tujini - \end{itemize} - - Vsak od sklopov praviloma vsebuje med 4 in 6 trditev, ki so jih študenti ocenjevali na lestvici med 1 in 5, pri čemer 1 pomeni »sploh se ne strinjam« in 5 »popolnoma se strinjam«. Oceni 1 in 2 sta torej negativni, oceni 4 in 5 pozitivni, ocena 3 pa je nevtralna (niti se ne strinjam, niti se strinjam). Poleg tega je vsaka anketa vsebovala še dodatna vprašanja zaprtega tipa in tudi odprta vprašanja, kjer so študenti lahko pojasnili svoja stališča. Pri tem so vse navedbe vključene v poročilo tako kot so bile zapisane v anketi, torej brez cenzure in jezikovnih posegov. Širša javnost ima dostop do vseh analiz, ki ne vključujejo odprtih odgovorov, kar je vključeno tudi v sumarno poročilo na nivoju UL. \\ - Zaradi morebitne občutljivosti odgovorov in potencialnega razkritja identitete je pričujoče poročilo namenjeno izključno interni uporabi (vodstvo in koordinator programa). \\ - Ker je pri nekaterih programih število anketirancev nizko, so ti podatki zgolj informativne narave in iz njih ne moremo sklepati na populacijo. V prilogi so zato ocene, kjer je število enot manjše od 10, označene z enojnim oklepajem, ocene, kjer je število enot manjše od 5, pa z dvema oklepajema. Če je število enot manjše od 4, je namesto povprečja izpisana pika, kar pomeni da gre za neničelno oceno, ki je zelo nenatančna.  \\ - V splošnem velja pri razumevanju pričujočih analiz upoštevati tudi splošna metodološka priporočila študentskih anket: {\url{http://ul.1ka.si/metodologija}}. \\ - Zaradi množice številk, ki so prikazana v poročilu, so za lažje pregledovanje najvišje in najnižje vrednosti obarvane. Pri tem velja upoštevati naravo ocenjevanja na tretji stopnji (mediana je okoli 4.2), kjer so ocene bistveno višje kot pri ocenjevanju na prvih dveh stopnjah (mediana je okoli 3.7), zato je tudi obarvanje nekoliko drugačno. V grobem sledimo načelu, da se označi spodnja in zgornja četrtina, dodatno pa je obarvana še spodnja in zgornja desetina. Označene (obarvane) so zato naslednje povprečne ocene: - \begin{itemize} - \item ocena od \textcolor[HTML]{B6321C}{\textbf{1.0}} do \textcolor[HTML]{B6321C}{\textbf{3.4}} pomeni razmeroma nizko vrednost, saj je študentov, ki so dali pozitivno oceno (4 ali 5), v grobem manj kot polovica, kar z drugimi besedami pomeni, da večina študentov ni zmogla pozitivne ocene; pri tem velja dodatno izpostaviti (čeprav ni drugače obarvano), da so še posebej kritične negativne ocene (pod 3.0). - \item ocena od \textcolor[HTML]{F58137}{\textbf{3.5}} do \textcolor[HTML]{F58137}{\textbf{3.9}} pomeni, da obstaja znaten prostor za izboljšave, saj je študentov, ki so dali odlično oceno (5) praviloma manj kot študentov, ki so dali oceno pod 4 in torej niso zmogli pozitivne ocene (1, 2, 3).  - \item ocene od 4.0 do do 4.4 predstavljajo glavnino vseh ocen in niso posebej obarvane; - \item ocena od \textcolor[HTML]{36BF4B}{\textbf{4.5}} do \textcolor[HTML]{36BF4B}{\textbf{4.7}} je pomemben mejnik odličnosti, saj v takem primeru ocene odlično (5) predstavljajo večino vseh ocen; - \item ocena nad (vključno) \textcolor[HTML]{006666}{\textbf{4.8}} označuje najvišji nivo odličnosti, saj ocene odlično (5) predstavljajo več kot tri četrtine vseh ocen.\\ - \end{itemize} -   - V rezultatih izpisan \textit{n} označuje število enot, ki so odgovorile na prvo vprašanje (pri ostalih vprašanjih je zato število odgovorov včasih nekoliko večje ali manjše). Dodati velja, da se v tabelah skupna povprečja  zaradi celic s premalo enotami, ki posamično niso izpisane, lahko razlikujejo od kombinacije objavljenih poprečij (Poglavje 4).\\ -   - V anketi so identificirani le študenti, ki so sodelovanje bodisi zavrnili bodisi sprejeli in odgovorili. Skupno število študentov, ki so se tako ali drugače odzvali, se razlikuje od vpisanih študentov, saj nekateri študenti k anketi niso niti pristopili. Večinoma gre pri tem za študente, ki so študij opustili oziroma se niso vpisali v naslednji letnik, saj je bila izpolnjena (ali zavrnjena) anketa predpogoj za vpis. \\Povzemimo še odziv študentov: - \begin{itemize} \item V prvi letnik je vpisanih 28 študentov, od tega je k anketi pristopilo 20 študentov, 4 študenti so nato sodelovanje izrecno zavrnili, preostalih 16 študentov pa je na anketo odgovorilo. \item V drugi letnik je vpisanih 26 študentov, od tega je k anketi pristopilo 14 študentov, 2 študenta sta nato sodelovanje izrecno zavrnila, preostalih 12 študentov pa je na anketo odgovorilo. \end{itemize} -%\vfill -%*Besedilo je zajeto s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/} -\newpage -\section{Sodelovanje študentov v anketi} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov "FDV" po letnikih in po programih. - -V koloni "odgovoril" je z enojnimi (<10) ali dvojnimi ((<5)) oklepaji označeno morebitno nižje število odgovorov "n" (glej poglavje Metodologija), ki v analizah zahteva več previdnosti pri interpretacijah. - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:11 2017 -\begin{longtable}{p{7.4cm}|cc|cc|cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - prvi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r|}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r|}{\textbf{ni prostopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Humanistika in druboslovje interdisciplinarni (vpisani) & 28 & \textbf{100} & 8 & 29 & 20 & 71 & 16 & 57 & 4 & 14 \\ - Humanistika in druboslovje interdisciplinarni (pristopili) & & & & & 20 & \textbf{100} & 16 & 80 & 4 & 20 \\ - \hline -Skupaj (vpisani) & 28 & \textbf{100} & 8 & 29 & 20 & 71 & 16 & 57 & 4 & 14 \\ - Skupaj (pristopili) & & & & & 20 & \textbf{100} & 16 & 80 & 4 & 20 \\ - \hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:11 2017 -\begin{longtable}{p{7.4cm}|cc|cc|cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - drugi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r|}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r|}{\textbf{ni pristopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Humanistika in druboslovje interdisciplinarni (vpisani) & 26 & \textbf{100} & 12 & 46 & 14 & 54 & 12 & 46 & 2 & 8 \\ - Humanistika in druboslovje interdisciplinarni (pristopili) & & & & & 14 & \textbf{100} & 12 & 86 & 2 & 14 \\ - \hline -Skupaj (vpisani) & 26 & \textbf{100} & 12 & 46 & 14 & 54 & 12 & 46 & 2 & 8 \\ - Skupaj (pristopili) & & & & & 14 & \textbf{100} & 12 & 86 & 2 & 14 \\ - \hline -\end{longtable} - - -\newpage\pagestyle{prvi}\section{Podrobne analize: Prvi letnik}\subsection{Analiza dejavnikov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so sicer vključene v agregatne analize tudi v poglavju 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:11 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Osebje študentskega referata ima ustrezen odnos do študentov. & 16 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & 16 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.8 \\ - Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & 16 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.6 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata je odzivno in učinkovito. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - Informacije na spletnih straneh so dovolj jasne in celovite. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.8 \\ - S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.9 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - Pogostost stikov z mentorjem/mentorico je primerna. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - \rowcolor[gray]{0.95}Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & 15 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - \rowcolor[gray]{0.95}Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & 16 & 4.4 & 1.2 \\ - Uradne ure študentskega referata so primerne. & 16 & 4.4 & 0.8 \\ - \rowcolor[gray]{0.95}Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & 16 & 4.4 & 0.9 \\ - Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & 16 & 4.3 & 1.2 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & 15 & 4.2 & 0.8 \\ - Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & 16 & 4.2 & 0.8 \\ - \rowcolor[gray]{0.95}Imam možnost udeležbe na znanstvenih konferencah v tujini. & 13 & 4.2 & 1.0 \\ - Ponudba izbirnih predmetov je ustrezna. & 14 & 4.1 & 0.9 \\ - \rowcolor[gray]{0.95}Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & 16 & 4.1 & 0.9 \\ - Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & 11 & 4.0 & 0.9 \\ - \rowcolor[gray]{0.95}V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & 14 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & 15 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.2 \\ - \rowcolor[gray]{0.95}Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & 13 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.6 \\ - Sem vključen/a v raziskovalno skupino / program / projekt. & 13 & \textbf{\textcolor[HTML]{B6321C}{3.4}} & 1.8 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/grafVsehDejavnikov_prvi.pdf} -\end{figure}Najboljše je ocenjen dejavnik "Osebje študentskega referata ima ustrezen odnos do študentov." (\textbf{\textcolor[HTML]{006666}{4.9}}) \\ \\Najslabše je ocenjen dejavnik "Sem vključen/a v raziskovalno skupino / program / projekt." (\textbf{\textcolor[HTML]{B6321C}{3.4}})\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:12 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Ustrezen odnos osebja & 16 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Odzivnost in učinkovitost ref. & 15 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - Celovite info. na spletni str. & 15 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - Uradne ure študentskega ref. & 16 & 3 & 5 & 4.4 & 0.8 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}Odzivnost mentorja po el. pošti & 15 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.8 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri znan. čl. & 15 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem & 15 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - \rowcolor[gray]{0.95}Mentor mi nudi podporo & 16 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri težavah & 15 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.1 \\ - \rowcolor[gray]{0.95}Ustrezno svetovanje mentorja & 16 & 1 & 5 & 4.4 & 1.2 \\ - \multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored izvajanja & 16 & 2 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.8 \\ - Pravilno navedeni izvajalci & 16 & 3 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.6 \\ - Spremembe poteka & 16 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.9 \\ - Razpored ur mi ustreza & 16 & 2 & 5 & 4.4 & 0.9 \\ - Druga infrastruktura & 15 & 3 & 5 & 4.2 & 0.8 \\ - Infrastr. za pridobivanje virov & 16 & 2 & 5 & 4.2 & 0.8 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & 16 & 1 & 5 & 4.3 & 1.2 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & 14 & 3 & 5 & 4.1 & 0.9 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & 16 & 2 & 5 & 4.1 & 0.9 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & 14 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & 15 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.7}} & 1.2 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 13 & 2 & 5 & 4.2 & 1.0 \\ - Možnost študija/razis. dela v tuj. & 11 & 2 & 5 & 4.0 & 0.9 \\ - Del študija ali razis. dela v tujini & 13 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.6 \\ - Vključenost v razis. sk. & 13 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.4}} & 1.8 \\ - \hline -\end{tabular} -\end{table} -\clearpage - -\newpage \begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:12 2017 - \hline \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Ustrezen odnos osebja & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 12 & 14 & 88 \\ - Odzivnost in učinkovitost ref. & 0 & 0 & 0 & 0 & 1 & 7 & 2 & 13 & 12 & 80 \\ - Celovite info. na spletni str. & 0 & 0 & 0 & 0 & 1 & 7 & 2 & 13 & 12 & 80 \\ - Uradne ure študentskega ref. & 0 & 0 & 0 & 0 & 3 & 19 & 3 & 19 & 10 & 62 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Odzivnost mentorja po el. pošti & 0 & 0 & 1 & 7 & 0 & 0 & 2 & 13 & 12 & 80 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri znan. čl. & 1 & 7 & 0 & 0 & 1 & 7 & 1 & 7 & 12 & 80 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pogostost stikov z mentorjem & 0 & 0 & 2 & 13 & 0 & 0 & 1 & 7 & 12 & 80 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Mentor mi nudi podporo & 1 & 6 & 0 & 0 & 1 & 6 & 2 & 12 & 12 & 75 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri težavah & 1 & 7 & 0 & 0 & 1 & 7 & 2 & 13 & 11 & 73 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustrezno svetovanje mentorja & 1 & 6 & 0 & 0 & 2 & 12 & 1 & 6 & 12 & 75 \\ - \multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored izvajanja & 0 & 0 & 1 & 6 & 0 & 0 & 1 & 6 & 14 & 88 \\ - Pravilno navedeni izvajalci & 0 & 0 & 0 & 0 & 1 & 6 & 2 & 12 & 13 & 81 \\ - Spremembe poteka & 0 & 0 & 1 & 6 & 1 & 6 & 2 & 12 & 12 & 75 \\ - Razpored ur mi ustreza & 0 & 0 & 1 & 6 & 1 & 6 & 5 & 31 & 9 & 56 \\ - Druga infrastruktura & 0 & 0 & 0 & 0 & 3 & 20 & 6 & 40 & 6 & 40 \\ - Infrastr. za pridobivanje virov & 0 & 0 & 1 & 6 & 1 & 6 & 8 & 50 & 6 & 38 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 1 & 6 & 1 & 6 & 1 & 6 & 3 & 19 & 10 & 62 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 0 & 0 & 0 & 0 & 4 & 29 & 4 & 29 & 6 & 43 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 0 & 0 & 1 & 6 & 3 & 19 & 6 & 38 & 6 & 38 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 1 & 7 & 1 & 7 & 3 & 21 & 2 & 14 & 7 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 1 & 7 & 1 & 7 & 4 & 27 & 5 & 33 & 4 & 27 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 0 & 0 & 1 & 8 & 2 & 15 & 4 & 31 & 6 & 46 \\ - Možnost študija/razis. dela v tuj. & 0 & 0 & 1 & 9 & 1 & 9 & 6 & 55 & 3 & 27 \\ - Del študija ali razis. dela v tujini & 3 & 23 & 0 & 0 & 2 & 15 & 4 & 31 & 4 & 31 \\ - Vključenost v razis. sk. & 3 & 23 & 2 & 15 & 1 & 8 & 1 & 8 & 6 & 46 \\ - \hline \end{longtable} \newpage - - - - -\clearpage - -\subsection{Podrobna analiza vseh spremenljivk po sklopih} - V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavje 6), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in prazen\_df\_output[[1]]: subscript out of bounds}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in nchar(unique(odg\_gledeProgram[[i]][[j]]\$program)): invalid multibyte string, element 1}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in subset.default(izbirni\_predmeti, Vprasanje == i): object 'Vprasanje' not found}}\end{kframe}\newpage\subsubsection{Število tedensko porabljenih ur za doktorski študij}Študenti so v povprečju tedensko za svoj doktorski študij porabili \textbf{28} ur. Standardni odklon znaša \textbf{16} ur.\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in gsub("{}\$"{}, "{}\textbackslash{}\textbackslash{}\$"{}, result, fixed = TRUE): input string 1 is invalid UTF-8}}\end{kframe} - -\begin{kframe} - - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in cas\_poLetniku[[1]]: subscript out of bounds}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in 3:ncol(seznam): argument of length 0}}\end{kframe} - -\newpage\clearpage\pagestyle{drugi}\section{Podrobne analize: Drugi letnik}\subsection{Analiza dejavnikov in vsebinskih sklopov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so sicer vključene v agregatne analize tudi v poglavju 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:12 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Osebje študentskega referata ima ustrezen odnos do študentov. & 12 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata je odzivno in učinkovito. & 12 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & 12 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & 12 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.9 \\ - S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & 11 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.9 \\ - \rowcolor[gray]{0.95}Ponudba izbirnih predmetov je ustrezna. & 11 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & 11 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.9 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & 11 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & (9) & 4.4 & 1.0 \\ - \rowcolor[gray]{0.95}Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & 11 & 4.4 & 0.9 \\ - Uradne ure študentskega referata so primerne. & 12 & 4.3 & 1.0 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & 10 & 4.3 & 1.1 \\ - Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & 11 & 4.3 & 1.0 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem/mentorico je primerna. & 11 & 4.3 & 1.0 \\ - Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & (9) & 4.2 & 1.1 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & 12 & 4.2 & 0.9 \\ - Informacije na spletnih straneh so dovolj jasne in celovite. & 12 & 4.2 & 0.8 \\ - \rowcolor[gray]{0.95}Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & 10 & 4.1 & 1.3 \\ - Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & 12 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.5 \\ - \rowcolor[gray]{0.95}V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & 12 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.5 \\ - Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & 11 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.3 \\ - \rowcolor[gray]{0.95}Imam možnost udeležbe na znanstvenih konferencah v tujini. & 11 & \textbf{\textcolor[HTML]{B6321C}{3.4}} & 1.5 \\ - Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & 11 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & 1.5 \\ - \rowcolor[gray]{0.95}Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & (9) & \textbf{\textcolor[HTML]{B6321C}{2.9}} & 1.8 \\ - Sem vključen/a v raziskovalno skupino / program / projekt. & 12 & \textbf{\textcolor[HTML]{B6321C}{2.3}} & 1.5 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\includegraphics[width=\maxwidth]{../rezultati/3000021/grafi/grafVsehDejavnikov_drugi.pdf} -\end{figure}Najboljše je ocenjen dejavnik "Osebje študentskega referata ima ustrezen odnos do študentov." (\textbf{\textcolor[HTML]{006666}{4.9}}) \\ \\Najslabše je ocenjen dejavnik "Sem vključen/a v raziskovalno skupino / program / projekt." (\textbf{\textcolor[HTML]{B6321C}{2.3}})\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Ustrezen odnos osebja & 12 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Odzivnost in učinkovitost ref. & 12 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Uradne ure študentskega ref. & 12 & 2 & 5 & 4.3 & 1.0 \\ - Celovite info. na spletni str. & 12 & 2 & 5 & 4.2 & 0.8 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}Pomoč mentorja pri težavah & 11 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.9 \\ - \rowcolor[gray]{0.95}Odzivnost mentorja po el. pošti & 11 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri znan. čl. & (9) & 2 & 5 & 4.4 & 1.0 \\ - \rowcolor[gray]{0.95}Mentor mi nudi podporo & 11 & 2 & 5 & 4.4 & 0.9 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem & 11 & 2 & 5 & 4.3 & 1.0 \\ - \rowcolor[gray]{0.95}Ustrezno svetovanje mentorja & (9) & 2 & 5 & 4.2 & 1.1 \\ - \multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored ur mi ustreza & 12 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Infrastr. za pridobivanje virov & 12 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.9 \\ - Spremembe poteka & 11 & 2 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.9 \\ - Druga infrastruktura & 10 & 2 & 5 & 4.3 & 1.1 \\ - Razpored izvajanja & 11 & 2 & 5 & 4.3 & 1.0 \\ - Pravilno navedeni izvajalci & 10 & 1 & 5 & 4.1 & 1.3 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & 11 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & 12 & 2 & 5 & 4.2 & 0.9 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & 12 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.5 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & 12 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.5 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & 11 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.3 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 11 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.4}} & 1.5 \\ - Del študija ali razis. dela v tujini & 11 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & 1.5 \\ - Možnost študija/razis. dela v tuj. & (9) & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & 1.8 \\ - Vključenost v razis. sk. & 12 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.3}} & 1.5 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 - \hline \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Ustrezen odnos osebja & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 8 & 11 & 92 \\ - Odzivnost in učinkovitost ref. & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 17 & 10 & 83 \\ - Uradne ure študentskega ref. & 0 & 0 & 1 & 8 & 1 & 8 & 3 & 25 & 7 & 58 \\ - Celovite info. na spletni str. & 0 & 0 & 1 & 8 & 0 & 0 & 7 & 58 & 4 & 33 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri težavah & 0 & 0 & 1 & 9 & 0 & 0 & 3 & 27 & 7 & 64 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Odzivnost mentorja po el. pošti & 0 & 0 & 0 & 0 & 1 & 9 & 4 & 36 & 6 & 55 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pomoč mentorja pri znan. čl. & 0 & 0 & 1 & 11 & 0 & 0 & 2 & 22 & 6 & 67 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Mentor mi nudi podporo & 0 & 0 & 1 & 9 & 0 & 0 & 4 & 36 & 6 & 55 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pogostost stikov z mentorjem & 0 & 0 & 1 & 9 & 1 & 9 & 3 & 27 & 6 & 55 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustrezno svetovanje mentorja & 0 & 0 & 1 & 11 & 1 & 11 & 2 & 22 & 5 & 56 \\ - \multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ Razpored ur mi ustreza & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 25 & 9 & 75 \\ - Infrastr. za pridobivanje virov & 0 & 0 & 1 & 8 & 0 & 0 & 2 & 17 & 9 & 75 \\ - Spremembe poteka & 0 & 0 & 1 & 9 & 0 & 0 & 3 & 27 & 7 & 64 \\ - Druga infrastruktura & 0 & 0 & 1 & 10 & 1 & 10 & 2 & 20 & 6 & 60 \\ - Razpored izvajanja & 0 & 0 & 1 & 9 & 1 & 9 & 3 & 27 & 6 & 55 \\ - Pravilno navedeni izvajalci & 1 & 10 & 0 & 0 & 1 & 10 & 3 & 30 & 5 & 50 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 0 & 0 & 0 & 0 & 1 & 9 & 4 & 36 & 6 & 55 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 0 & 0 & 1 & 8 & 1 & 8 & 5 & 42 & 5 & 42 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 2 & 17 & 0 & 0 & 1 & 8 & 4 & 33 & 5 & 42 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 1 & 8 & 2 & 17 & 1 & 8 & 2 & 17 & 6 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 1 & 9 & 1 & 9 & 1 & 9 & 4 & 36 & 4 & 36 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 2 & 18 & 1 & 9 & 2 & 18 & 3 & 27 & 3 & 27 \\ - Del študija ali razis. dela v tujini & 3 & 27 & 1 & 9 & 2 & 18 & 3 & 27 & 2 & 18 \\ - Možnost študija/razis. dela v tuj. & 3 & 33 & 1 & 11 & 2 & 22 & 0 & 0 & 3 & 33 \\ - Vključenost v razis. sk. & 6 & 50 & 0 & 0 & 3 & 25 & 2 & 17 & 1 & 8 \\ - \hline \end{longtable} \newpage\subsection{Podrobna analiza vseh spremenljivk po sklopih} -V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavje 6), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in prazen\_df\_output[[2]]: subscript out of bounds}}\end{kframe} -\newpage -\pagestyle{oba} -\section{Analize skupnih spremenljivk po programih in po letnikih} -V nadaljevanju so analizirane vse skupne spremenljivke (razen odprtih vprašanj), ki so bile hkrati vključene v oba letnika. Poleg 25 dejavnikov na lestvicah 1-5 je vključenih še 13 drugih spremenljivk. Analize v tem poglavju so zato namenjene predvsem primerjavam oziroma razlikam med letnikoma in programi. - -\begin{kframe} - - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in nchar(tip\_programa\_veljavni[[i]]\$naziv[j]): invalid multibyte string, element 1}}\end{kframe}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{longtable}{p{9cm}cc|cccccc} -\caption{Infrastruktura in urniki - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilno nav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline \endfirsthead - \caption{Infrastruktura in urniki - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilnonav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Humanistika in druboslovje interdisciplina & Prvi & 16 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & \textbf{\textcolor[HTML]{006666}{4.8}} & 4.2 & 4.2 & 4.4 \\ - Humanistika in druboslovje interdisciplina & Drugi & 11 & 4.3 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.1 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 4.3 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - \hline Skupaj & & 27 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.4 & 4.4 & 4.3 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - \hline -\hline -\end{longtable} - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{longtable}{p{8.5cm}cc|ccccc} -\caption{Zadovoljstvo z izvajanjem programov - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost za\\dr. dizer.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline \endfirsthead - \caption{Zadovoljstvo z izvajanjem programov - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost za\\dr. dizer.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Humanistika in druboslovje interdisciplina & Prvi & 16 & 4.3 & 4.1 & 4.1 & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - Humanistika in druboslovje interdisciplina & Drugi & 12 & 4.2 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{F58137}{3.8}} \\ - \hline Skupaj & & 28 & 4.2 & 4.3 & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - \hline -\hline -\end{longtable} - - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{longtable}{p{8.5cm}cc|cccccc} -\caption{Pomoč in podpora mentorja - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline \endfirsthead - \caption{Pomoč in podpora mentorja - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline\textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Humanistika in druboslovje interdisciplina & Prvi & 16 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.4 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Humanistika in druboslovje interdisciplina & Drugi & 11 & 4.4 & 4.2 & 4.4 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.3 \\ - \hline Skupaj & & 27 & 4.4 & 4.3 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 4.4 \\ - \hline -\hline -\end{longtable} - - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{longtable}{p{10cm}cc|cccc} -\caption{Del študija in ostale aktivnosti v tujini - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - \\ \hline \endfirsthead - \caption{Del študija in ostale aktivnosti v tujini - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Humanistika in druboslovje interdisciplina & Prvi & 13 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 4.0 & 4.2 & \textbf{\textcolor[HTML]{B6321C}{3.4}} \\ - Humanistika in druboslovje interdisciplina & Drugi & 11 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{B6321C}{3.4}} & \textbf{\textcolor[HTML]{B6321C}{2.3}} \\ - \hline Skupaj & & 24 & \textbf{\textcolor[HTML]{B6321C}{3.2}} & \textbf{\textcolor[HTML]{B6321C}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.8}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} \\ - \hline -\hline -\end{longtable} - - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{longtable}{p{10cm}cc|cccc} -\caption{Svetovalna pomoč študentom - po programih in po letnikih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline \endfirsthead - \caption{Svetovalna pomoč študentom - po programih in po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Humanistika in druboslovje interdisciplina & Prvi & 16 & 4.4 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - Humanistika in druboslovje interdisciplina & Drugi & 12 & 4.3 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.9}} & 4.2 \\ - \hline Skupaj & & 28 & 4.4 & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - \hline -\hline -\end{longtable} - -\newpage -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{table}[ht] -\centering -\caption{Povprečno število tedensko porabljenih ur za doktorski študij - po programih in po letnikih} -\begin{tabular}{p{10cm}ccc} - \hline \hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{n} & \bfseries{Število ur} \\ - \hline -Humanistika in druboslovje interdisciplinarni & Prvi & 10 & 28 \\ - Humanistika in druboslovje interdisciplinarni & Drugi & 12 & 22 \\ - \hline -\end{tabular} -\end{table} -\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in 3:ncol(seznam): argument of length 0}}\end{kframe}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{8cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\premalo}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\preveč}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistika in družboslovje in. & Prvi & 1 & 100 & 0 & 0 & 0 & 0 & 1 & 100 \\ - Humanistika in družboslovje in. & Drugi & 0 & 0 & 1 & 100 & 0 & 0 & 1 & 100 \\ - \hline -\end{tabular} -\end{table} -\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in izbirni\_predmeti\_po\_vprasanjih[[1]]: subscript out of bounds}}\end{kframe}\newpage\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in izbirni\_predmeti\_po\_vprasanjih[[2]]: subscript out of bounds}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in 3:ncol(seznam): argument of length 0}}\end{kframe}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"} -\begin{tabular}{p{5.5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{Predavanja}} & \multicolumn{2}{r}{\textbf{Konzultacije}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{\\Kombinacija\\obojega}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Prvi & 0 & 0 & 0 & 0 & 1 & 100 & 1 & 100 \\ - Humanistik. & Drugi & 0 & 0 & 0 & 0 & 1 & 100 & 1 & 100 \\ - \hline -\end{tabular} -\end{table} -\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in izbirni\_predmeti\_po\_vprasanjih[[3]]: subscript out of bounds}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in izbirni\_predmeti\_po\_vprasanjih[[4]]: subscript out of bounds}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in 3:ncol(seznam): argument of length 0}}\end{kframe}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{2.5cm}ccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Mladi\\raziskovalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ml. raz.\\v gosp.}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\fin. sam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\delodajalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\drugi viri}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Prvi & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 100 & 1 & 100 \\ - Humanistik. & Drugi & 0 & 0 & 0 & 0 & 1 & 100 & 0 & 0 & 0 & 0 & 1 & 100 \\ - \hline -\end{tabular} -\end{table} -\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in 3:ncol(seznam): argument of length 0}}\end{kframe}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij?"} -\begin{tabular}{lccccccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Akad.\\kariera}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Osebni\\razvoj}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dobro\\imeti}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Koristno}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Brez\\zaposl.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Napred.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Drugo}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Prvi & 1 & 50 & 1 & 50 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 100 \\ - Humanistik. & Drugi & 1 & 33 & 1 & 33 & 0 & 0 & 1 & 33 & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 100 \\ - \hline -\end{tabular} -\end{table} -\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in nchar(unique(odg\_gledeProgram[[i]][[j]]\$program)): invalid multibyte string, element 1}}\end{kframe}\newpage\begin{kframe} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in 3:ncol(seznam): argument of length 0}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in `align<-.xtable`(`*tmp*`, value = "{}lp\{3.5cm\}ccccccccccc"{}): "{}align"{} must have length equal to 11 ( ncol(x) + 1 )}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in nchar(unique(odg\_gledeProgram[[i]][[j]]\$program)): invalid multibyte string, element 1}} - -{\ttfamily\noindent\bfseries\color{errorcolor}{\#\# Error in 3:ncol(seznam): argument of length 0}}\end{kframe}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Wed Nov 15 14:03:13 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"} -\begin{tabular}{p{5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi\\program na UL}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi VŠ\\zavod v RS}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{V tujino}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Humanistik. & Prvi & 0 & . & 0 & . & 0 & . & 0 & 100 \\ - Humanistik. & Drugi & 0 & . & 0 & . & 0 & . & 0 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage - -\end{document} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.toc b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.toc deleted file mode 100644 index cace20d96..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Institucijah.toc +++ /dev/null @@ -1,15 +0,0 @@ -\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1} -\contentsline {subsection}{\numberline {1.1} Prvi letnik}{1}{subsection.0.1.1} -\contentsline {subsection}{\numberline {1.2} Drugi letnik}{2}{subsection.0.1.2} -\contentsline {section}{\numberline {2.}Metodologija}{4}{section.0.2} -\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{6}{section.0.3} -\contentsline {section}{\numberline {4.}Podrobne analize: Prvi letnik}{7}{section.0.4} -\contentsline {subsection}{\numberline {4.1}Analiza dejavnikov}{7}{subsection.0.4.1} -\contentsline {subsection}{\numberline {4.2}Podrobna analiza vseh spremenljivk po sklopih}{11}{subsection.0.4.2} -\contentsline {subsubsection}{\numberline {4.2.1}Infrastruktura in urniki}{11}{subsubsection.0.4.2.1} -\contentsline {subsubsection}{\numberline {4.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{12}{subsubsection.0.4.2.2} -\contentsline {section}{\numberline {5.}Podrobne analize: Drugi letnik}{13}{section.0.5} -\contentsline {subsection}{\numberline {5.1}Analiza dejavnikov in vsebinskih sklopov}{13}{subsection.0.5.1} -\contentsline {subsection}{\numberline {5.2}Podrobna analiza vseh spremenljivk po sklopih}{17}{subsection.0.5.2} -\contentsline {subsubsection}{\numberline {5.2.1}Infrastruktura in urniki}{17}{subsubsection.0.5.2.1} -\contentsline {section}{\numberline {6.}Analize skupnih spremenljivk po programih in po letnikih}{18}{section.0.6} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.aux b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.aux deleted file mode 100644 index 49f6b36ab..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.aux +++ /dev/null @@ -1,330 +0,0 @@ -\relax -\providecommand\hyper@newdestlabel[2]{} -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\providecommand\HyField@AuxAddToCoFields[2]{} -\@writefile{toc}{\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1}} -\@writefile{toc}{\contentsline {section}{\numberline {2.}Metodologija}{3}{section.0.2}} -\gdef \LT@i {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.88788pt}\LT@entry - {2}{35.33055pt}\LT@entry - {2}{23.32263pt}\LT@entry - {2}{54.75696pt}\LT@entry - {1}{23.32263pt}\LT@entry - {1}{38.05763pt}\LT@entry - {5}{25.91397pt}\LT@entry - {1}{40.26048pt}\LT@entry - {5}{17.44394pt}\LT@entry - {1}{35.35225pt}} -\gdef \LT@ii {\LT@entry - {1}{222.95021pt}\LT@entry - {5}{22.88788pt}\LT@entry - {2}{35.33055pt}\LT@entry - {2}{23.32263pt}\LT@entry - {2}{51.97772pt}\LT@entry - {1}{23.32263pt}\LT@entry - {1}{38.05763pt}\LT@entry - {5}{25.91397pt}\LT@entry - {1}{40.26048pt}\LT@entry - {5}{17.44394pt}\LT@entry - {1}{35.35225pt}} -\@writefile{toc}{\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{5}{section.0.3}} -\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - prvi letnik\relax }}{5}{table.0.1}} -\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program - drugi letnik\relax }}{5}{table.0.2}} -\@writefile{toc}{\contentsline {section}{\numberline {4.}Analiza dejavnikov in vsebinskih sklopov - oba letnika zdru\IeC {\v z}eno}{6}{section.0.4}} -\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih - oba letnika zdru\IeC {\v z}eno\relax }}{6}{table.caption.3}} -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih - oba letnika zdru\IeC {\v z}eno\relax }}{7}{figure.caption.4}} -\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih - oba letnika zdru\IeC {\v z}eno\relax }}{8}{table.caption.5}} -\gdef \LT@iii {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{39.62834pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{61.17374pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{47.20753pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{43.10397pt}\LT@entry - {3}{22.88788pt}\LT@entry - {2}{50.30013pt}} -\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih - oba letnika zdru\IeC {\v z}eno\relax }}{9}{table.0.5}} -\gdef \LT@iv {\LT@entry - {1}{225.39566pt}\LT@entry - {5}{34.784pt}\LT@entry - {1}{34.08067pt}\LT@entry - {1}{34.34024pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{29.38353pt}} -\gdef \LT@v {\LT@entry - {1}{259.53888pt}\LT@entry - {5}{34.784pt}\LT@entry - {1}{31.51216pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{29.38353pt}} -\gdef \LT@vi {\LT@entry - {1}{225.39566pt}\LT@entry - {5}{34.784pt}\LT@entry - {1}{34.08067pt}\LT@entry - {1}{34.08067pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{32.21161pt}\LT@entry - {1}{32.21161pt}} -\@writefile{toc}{\contentsline {section}{\numberline {5.}Analize skupnih spremenljivk po letnikih}{10}{section.0.5}} -\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces Infrastruktura in urniki - po letnikih\relax }}{10}{table.0.6}} -\@writefile{lot}{\contentsline {table}{\numberline {7}{\ignorespaces Zadovoljstvo z izvajanjem programov - po letnikih\relax }}{10}{table.0.7}} -\@writefile{lot}{\contentsline {table}{\numberline {8}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - po letnikih\relax }}{10}{table.0.8}} -\gdef \LT@vii {\LT@entry - {1}{268.0748pt}\LT@entry - {5}{34.784pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{31.95204pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{34.34024pt}} -\gdef \LT@viii {\LT@entry - {1}{268.0748pt}\LT@entry - {5}{34.784pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{30.08298pt}\LT@entry - {1}{32.21161pt}} -\@writefile{lot}{\contentsline {table}{\numberline {9}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - po letnikih\relax }}{11}{table.0.9}} -\@writefile{lot}{\contentsline {table}{\numberline {10}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - po letnikih\relax }}{11}{table.0.10}} -\@writefile{lot}{\contentsline {table}{\numberline {11}{\ignorespaces Povpre\IeC {\v c}no \IeC {\v s}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij - po letnikih\relax }}{12}{table.caption.6}} -\@writefile{lot}{\contentsline {table}{\numberline {12}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{12}{table.caption.7}} -\@writefile{lot}{\contentsline {table}{\numberline {13}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:"\relax }}{12}{table.caption.8}} -\@writefile{lot}{\contentsline {table}{\numberline {14}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi."\relax }}{13}{table.caption.9}} -\@writefile{lot}{\contentsline {table}{\numberline {15}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?"\relax }}{13}{table.caption.10}} -\@writefile{lot}{\contentsline {table}{\numberline {16}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu temeljne obvezne predmete?"\relax }}{13}{table.caption.11}} -\@writefile{lot}{\contentsline {table}{\numberline {17}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?"\relax }}{14}{table.caption.12}} -\@writefile{lot}{\contentsline {table}{\numberline {18}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{14}{table.caption.13}} -\@writefile{lot}{\contentsline {table}{\numberline {19}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij?"\relax }}{14}{table.caption.14}} -\@writefile{lot}{\contentsline {table}{\numberline {20}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "\IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:"\relax }}{15}{table.caption.15}} -\@writefile{lot}{\contentsline {table}{\numberline {21}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kam bi se vpisali?"\relax }}{15}{table.caption.16}} -\@writefile{toc}{\contentsline {section}{\numberline {6.}Podrobna analiza: Prvi letnik}{16}{section.0.6}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Analiza dejavnikov}{16}{subsection.0.6.1}} -\@writefile{lot}{\contentsline {table}{\numberline {22}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{16}{table.caption.17}} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{17}{figure.caption.18}} -\@writefile{lot}{\contentsline {table}{\numberline {23}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{18}{table.caption.19}} -\gdef \LT@ix {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{39.62834pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{61.17374pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{47.20753pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{43.10397pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{55.13962pt}} -\@writefile{lot}{\contentsline {table}{\numberline {24}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{19}{table.0.24}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}Podrobna analiza vseh spremenljivk po sklopih}{20}{subsection.0.6.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.1}Infrastruktura in urniki}{20}{subsubsection.0.6.2.1}} -\@writefile{lot}{\contentsline {table}{\numberline {25}{\ignorespaces Infrastruktura in urniki - dejavniki (opisne statistike)\relax }}{20}{table.caption.20}} -\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Infrastruktura in urniki - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{20}{figure.caption.21}} -\gdef \LT@x {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.2}} -\@writefile{lot}{\contentsline {table}{\numberline {26}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Koliko \IeC {\v c}asa povpre\IeC {\v c}no tedensko porabite za svoj doktorski \IeC {\v s}tudij (v\IeC {\v s}tejte vse obveznosti)?"\relax }}{21}{table.caption.22}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.3}} -\@writefile{lot}{\contentsline {table}{\numberline {27}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{21}{table.caption.23}} -\@writefile{lot}{\contentsline {table}{\numberline {28}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite zakaj."\relax }}{21}{table.0.28}} -\gdef \LT@xi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.4}Izbira predmeta na drugih programih UL}{22}{subsubsection.0.6.2.4}} -\@writefile{lot}{\contentsline {table}{\numberline {29}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na Univerzi\IeC { }v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:"\relax }}{22}{table.caption.24}} -\@writefile{lot}{\contentsline {table}{\numberline {30}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?"\relax }}{22}{table.0.30}} -\@writefile{lot}{\contentsline {table}{\numberline {31}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kateri predmet ste izbrali?"\relax }}{22}{table.0.31}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.5}Izbira predmeta izven UL}{22}{subsubsection.0.6.2.5}} -\@writefile{lot}{\contentsline {table}{\numberline {32}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Izbral/a sem si izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi."\relax }}{22}{table.caption.25}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.6}Zadovoljstvo z izvajanjem programov}{23}{subsubsection.0.6.2.6}} -\@writefile{lot}{\contentsline {table}{\numberline {33}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)\relax }}{23}{table.caption.26}} -\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{23}{figure.caption.27}} -\gdef \LT@xiii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xiv {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.7}Primerna oblika izvedbe predmetov}{24}{subsubsection.0.6.2.7}} -\@writefile{lot}{\contentsline {table}{\numberline {34}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a (konzultacije ali predavanja)?"\relax }}{24}{table.caption.28}} -\@writefile{lot}{\contentsline {table}{\numberline {35}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite, zakaj:"\relax }}{24}{table.0.35}} -\@writefile{lot}{\contentsline {table}{\numberline {36}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z izvajanjem organiziranih oblik \IeC {\v s}tudija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"\relax }}{24}{table.0.36}} -\gdef \LT@xv {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xvi {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {37}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu temeljne obvezne predmete?"\relax }}{25}{table.caption.29}} -\@writefile{lot}{\contentsline {table}{\numberline {38}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"\relax }}{25}{table.0.38}} -\@writefile{lot}{\contentsline {table}{\numberline {39}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"\relax }}{25}{table.0.39}} -\gdef \LT@xvii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {40}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?"\relax }}{27}{table.caption.30}} -\@writefile{lot}{\contentsline {table}{\numberline {41}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"\relax }}{27}{table.0.41}} -\gdef \LT@xviii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {42}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (izbirnih) predmetih?"\relax }}{28}{table.0.42}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.8}Pomo\IeC {\v c} in podpora mentorja}{29}{subsubsection.0.6.2.8}} -\@writefile{lot}{\contentsline {table}{\numberline {43}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (opisne statistike)\relax }}{29}{table.caption.31}} -\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{29}{figure.caption.32}} -\gdef \LT@xix {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {44}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"\relax }}{30}{table.0.44}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.9}Doktorska disertacija}{30}{subsubsection.0.6.2.9}} -\@writefile{lot}{\contentsline {table}{\numberline {45}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste pred vpisom na doktorski \IeC {\v s}tudij \IeC {\v z}e imeli idejo/raziskovalni na\IeC {\v c}rt za doktorsko disertacijo:"\relax }}{30}{table.caption.33}} -\gdef \LT@xx {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {46}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Ali ste \IeC {\v z}e razmi\IeC {\v s}ljali ali za\IeC {\v c}eli pisati \IeC {\v c}lanek, ki ga morate objaviti pred zagovorom disertacije? Kak\IeC {\v s}ne te\IeC {\v z}ave pri\IeC {\v c}akujete ali \IeC {\v z}e imate v zvezi s tem?"\relax }}{31}{table.0.46}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.10}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{32}{subsubsection.0.6.2.10}} -\@writefile{lot}{\contentsline {table}{\numberline {47}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (opisne statistike)\relax }}{32}{table.caption.34}} -\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{32}{figure.caption.35}} -\gdef \LT@xxi {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {48}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z raziskovalnim delom v okviru \IeC {\v s}tudija?"\relax }}{33}{table.0.48}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.11}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{34}{subsubsection.0.6.2.11}} -\@writefile{lot}{\contentsline {table}{\numberline {49}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (opisne statistike)\relax }}{34}{table.caption.36}} -\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{34}{figure.caption.37}} -\gdef \LT@xxii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxiii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {50}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Va\IeC {\v s}i predlogi glede delovanja referata in svetovanja \IeC {\v s}tudentom."\relax }}{35}{table.0.50}} -\@writefile{lot}{\contentsline {table}{\numberline {51}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Na doktorski \IeC {\v s}tudij ste se gotovo vpisali z dolo\IeC {\v c}enimi pri\IeC {\v c}akovanji. Ali je prvo leto \IeC {\v s}tudija izpolnilo va\IeC {\v s}a pri\IeC {\v c}akovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"\relax }}{35}{table.0.51}} -\gdef \LT@xxiv {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.12}Na\IeC {\v c}in \IeC {\v s}tudija}{36}{subsubsection.0.6.2.12}} -\@writefile{lot}{\contentsline {table}{\numberline {52}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{36}{table.caption.38}} -\@writefile{lot}{\contentsline {table}{\numberline {53}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Sem doktorski \IeC {\v s}tudent/doktorska \IeC {\v s}tudentka, ki ima \IeC {\v s}tipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"\relax }}{36}{table.0.53}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.13}Razlog \IeC {\v s}tudija}{37}{subsubsection.0.6.2.13}} -\@writefile{lot}{\contentsline {table}{\numberline {54}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij? Mo\IeC {\v z}nih je ve\IeC {\v c} odgovorov."\relax }}{37}{table.caption.39}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.14}Odlo\IeC {\v c}itev o vpisu}{37}{subsubsection.0.6.2.14}} -\@writefile{lot}{\contentsline {table}{\numberline {55}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: \IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:"\relax }}{37}{table.caption.40}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.15}Alternativni vpis}{38}{subsubsection.0.6.2.15}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.16}Dodatni komentarji \IeC {\v s}tudentov}{38}{subsubsection.0.6.2.16}} -\@writefile{toc}{\contentsline {section}{\numberline {7.}Podrobna analiza: Drugi letnik}{39}{section.0.7}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.1}Analiza dejavnikov}{39}{subsection.0.7.1}} -\@writefile{lot}{\contentsline {table}{\numberline {56}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{39}{table.caption.41}} -\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{40}{figure.caption.42}} -\@writefile{lot}{\contentsline {table}{\numberline {57}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij po sklopih\relax }}{41}{table.caption.43}} -\gdef \LT@xxv {\LT@entry - {1}{168.49014pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{39.62834pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{61.17374pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{47.20753pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{43.10397pt}\LT@entry - {1}{18.04839pt}\LT@entry - {2}{55.13962pt}} -\@writefile{lot}{\contentsline {table}{\numberline {58}{\ignorespaces Frekven\IeC {\v c}na porazdelitev enot za dejavnike po sklopih\relax }}{42}{table.0.58}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.2}Podrobna analiza vseh spremenljivk po sklopih}{43}{subsection.0.7.2}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.1}Infrastruktura in urniki}{43}{subsubsection.0.7.2.1}} -\@writefile{lot}{\contentsline {table}{\numberline {59}{\ignorespaces Infrastruktura in urniki - dejavniki (opisne statistike)\relax }}{43}{table.caption.44}} -\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Infrastruktura in urniki - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{43}{figure.caption.45}} -\gdef \LT@xxvi {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{44}{subsubsection.0.7.2.2}} -\@writefile{lot}{\contentsline {table}{\numberline {60}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Koliko \IeC {\v c}asa povpre\IeC {\v c}no tedensko porabite za svoj doktorski \IeC {\v s}tudij (v\IeC {\v s}tejte vse obveznosti)?"\relax }}{44}{table.caption.46}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{44}{subsubsection.0.7.2.3}} -\@writefile{lot}{\contentsline {table}{\numberline {61}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali se vam zdi \IeC {\v c}as, ki ga namenite doktorskemu \IeC {\v s}tudiju, ustrezen?"\relax }}{44}{table.caption.47}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.4}Ustreznost trajanja doktorskega \IeC {\v s}tudija}{44}{subsubsection.0.7.2.4}} -\@writefile{lot}{\contentsline {table}{\numberline {62}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ocenjujete, da je triletno trajanje doktorskega \IeC {\v s}tudija ustrezno?"\relax }}{44}{table.caption.48}} -\@writefile{lot}{\contentsline {table}{\numberline {63}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite zakaj. "\relax }}{44}{table.0.63}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.5}Izbira predmeta na drugih programih UL}{46}{subsubsection.0.7.2.5}} -\@writefile{lot}{\contentsline {table}{\numberline {64}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "V 2. letniku sem si izbral/a izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega \IeC {\v s}tudijskega programa, na katerega sem vpisan/a:"\relax }}{46}{table.caption.49}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.6}Izbira predmeta izven UL}{46}{subsubsection.0.7.2.6}} -\@writefile{lot}{\contentsline {table}{\numberline {65}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "V 2. letniku sem si izbral/a izbirni predmet na drugi doma\IeC {\v c}i ali tuji univerzi."\relax }}{46}{table.caption.50}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.7}Zadovoljstvo z izvajanjem programov}{47}{subsubsection.0.7.2.7}} -\@writefile{lot}{\contentsline {table}{\numberline {66}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)\relax }}{47}{table.caption.51}} -\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces Zadovoljstvo z izvajanjem programov - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{47}{figure.caption.52}} -\gdef \LT@xxvii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxviii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.8}Primerna oblika izvedbe predmetov}{48}{subsubsection.0.7.2.8}} -\@writefile{lot}{\contentsline {table}{\numberline {67}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Katera oblika izvedbe predmetov se vam zdi primernej\IeC {\v s}a?"\relax }}{48}{table.caption.53}} -\@writefile{lot}{\contentsline {table}{\numberline {68}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Navedite zakaj: "\relax }}{48}{table.0.68}} -\@writefile{lot}{\contentsline {table}{\numberline {69}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z izvajanjem organiziranih oblik \IeC {\v s}tudija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"\relax }}{48}{table.0.69}} -\gdef \LT@xxix {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxx {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.9}Temeljni/obvezni izbirni predmeti}{50}{subsubsection.0.7.2.9}} -\@writefile{lot}{\contentsline {table}{\numberline {70}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v 2. letniku posamezne temeljne predmete?"\relax }}{50}{table.caption.54}} -\@writefile{lot}{\contentsline {table}{\numberline {71}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"\relax }}{50}{table.0.71}} -\@writefile{lot}{\contentsline {table}{\numberline {72}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"\relax }}{50}{table.0.72}} -\gdef \LT@xxxi {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxii {\LT@entry - {1}{498.54057pt}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.10}Izbirni predmeti}{51}{subsubsection.0.7.2.10}} -\@writefile{lot}{\contentsline {table}{\numberline {73}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Ali ste imeli v leto\IeC {\v s}njem letu izbirne predmete?"\relax }}{51}{table.caption.55}} -\@writefile{lot}{\contentsline {table}{\numberline {74}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"\relax }}{51}{table.0.74}} -\@writefile{lot}{\contentsline {table}{\numberline {75}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kaj menite o na\IeC {\v c}inu preverjanja znanja pri teh (izbirnih) predmetih?"\relax }}{51}{table.0.75}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.11}Pomo\IeC {\v c} in podpora mentorja}{52}{subsubsection.0.7.2.11}} -\@writefile{lot}{\contentsline {table}{\numberline {76}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (opisne statistike)\relax }}{52}{table.caption.56}} -\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Pomo\IeC {\v c} in podpora mentorja - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{52}{figure.caption.57}} -\gdef \LT@xxxiii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxiv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {77}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"\relax }}{53}{table.0.77}} -\@writefile{lot}{\contentsline {table}{\numberline {78}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Kak\IeC {\v s}ne so va\IeC {\v s}e izku\IeC {\v s}nje s prijavo dispozicije doktorske naloge?"\relax }}{53}{table.0.78}} -\gdef \LT@xxxv {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {79}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Ali ste \IeC {\v z}e razmi\IeC {\v s}ljali ali za\IeC {\v c}eli pisati \IeC {\v c}lanek, ki ga morate objaviti pred zagovorom disertacije? Kak\IeC {\v s}ne te\IeC {\v z}ave pri\IeC {\v c}akujete ali \IeC {\v z}e imate v zvezi s tem?"\relax }}{54}{table.0.79}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{55}{subsubsection.0.7.2.12}} -\@writefile{lot}{\contentsline {table}{\numberline {80}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (opisne statistike)\relax }}{55}{table.caption.58}} -\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Del \IeC {\v s}tudija in ostale aktivnosti v tujini - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{55}{figure.caption.59}} -\gdef \LT@xxxvi {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {81}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z raziskovalnim delom v okviru \IeC {\v s}tudija?"\relax }}{56}{table.0.81}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{57}{subsubsection.0.7.2.13}} -\@writefile{lot}{\contentsline {table}{\numberline {82}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (opisne statistike)\relax }}{57}{table.caption.60}} -\@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - dejavniki (grafi\IeC {\v c}ni prikaz povpre\IeC {\v c}ij)\relax }}{57}{figure.caption.61}} -\gdef \LT@xxxvii {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xxxviii {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {83}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Va\IeC {\v s}i predlogi glede delovanja referata in svetovanja \IeC {\v s}tudentom."\relax }}{58}{table.0.83}} -\@writefile{lot}{\contentsline {table}{\numberline {84}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Na doktorski \IeC {\v s}tudij ste se gotovo vpisali z dolo\IeC {\v c}enimi pri\IeC {\v c}akovanji. Ali sta prvi dve leti \IeC {\v s}tudija izpolnili va\IeC {\v s}a pri\IeC {\v c}akovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"\relax }}{58}{table.0.84}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{58}{subsubsection.0.7.2.14}} -\@writefile{lot}{\contentsline {table}{\numberline {85}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Kako \IeC {\v s}tudirate:"\relax }}{58}{table.caption.62}} -\gdef \LT@xxxix {\LT@entry - {1}{498.54057pt}} -\gdef \LT@xl {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {86}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Sem doktorski \IeC {\v s}tudent/doktorska \IeC {\v s}tudentka, ki ima \IeC {\v s}tipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"\relax }}{59}{table.0.86}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.15}Razlog \IeC {\v s}tudija}{59}{subsubsection.0.7.2.15}} -\@writefile{lot}{\contentsline {table}{\numberline {87}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "Zakaj ste se odlo\IeC {\v c}ili za doktorski \IeC {\v s}tudij? Mo\IeC {\v z}nih je ve\IeC {\v c} odgovorov."\relax }}{59}{table.caption.63}} -\@writefile{lot}{\contentsline {table}{\numberline {88}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Drugo:"\relax }}{59}{table.0.88}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.16}Odlo\IeC {\v c}itev o vpisu}{59}{subsubsection.0.7.2.16}} -\@writefile{lot}{\contentsline {table}{\numberline {89}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "\IeC {\v C}e bi se danes odlo\IeC {\v c}ali o vpisu na doktorski \IeC {\v s}tudij:"\relax }}{59}{table.caption.64}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.17}Alternativni vpis}{59}{subsubsection.0.7.2.17}} -\gdef \LT@xli {\LT@entry - {1}{498.54057pt}} -\@writefile{lot}{\contentsline {table}{\numberline {90}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "1. korak: \IeC {\v C}as od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:"\relax }}{60}{table.caption.65}} -\@writefile{lot}{\contentsline {table}{\numberline {91}{\ignorespaces Frekven\IeC {\v c}na porazdelitev odgovorov na vpra\IeC {\v s}anje: "2. korak: \IeC {\v C}as od soglasja senata/komisije fakultete do soglasja senata UL (zapi\IeC {\v s}ite podatek, \IeC {\v c}e je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):"\relax }}{60}{table.caption.66}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.18}Dodatni komentarji \IeC {\v s}tudentov}{60}{subsubsection.0.7.2.18}} -\@writefile{lot}{\contentsline {table}{\numberline {92}{\ignorespaces Odgovori na odprto vpra\IeC {\v s}anje: "Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj, kar ni bilo zajeto v anketi?"\relax }}{60}{table.0.92}} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.out b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.out deleted file mode 100644 index d30d82831..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.out +++ /dev/null @@ -1,45 +0,0 @@ -\BOOKMARK [1][-]{section.0.1}{Povzetek}{}% 1 -\BOOKMARK [1][-]{section.0.2}{Metodologija}{}% 2 -\BOOKMARK [1][-]{section.0.3}{Sodelovanje \235tudentov v anketi}{}% 3 -\BOOKMARK [1][-]{section.0.4}{Analiza dejavnikov in vsebinskih sklopov - oba letnika zdru\236eno}{}% 4 -\BOOKMARK [1][-]{section.0.5}{Analize skupnih spremenljivk po letnikih}{}% 5 -\BOOKMARK [1][-]{section.0.6}{Podrobna analiza: Prvi letnik}{}% 6 -\BOOKMARK [2][-]{subsection.0.6.1}{Analiza dejavnikov}{section.0.6}% 7 -\BOOKMARK [2][-]{subsection.0.6.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.6}% 8 -\BOOKMARK [3][-]{subsubsection.0.6.2.1}{Infrastruktura in urniki}{subsection.0.6.2}% 9 -\BOOKMARK [3][-]{subsubsection.0.6.2.2}{\227tevilo tedensko porabljenih ur za doktorski \235tudij}{subsection.0.6.2}% 10 -\BOOKMARK [3][-]{subsubsection.0.6.2.3}{Ustreznost casa za doktorski \235tudij}{subsection.0.6.2}% 11 -\BOOKMARK [3][-]{subsubsection.0.6.2.4}{Izbira predmeta na drugih programih UL}{subsection.0.6.2}% 12 -\BOOKMARK [3][-]{subsubsection.0.6.2.5}{Izbira predmeta izven UL}{subsection.0.6.2}% 13 -\BOOKMARK [3][-]{subsubsection.0.6.2.6}{Zadovoljstvo z izvajanjem programov}{subsection.0.6.2}% 14 -\BOOKMARK [3][-]{subsubsection.0.6.2.7}{Primerna oblika izvedbe predmetov}{subsection.0.6.2}% 15 -\BOOKMARK [3][-]{subsubsection.0.6.2.8}{Pomoc in podpora mentorja}{subsection.0.6.2}% 16 -\BOOKMARK [3][-]{subsubsection.0.6.2.9}{Doktorska disertacija}{subsection.0.6.2}% 17 -\BOOKMARK [3][-]{subsubsection.0.6.2.10}{Del \235tudija in ostale aktivnosti v tujini}{subsection.0.6.2}% 18 -\BOOKMARK [3][-]{subsubsection.0.6.2.11}{Svetovalna pomoc \235tudentom}{subsection.0.6.2}% 19 -\BOOKMARK [3][-]{subsubsection.0.6.2.12}{Nacin \235tudija}{subsection.0.6.2}% 20 -\BOOKMARK [3][-]{subsubsection.0.6.2.13}{Razlog \235tudija}{subsection.0.6.2}% 21 -\BOOKMARK [3][-]{subsubsection.0.6.2.14}{Odlocitev o vpisu}{subsection.0.6.2}% 22 -\BOOKMARK [3][-]{subsubsection.0.6.2.15}{Alternativni vpis}{subsection.0.6.2}% 23 -\BOOKMARK [3][-]{subsubsection.0.6.2.16}{Dodatni komentarji \235tudentov}{subsection.0.6.2}% 24 -\BOOKMARK [1][-]{section.0.7}{Podrobna analiza: Drugi letnik}{}% 25 -\BOOKMARK [2][-]{subsection.0.7.1}{Analiza dejavnikov}{section.0.7}% 26 -\BOOKMARK [2][-]{subsection.0.7.2}{Podrobna analiza vseh spremenljivk po sklopih}{section.0.7}% 27 -\BOOKMARK [3][-]{subsubsection.0.7.2.1}{Infrastruktura in urniki}{subsection.0.7.2}% 28 -\BOOKMARK [3][-]{subsubsection.0.7.2.2}{\227tevilo tedensko porabljenih ur za doktorski \235tudij}{subsection.0.7.2}% 29 -\BOOKMARK [3][-]{subsubsection.0.7.2.3}{Ustreznost casa za doktorski \235tudij}{subsection.0.7.2}% 30 -\BOOKMARK [3][-]{subsubsection.0.7.2.4}{Ustreznost trajanja doktorskega \235tudija}{subsection.0.7.2}% 31 -\BOOKMARK [3][-]{subsubsection.0.7.2.5}{Izbira predmeta na drugih programih UL}{subsection.0.7.2}% 32 -\BOOKMARK [3][-]{subsubsection.0.7.2.6}{Izbira predmeta izven UL}{subsection.0.7.2}% 33 -\BOOKMARK [3][-]{subsubsection.0.7.2.7}{Zadovoljstvo z izvajanjem programov}{subsection.0.7.2}% 34 -\BOOKMARK [3][-]{subsubsection.0.7.2.8}{Primerna oblika izvedbe predmetov}{subsection.0.7.2}% 35 -\BOOKMARK [3][-]{subsubsection.0.7.2.9}{Temeljni/obvezni izbirni predmeti}{subsection.0.7.2}% 36 -\BOOKMARK [3][-]{subsubsection.0.7.2.10}{Izbirni predmeti}{subsection.0.7.2}% 37 -\BOOKMARK [3][-]{subsubsection.0.7.2.11}{Pomoc in podpora mentorja}{subsection.0.7.2}% 38 -\BOOKMARK [3][-]{subsubsection.0.7.2.12}{Del \235tudija in ostale aktivnosti v tujini}{subsection.0.7.2}% 39 -\BOOKMARK [3][-]{subsubsection.0.7.2.13}{Svetovalna pomoc \235tudentom}{subsection.0.7.2}% 40 -\BOOKMARK [3][-]{subsubsection.0.7.2.14}{Nacin \235tudija}{subsection.0.7.2}% 41 -\BOOKMARK [3][-]{subsubsection.0.7.2.15}{Razlog \235tudija}{subsection.0.7.2}% 42 -\BOOKMARK [3][-]{subsubsection.0.7.2.16}{Odlocitev o vpisu}{subsection.0.7.2}% 43 -\BOOKMARK [3][-]{subsubsection.0.7.2.17}{Alternativni vpis}{subsection.0.7.2}% 44 -\BOOKMARK [3][-]{subsubsection.0.7.2.18}{Dodatni komentarji \235tudentov}{subsection.0.7.2}% 45 diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.pdf b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.pdf deleted file mode 100644 index c33a69e40..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.pdf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.tex b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.tex deleted file mode 100644 index c4c148435..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.tex +++ /dev/null @@ -1,2049 +0,0 @@ -% Skripta 2: po programih - -\documentclass[11pt,a4paper]{report}\usepackage[]{graphicx}\usepackage[]{color} -%% maxwidth is the original width if it is less than linewidth -%% otherwise use linewidth (to make sure the graphics do not exceed the margin) -\makeatletter -\def\maxwidth{ % - \ifdim\Gin@nat@width>\linewidth - \linewidth - \else - \Gin@nat@width - \fi -} -\makeatother - -\definecolor{fgcolor}{rgb}{0.345, 0.345, 0.345} -\newcommand{\hlnum}[1]{\textcolor[rgb]{0.686,0.059,0.569}{#1}}% -\newcommand{\hlstr}[1]{\textcolor[rgb]{0.192,0.494,0.8}{#1}}% -\newcommand{\hlcom}[1]{\textcolor[rgb]{0.678,0.584,0.686}{\textit{#1}}}% -\newcommand{\hlopt}[1]{\textcolor[rgb]{0,0,0}{#1}}% -\newcommand{\hlstd}[1]{\textcolor[rgb]{0.345,0.345,0.345}{#1}}% -\newcommand{\hlkwa}[1]{\textcolor[rgb]{0.161,0.373,0.58}{\textbf{#1}}}% -\newcommand{\hlkwb}[1]{\textcolor[rgb]{0.69,0.353,0.396}{#1}}% -\newcommand{\hlkwc}[1]{\textcolor[rgb]{0.333,0.667,0.333}{#1}}% -\newcommand{\hlkwd}[1]{\textcolor[rgb]{0.737,0.353,0.396}{\textbf{#1}}}% -\let\hlipl\hlkwb - -\usepackage{framed} -\makeatletter -\newenvironment{kframe}{% - \def\at@end@of@kframe{}% - \ifinner\ifhmode% - \def\at@end@of@kframe{\end{minipage}}% - \begin{minipage}{\columnwidth}% - \fi\fi% - \def\FrameCommand##1{\hskip\@totalleftmargin \hskip-\fboxsep - \colorbox{shadecolor}{##1}\hskip-\fboxsep - % There is no \\@totalrightmargin, so: - \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}% - \MakeFramed {\advance\hsize-\width - \@totalleftmargin\z@ \linewidth\hsize - \@setminipage}}% - {\par\unskip\endMakeFramed% - \at@end@of@kframe} -\makeatother - -\definecolor{shadecolor}{rgb}{.97, .97, .97} -\definecolor{messagecolor}{rgb}{0, 0, 0} -\definecolor{warningcolor}{rgb}{1, 0, 1} -\definecolor{errorcolor}{rgb}{1, 0, 0} -\newenvironment{knitrout}{}{} % an empty environment to be redefined in TeX - -\usepackage{alltt} -\usepackage[cm]{fullpage} -\newcommand*\rot{\rotatebox{90}} -% Spremeni razmik med naslovom kazala vrhom strani -\usepackage{titlesec} -\titleformat{\chapter}[display] - {\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge} -\titlespacing*{\chapter}{0pt}{-15pt}{25pt} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -% za oznacevanje elementov v tabeli (odprti odg) kot seznam -\newcommand{\tabitem}{~~\llap{\textbullet}~~} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%slovenski napisi -\usepackage{../sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -%Hiperlink tabele -% Pomembno, da pravilno zlomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage[breaklinks]{hyperref} -%\usepackage[breaklinks=true]{hyperref} - -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} -\usepackage{breakurl} -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri poglavjih -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -\usepackage{graphicx} -\graphicspath{ {../logo/} } - -% Uporabimo za prilagajanje glave in noge porocila -\usepackage{fancyhdr} - - - - - -% Naslovnica - -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{Fakulteta za matematiko in fiziko - Statistika interdisciplinarni}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt - -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\fancypagestyle{prvi}{ - \fancyhead[R]{\small{Prvi letnik}} - -} - -\fancypagestyle{drugi}{ - \fancyhead[R]{\small{Drugi letnik}} -} - -\fancypagestyle{oba}{ - \fancyhead[R]{\small{}} -} - -% Pomembno da so podpoglavja ostevilcena -\setcounter{secnumdepth}{3} -\setcounter{tocdepth}{3} -\IfFileExists{upquote.sty}{\usepackage{upquote}}{} -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{logo_FMF} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2in]}}} -\textup{\LARGE \textbf{Fakulteta za matematiko in fiziko}} \\[0.2in] -% Prilagodi glede na prisotne podatke -\textup{\LARGE \textcolor[HTML]{B4162C}{\textbf{Statistika interdisciplinarni}}} \\[0.3in] - -\textup{\LARGE{ \textbf{Študentska anketa o študiju na III. stopnji}}} \\[0.5in] -{\large Študijsko leto 2016/17 \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - - - - - - -\section{Povzetek}Povzemamo glavne ugotovitve evalvacijske ankete zadovoljstva študentov tretje stopnje "FMF Statistika interdisciplinarni (2016/17)". V anketi je odgovarjalo 9 študentov prvega letnika (od 17 vpisanih) in 5 študentov drugega letnika (od 11 vpisanih). -V povzetku se omejujemo predvsem na prikaz ocen za dejavnike splošnega zadovoljstva na lestvici 1 - 5. Povprečja, ki izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji). \\ \\ -Odlično je ocenjen naslednji sklop (mediana dejavnikov je v intervalu 4.5 - 5.0): \begin{itemize}\item \textbf{Pomoč in podpora mentorja:} \textit{'Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna.'} (\textbf{\textcolor[HTML]{006666}{5.0}}), \textit{'Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu.'} (\textbf{\textcolor[HTML]{006666}{4.9}}), \textit{'Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti.'} (\textbf{\textcolor[HTML]{006666}{4.9}}), \textit{'Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga.'} (\textbf{\textcolor[HTML]{006666}{4.9}}), \textit{'Pogostost stikov z mentorjem/mentorico je primerna.'} (\textbf{\textcolor[HTML]{006666}{4.9}}) in \textit{'Pomoč mentorja pri pripravi znanstvenega članka je ustrezna.'} (\textbf{\textcolor[HTML]{006666}{4.9}}). \end{itemize}Zelo dobro so ocenjeni naslednji sklopi (mediana dejavnikov je v intervalu 4.0 - 4.5): \begin{itemize}\item \textbf{Infrastruktura in urniki:} \textit{'Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu.'} (\textbf{\textcolor[HTML]{36BF4B}{4.7}}), \textit{'S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a.'} (\textbf{\textcolor[HTML]{36BF4B}{4.5}}), \textit{'Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza.'} (\textbf{\textcolor[HTML]{36BF4B}{4.5}}), \textit{'Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a.'} (4.4), \textit{'Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.).'} (4.1) in \textit{'Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.).'} (4.0).\item \textbf{Svetovalna pomoč študentom:} \textit{'Osebje študentskega referata je odzivno in učinkovito.'} (\textbf{\textcolor[HTML]{006666}{4.8}}), \textit{'Osebje študentskega referata ima ustrezen odnos do študentov.'} (\textbf{\textcolor[HTML]{36BF4B}{4.7}}), \textit{'Uradne ure študentskega referata so primerne.'} (4.1) in \textit{'Informacije na spletnih straneh so dovolj jasne in celovite.'} (4.1).\item \textbf{Zadovoljstvo z izvajanjem programov:} \textit{'Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji.'} (4.3), \textit{'Ponudba izbirnih predmetov je ustrezna.'} (4.3), \textit{'V okviru organiziranih oblik študija je bila spodbujena kritična razprava.'} (4.2), \textit{'Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.).'} (\textbf{\textcolor[HTML]{F58137}{3.8}}) in \textit{'Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa.'} (\textbf{\textcolor[HTML]{F58137}{3.8}}). \end{itemize}Veliko prostora za izboljšave je pri naslednjem sklopu, kjer je pozitivno oceno (4 ali 5) podala manj kot polovica študentov (mediana dejavnikov je v intervalu 3.0 - 3.5): \begin{itemize}\item \textbf{Del študija in ostale aktivnosti v tujini:} \textit{'Imam možnost udeležbe na znanstvenih konferencah v tujini.'} (\textbf{\textcolor[HTML]{F58137}{3.8}}), \textit{'Sem vključen/a v raziskovalno skupino / program / projekt.'} (\textbf{\textcolor[HTML]{F58137}{3.5}}), \textit{'Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini.'} (\textbf{\textcolor[HTML]{B6321C}{3.0}}) in \textit{'Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini.'} (\textbf{\textcolor[HTML]{B6321C}{2.5}}). \end{itemize} Poleg zgornjih 25 dejavnikov, združenih v pet sklopov, so študenti odgovarjali tudi na druga odprta in zaprta vprašanja, ki so v poročilu podrobno analizirana.\newpage -\newpage -\tableofcontents -\newpage -\section{Metodologija} - - - V okviru projekta Kakovost – Univerza v Ljubljani (KUL) je bila v letih 2013 in 2014 izvedena prenova študentskih anket, nato pa je s študijskim letom 2014/2015 v veljavo stopil tudi nov Pravilnik o študentskih anketah. Pravilnik ureja izvajanje šestih študentskih anket na vseh članicah Univerze v Ljubljani (podrobnosti so na {\url{http://ul.1ka.si}}). Ankete se izvajajo za predmete in pedagoge na vseh treh stopnjah, na prvih dveh stopnjah pa se izvaja tudi posebna anketa o splošnih vidikih študijskega procesa. Po pilotni izvedbi 2014/2015 so bile v študijskem letu 2015/2016 ankete prvič izvedene na vseh članicah. \\ - Anketa o doktorskem študiju se izvede v prvem (dostop do ankete: {\url{http://ul.1ka.si/dr1}}) in v drugem (dostop do ankete: {\url{http://ul.1ka.si/dr2}}) letniku doktorskega študija, in sicer po zaključenih izpitnih obdobjih od julija do konca drugega semestra. Opravljena ali izrecno zavrnjena anketa je predpogoj za vpis v naslednji letnik. \\ - Za razliko od prve in druge stopnje študenti na tretji stopnji ne dobijo dinamično generiranega vprašalnika glede na vpisane predmete, ampak imajo vsi enak vprašalnik. \\ - Anketi se sicer razlikujeta glede na letnik, vendar obe vsebujeta tudi pet skupnih sklopov s 25 vprašanji. Sklopi so naslednji: - \begin{itemize} - \item Svetovalna pomoč študentom - \item Infrastruktura in urniki - \item Pomoč in podpora mentorja - \item Zadovoljstvo z izvajanjem - \item Aktivnosti v tujini - \end{itemize} - - Vsak od sklopov praviloma vsebuje med 4 in 6 trditev, ki so jih študenti ocenjevali na lestvici med 1 in 5, pri čemer 1 pomeni »sploh se ne strinjam« in 5 »popolnoma se strinjam«. Oceni 1 in 2 sta torej negativni, oceni 4 in 5 pozitivni, ocena 3 pa je nevtralna (niti se ne strinjam, niti se strinjam). Poleg tega je vsaka anketa vsebovala še dodatna vprašanja zaprtega tipa in tudi odprta vprašanja, kjer so študenti lahko pojasnili svoja stališča. Pri tem so vse navedbe vključene v poročilo tako kot so bile zapisane v anketi, torej brez cenzure in jezikovnih posegov. Širša javnost ima dostop do vseh analiz, ki ne vključujejo odprtih odgovorov, kar je vključeno tudi v sumarno poročilo na nivoju UL. \\ - Zaradi morebitne občutljivosti odgovorov in potencialnega razkritja identitete je pričujoče poročilo namenjeno izključno interni uporabi (vodstvo in koordinator programa). \\ - Ker je pri nekaterih programih število anketirancev nizko, so ti podatki zgolj informativne narave in iz njih ne moremo sklepati na populacijo. V prilogi so zato ocene, kjer je število enot manjše od 10, označene z enojnim oklepajem, ocene, kjer je število enot manjše od 5, pa z dvema oklepajema. Če je število enot manjše od 4, je namesto povprečja izpisana pika, kar pomeni da gre za neničelno oceno, ki je zelo nenatančna.  \\ - V splošnem velja pri razumevanju pričujočih analiz upoštevati tudi splošna metodološka priporočila študentskih anket: {\url{http://ul.1ka.si/metodologija}}. \\ - Zaradi množice številk, ki so prikazana v poročilu, so za lažje pregledovanje najvišje in najnižje vrednosti obarvane. Pri tem velja upoštevati naravo ocenjevanja na tretji stopnji (mediana je okoli 4.2), kjer so ocene bistveno višje kot pri ocenjevanju na prvih dveh stopnjah (mediana je okoli 3.7), zato je tudi obarvanje nekoliko drugačno. V grobem sledimo načelu, da se označi spodnja in zgornja četrtina, dodatno pa je obarvana še spodnja in zgornja desetina. Označene (obarvane) so zato naslednje povprečne ocene: - \begin{itemize} - \item ocena od \textcolor[HTML]{B6321C}{\textbf{1.0}} do \textcolor[HTML]{B6321C}{\textbf{3.4}} pomeni razmeroma nizko vrednost, saj je študentov, ki so dali pozitivno oceno (4 ali 5), v grobem manj kot polovica, kar z drugimi besedami pomeni, da večina študentov ni zmogla pozitivne ocene; pri tem velja dodatno izpostaviti (čeprav ni drugače obarvano), da so še posebej kritične negativne ocene (pod 3.0). - \item ocena od \textcolor[HTML]{F58137}{\textbf{3.5}} do \textcolor[HTML]{F58137}{\textbf{3.9}} pomeni, da obstaja znaten prostor za izboljšave, saj je študentov, ki so dali odlično oceno (5) praviloma manj kot študentov, ki so dali oceno pod 4 in torej niso zmogli pozitivne ocene (1, 2, 3).  - \item ocene od 4.0 do do 4.4 predstavljajo glavnino vseh ocen in niso posebej obarvane; - \item ocena od \textcolor[HTML]{36BF4B}{\textbf{4.5}} do \textcolor[HTML]{36BF4B}{\textbf{4.7}} je pomemben mejnik odličnosti, saj v takem primeru ocene odlično (5) predstavljajo večino vseh ocen; - \item ocena nad (vključno) \textcolor[HTML]{006666}{\textbf{4.8}} označuje najvišji nivo odličnosti, saj ocene odlično (5) predstavljajo več kot tri četrtine vseh ocen.\\ - \end{itemize} -   - V rezultatih izpisan \textit{n} označuje število enot, ki so odgovorile na prvo vprašanje (pri ostalih vprašanjih je zato število odgovorov včasih nekoliko večje ali manjše). Dodati velja, da se v tabelah skupna povprečja  zaradi celic s premalo enotami, ki posamično niso izpisane, lahko razlikujejo od kombinacije objavljenih poprečij (Poglavje 4).\\ -   - V anketi so identificirani le študenti, ki so sodelovanje bodisi zavrnili bodisi sprejeli in odgovorili. Skupno število študentov, ki so se tako ali drugače odzvali, se razlikuje od vpisanih študentov, saj nekateri študenti k anketi niso niti pristopili. Večinoma gre pri tem za študente, ki so študij opustili oziroma se niso vpisali v naslednji letnik, saj je bila izpolnjena (ali zavrnjena) anketa predpogoj za vpis. \\Povzemimo še odziv študentov: - \begin{itemize} \item V prvi letnik je vpisanih 17 študentov, od tega je k anketi pristopilo 12 študentov, 3 študenti so nato sodelovanje izrecno zavrnili, preostalih 9 študentov pa je na anketo odgovorilo. \item V drugi letnik je vpisanih 11 študentov, od tega je k anketi pristopilo 9 študentov, 4 študenti so nato sodelovanje izrecno zavrnili, preostalih 5 študentov pa je na anketo odgovorilo. \end{itemize} -\newpage -\section{Sodelovanje študentov v anketi} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov v študijskem programu "Statistika interdisciplinarni" po letnikih. - -V koloni "odgovoril" je z enojnimi (<10) ali dvojnimi ((<5)) oklepaji označeno morebitno nižje število odgovorov "n" (glej poglavje Metodologija), ki v analizah zahteva več previdnosti pri interpretacijah. -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:07 2017 -\begin{longtable}{p{7.4cm}|cc|cc||cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - prvi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r||}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r||}{\textbf{ni prostopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Statistika interdisciplinarni (vpisani) & 17 & \textbf{100} & 5 & 29 & 12 & 71 & (9) & 53 & 3 & 18 \\ - \hline -Statistika interdisciplinarni (pristopili) & & & & & 12 & \textbf{100} & (9) & 75 & 3 & 25 \\ - \hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:07 2017 -\begin{longtable}{p{7.4cm}|cc|cc||cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program - drugi letnik} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{2}{r|}{\textbf{vpisanih}} & \multicolumn{2}{r||}{\textbf{ni pristopil}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & N & \% & N & \% & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{2}{|r|}{\textbf{vpisanih}} & - \multicolumn{2}{|r||}{\textbf{ni pristopil}} & - \multicolumn{2}{r|}{\textbf{pristopili}} & - \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & N & \% & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Statistika interdisciplinarni (vpisani) & 11 & \textbf{100} & 2 & 18 & 9 & 82 & (5) & 45 & 4 & 36 \\ - \hline -Statistika interdisciplinarni (pristopili) & & & & & 9 & \textbf{100} & (5) & 56 & 4 & 44 \\ - \hline -\end{longtable} - - -\newpage\section{Analiza dejavnikov in vsebinskih sklopov - oba letnika združeno}V nadaljevanju so najprej predstavljene analize za 25 dejavnikov, združene za oba letnika skupaj. Opisne statistike vključujejo število (n), povprečje in standardni odklon (sd). Gre za najbolj grobo agregatno analizo. Podrobnosti po letnikih so nadalje analizirane v poglavjih 5 in 6 oziroma 7.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:07 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih - oba letnika združeno} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & 12 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & 12 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & 12 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & 11 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Pogostost stikov z mentorjem/mentorico je primerna. & 11 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & 10 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Osebje študentskega referata je odzivno in učinkovito. & 12 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata ima ustrezen odnos do študentov. & 11 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & 13 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - \rowcolor[gray]{0.95}S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & 13 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & 12 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - \rowcolor[gray]{0.95}Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & 12 & 4.4 & 0.8 \\ - Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & 10 & 4.3 & 0.7 \\ - \rowcolor[gray]{0.95}Ponudba izbirnih predmetov je ustrezna. & 12 & 4.3 & 1.0 \\ - V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & 12 & 4.2 & 1.2 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & (7) & 4.1 & 0.9 \\ - Uradne ure študentskega referata so primerne. & 10 & 4.1 & 1.4 \\ - \rowcolor[gray]{0.95}Informacije na spletnih straneh so dovolj jasne in celovite. & 12 & 4.1 & 1.2 \\ - Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & 11 & 4.0 & 0.9 \\ - \rowcolor[gray]{0.95}Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & 11 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.0 \\ - Imam možnost udeležbe na znanstvenih konferencah v tujini. & 11 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.2 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & 12 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.1 \\ - Sem vključen/a v raziskovalno skupino / program / projekt. & 11 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.8 \\ - \rowcolor[gray]{0.95}Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & 10 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & 1.7 \\ - Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & (8) & \textbf{\textcolor[HTML]{B6321C}{2.5}} & 1.5 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] - \caption{Opisne statistike za dejavnike, urejene po povprečjih - oba letnika združeno} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/grafVsehDejavnikov_oba_letnika.pdf} - \end{figure}Najboljše je ocenjen dejavnik "Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna." (\textbf{\textcolor[HTML]{006666}{5.0}}) \\ \\Najslabše je ocenjen dejavnik "Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini." (\textbf{\textcolor[HTML]{B6321C}{2.5}})\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih - oba letnika združeno} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ Ustrezno svetovanje mentorja & 12 & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Mentor mi nudi podporo & 12 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Odzivnost mentorja po el. pošti & 12 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Pomoč mentorja pri težavah & 11 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Pogostost stikov z mentorjem & 11 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - Pomoč mentorja pri znan. čl. & 10 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.3 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ \rowcolor[gray]{0.95}Pravilno navedeni izvajalci & 13 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.6 \\ - \rowcolor[gray]{0.95}Spremembe poteka & 13 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - \rowcolor[gray]{0.95}Razpored ur mi ustreza & 12 & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.7 \\ - \rowcolor[gray]{0.95}Razpored izvajanja & 12 & 3 & 5 & 4.4 & 0.8 \\ - \rowcolor[gray]{0.95}Druga infrastruktura & (7) & 3 & 5 & 4.1 & 0.9 \\ - \rowcolor[gray]{0.95}Infrastr. za pridobivanje virov & 11 & 3 & 5 & 4.0 & 0.9 \\ - \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 12 & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Ustrezen odnos osebja & 11 & 4 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 0.5 \\ - Uradne ure študentskega ref. & 10 & 1 & 5 & 4.1 & 1.4 \\ - Celovite info. na spletni str. & 12 & 1 & 5 & 4.1 & 1.2 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & 10 & 3 & 5 & 4.3 & 0.7 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & 12 & 2 & 5 & 4.3 & 1.0 \\ - \rowcolor[gray]{0.95}Spodbujanje kritične razprave & 12 & 1 & 5 & 4.2 & 1.2 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & 11 & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.0 \\ - \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & 12 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.1 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 11 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.2 \\ - Vključenost v razis. sk. & 11 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.8 \\ - Del študija ali razis. dela v tujini & 10 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & 1.7 \\ - Možnost študija/razis. dela v tuj. & (8) & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.5}} & 1.5 \\ - \hline -\end{tabular} -\end{table} -\newpage \begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih - oba letnika združeno} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih - oba letnika združeno (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 - \hline \multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ Ustrezno svetovanje mentorja & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 12 & 100 \\ - Mentor mi nudi podporo & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 8 & 11 & 92 \\ - Odzivnost mentorja po el. pošti & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 8 & 11 & 92 \\ - Pomoč mentorja pri težavah & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 9 & 10 & 91 \\ - Pogostost stikov z mentorjem & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 9 & 10 & 91 \\ - Pomoč mentorja pri znan. čl. & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 10 & 9 & 90 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pravilno navedeni izvajalci & 0 & 0 & 0 & 0 & 1 & 8 & 2 & 15 & 10 & 77 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spremembe poteka & 0 & 0 & 0 & 0 & 1 & 8 & 4 & 31 & 8 & 62 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Razpored ur mi ustreza & 0 & 0 & 0 & 0 & 1 & 8 & 4 & 33 & 7 & 58 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Razpored izvajanja & 0 & 0 & 0 & 0 & 2 & 17 & 3 & 25 & 7 & 58 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Druga infrastruktura & 0 & 0 & 0 & 0 & 2 & 29 & 2 & 29 & 3 & 43 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Infrastr. za pridobivanje virov & 0 & 0 & 0 & 0 & 4 & 36 & 3 & 27 & 4 & 36 \\ - \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 17 & 10 & 83 \\ - Ustrezen odnos osebja & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 27 & 8 & 73 \\ - Uradne ure študentskega ref. & 1 & 10 & 1 & 10 & 0 & 0 & 2 & 20 & 6 & 60 \\ - Celovite info. na spletni str. & 1 & 8 & 0 & 0 & 1 & 8 & 5 & 42 & 5 & 42 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 0 & 0 & 0 & 0 & 1 & 10 & 5 & 50 & 4 & 40 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 0 & 0 & 1 & 8 & 1 & 8 & 4 & 33 & 6 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 1 & 8 & 0 & 0 & 1 & 8 & 4 & 33 & 6 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 0 & 0 & 1 & 9 & 3 & 27 & 4 & 36 & 3 & 27 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 1 & 8 & 0 & 0 & 3 & 25 & 5 & 42 & 3 & 25 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Možnost udeležbe konf. v tujini & 1 & 9 & 0 & 0 & 2 & 18 & 5 & 45 & 3 & 27 \\ - Vključenost v razis. sk. & 3 & 27 & 1 & 9 & 0 & 0 & 2 & 18 & 5 & 45 \\ - Del študija ali razis. dela v tujini & 3 & 30 & 1 & 10 & 2 & 20 & 1 & 10 & 3 & 30 \\ - Možnost študija/razis. dela v tuj. & 3 & 38 & 1 & 12 & 2 & 25 & 1 & 12 & 1 & 12 \\ - \hline \end{longtable} - - - -\newpage\section{Analize skupnih spremenljivk po letnikih} -V nadaljevanju so analizirane vse skupne spremenljivke (razen odprtih vprašanj), ki so bile hkrati vključene v oba letnika. Poleg 25 dejavnikov na lestvicah 1-5, prikazanih že v skupni analizi v Poglavju 4, je vključenih še 13 drugih spremenljivk. Analize v tem poglavju so zato namenjene predvsem primerjavama oziroma razlikam med letnikoma.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{longtable}{C{7.5cm}c|cccccc} -\caption{Infrastruktura in urniki - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilno nav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline \endfirsthead - \caption{Infrastruktura in urniki - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Razpored\\izvajanja}}&\rot{\shortstack[l]{Spremembe\\poteka}} & \rot{\shortstack[l]{Pravilnonav.\\izvajalci}} & \rot{\shortstack[l]{Pridobivanje\\virov}} & \rot{\shortstack[l]{Druga\\infrastr.}} & \rot{\shortstack[l]{Ustrezen\\razp. ur}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & (9) & . & 4.3 & \textbf{\textcolor[HTML]{006666}{4.8}} & . & . & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Drugi & ((3)) & 4.3 & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.3 \\ - \hline & 12 & 4.4 & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 4.2 & 4.3 & 4.4 \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{longtable}{C{8.7cm}c|ccccc} -\caption{Zadovoljstvo z izvajanjem programov - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost\\za dr. diser.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline \endfirsthead - \caption{Zadovoljstvo z izvajanjem programov - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Izvajanje\\prog.}} & \rot{\shortstack[l]{Izbirni\\predmeti}} & \rot{\shortstack[l]{Generična\\znanja}} & \rot{\shortstack[l]{Uporabnost\\za dr. diser.}} & \rot{\shortstack[l]{Kritična\\razprava}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & (9) & . & 4.1 & . & . & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Drugi & ((3)) & \textbf{\textcolor[HTML]{B6321C}{3.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 4.0 & 4.3 & \textbf{\textcolor[HTML]{F58137}{3.5}} \\ - \hline & 12 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 4.3 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 4.3 & 4.0 \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{longtable}{C{7.5cm}c|cccccc} -\caption{Pomoč in podpora mentorja - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline \endfirsthead - \caption{Pomoč in podpora mentorja - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Podpora\\mentorja}} & \rot{\shortstack[l]{Svetovanje\\mentorja}} & \rot{\shortstack[l]{Pomoč pri\\ zn. člankih}} & \rot{\shortstack[l]{Pomoč pri\\težavah}} & \rot{\shortstack[l]{Odzivnost\\po el. pošti}} & \rot{\shortstack[l]{Pogostost\\stikov}} - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & (8) & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Drugi & ((4)) & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{4.8}} & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - \hline & 12 & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - \hline -\hline -\end{longtable} -\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{longtable}{C{9cm}c|cccc} -\caption{Del študija in ostale aktivnosti v tujini - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - \\ \hline \endfirsthead - \caption{Del študija in ostale aktivnosti v tujini - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Del štud.\\v tujini}} & \rot{\shortstack[l]{Možnost štud.\\v tujini}} & \rot{\shortstack[l]{Udeležba\\konferenc}} & \rot{\shortstack[l]{Vključenost v\\raz. skupino}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & (6) & \textbf{\textcolor[HTML]{B6321C}{2.8}} & . & . & 4.1 \\ - Drugi & ((4)) & \textbf{\textcolor[HTML]{B6321C}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{1.5}} & \textbf{\textcolor[HTML]{B6321C}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{2.3}} \\ - \hline & 10 & \textbf{\textcolor[HTML]{B6321C}{3.0}} & \textbf{\textcolor[HTML]{B6321C}{2.2}} & \textbf{\textcolor[HTML]{F58137}{3.7}} & \textbf{\textcolor[HTML]{B6321C}{3.2}} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{longtable}{C{9cm}c|cccc} -\caption{Svetovalna pomoč študentom - po letnikih} \\ - \toprule[0.4pt] \hline - \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline \endfirsthead - \caption{Svetovalna pomoč študentom - po letnikih - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \makecell{Letnik} & \makecell{n} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost\\referata}} & \rot{\shortstack[l]{Ustrezen\\odnos}} & \rot{\shortstack[l]{Jasne info.\\na spl. strani}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Prvi & (7) & . & . & . & . \\ - Drugi & ((3)) & \textbf{\textcolor[HTML]{B6321C}{3.3}} & \textbf{\textcolor[HTML]{006666}{5.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} \\ - \hline & 10 & \textbf{\textcolor[HTML]{F58137}{3.9}} & \textbf{\textcolor[HTML]{006666}{4.9}} & \textbf{\textcolor[HTML]{36BF4B}{4.7}} & 4.3 \\ - \hline -\hline -\end{longtable} - - -\newpage - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Povprečno število tedensko porabljenih ur za doktorski študij - po letnikih} -\begin{tabular}{p{10cm}ccc} - \hline \hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{n} & \bfseries{Število ur} \\ - \hline -Statistika interdisciplinarni & Prvi & 9 & 16 \\ - Statistika interdisciplinarni & Drugi & 4 & 377 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{8cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\premalo}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{\\Ne,\\preveč}}}} & \multicolumn{2}{c}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika interdisciplinarni & Prvi & 3 & 33 & 6 & 67 & 0 & 0 & 9 & 100 \\ - Statistika interdisciplinarni & Drugi & 3 & 60 & 2 & 40 & 0 & 0 & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika interdisciplinarni & Prvi & 0 & 0 & 9 & 100 & 9 & 100 \\ - Statistika interdisciplinarni & Drugi & 0 & 0 & 5 & 100 & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika interdisciplinarni & Prvi & 0 & 0 & 9 & 100 & 9 & 100 \\ - Statistika interdisciplinarni & Drugi & 0 & 0 & 5 & 100 & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"} -\begin{tabular}{p{5.5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{Predavanja}} & \multicolumn{2}{r}{\textbf{Konzultacije}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{\\Kombinacija\\obojega}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika. & Prvi & 1 & 11 & 0 & 0 & 8 & 89 & 9 & 100 \\ - Statistika. & Drugi & 3 & 60 & 0 & 0 & 2 & 40 & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika interdisciplinarni & Prvi & 8 & 89 & 1 & 11 & 9 & 100 \\ - Statistika interdisciplinarni & Drugi & 2 & 50 & 2 & 50 & 4 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"} -\begin{tabular}{p{7.5cm}ccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{c}{\textbf{Da}} & \multicolumn{2}{c}{\textbf{Ne}} & \multicolumn{2}{c}{\textbf{Skupaj}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika interdisciplinarni & Prvi & 6 & 67 & 3 & 33 & 9 & 100 \\ - Statistika interdisciplinarni & Drugi & 1 & 20 & 4 & 80 & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{2.5cm}ccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Mladi\\raziskovalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ml. raz.\\v gosp.}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\fin. sam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\delodajalec}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dr. štud\\drugi viri}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika. & Prvi & 0 & 0 & 0 & 0 & 6 & 67 & 1 & 11 & 2 & 22 & 9 & 100 \\ - Statistika. & Drugi & 1 & 20 & 0 & 0 & 2 & 40 & 1 & 20 & 1 & 20 & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij?"} -\begin{tabular}{lccccccccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Akad.\\kariera}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Osebni\\razvoj}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Dobro\\imeti}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Koristno}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Brez\\zaposl.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Napred.}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Drugo}}}} & -\multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} -\\ \hline -& & \bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} & -\bfseries{n} & \bfseries{\%} \\ \hline -Statistika. & Prvi & 2 & 13 & 7 & 47 & 0 & 0 & 6 & 40 & 0 & 0 & 0 & 0 & 0 & 0 & 15 & 100 \\ - Statistika. & Drugi & 2 & 18 & 3 & 27 & 2 & 18 & 3 & 27 & 0 & 0 & 0 & 0 & 1 & 9 & 11 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"} -\begin{tabular}{p{3.5cm}ccccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se odločil\\enako}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Bi se vpisal\\drugam}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Se ne bi odločil\\za dr. študij}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{\\Ne vem}}}} -& \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - -\\ \hline -& & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika. & Drugi & 2 & 50 & 0 & 0 & 1 & 25 & 1 & 25 & 4 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kam bi se vpisali?"} -\begin{tabular}{p{5cm}ccccccccc} - \hline - \hline \bfseries{Program} & \bfseries{Letnik} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi\\program na UL}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{Na drugi VŠ\\zavod v RS}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[l]{V tujino}}}} & \multicolumn{2}{r}{\textbf{{\shortstack[c]{Skupaj}}}} - \\ \hline - & & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} & \bfseries{n} & \bfseries{\%} \\ \hline -Statistika inte. & Prvi & 0 & . & 0 & . & 0 & . & 0 & 100 \\ - Statistika inte. & Drugi & 0 & . & 0 & . & 0 & . & 0 & 100 \\ - \hline -\end{tabular} -\end{table} - -\newpage -\clearpage\pagestyle{prvi}\section{Podrobna analiza: Prvi letnik}\subsection{Analiza dejavnikov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so bile sicer vključene v agregatne analize že v poglavju 5 in 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:08 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & (8) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & (8) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & (6) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & (8) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pogostost stikov z mentorjem/mentorico je primerna. & (7) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & (7) & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.4 \\ - Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & (9) & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata je odzivno in učinkovito. & (9) & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Osebje študentskega referata ima ustrezen odnos do študentov. & (8) & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & (8) & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & (8) & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.8 \\ - \rowcolor[gray]{0.95}Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & (9) & 4.4 & 0.7 \\ - Uradne ure študentskega referata so primerne. & (7) & 4.4 & 1.1 \\ - \rowcolor[gray]{0.95}S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & (9) & 4.3 & 0.7 \\ - Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & (7) & 4.3 & 0.8 \\ - \rowcolor[gray]{0.95}Sem vključen/a v raziskovalno skupino / program / projekt. & (7) & 4.1 & 1.5 \\ - Ponudba izbirnih predmetov je ustrezna. & (8) & 4.1 & 1.1 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & (5) & 4.0 & 1.0 \\ - Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & (9) & 4.0 & 0.9 \\ - \rowcolor[gray]{0.95}Imam možnost udeležbe na znanstvenih konferencah v tujini. & (8) & 4.0 & 0.8 \\ - Informacije na spletnih straneh so dovolj jasne in celovite. & (9) & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - \rowcolor[gray]{0.95}Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & (8) & \textbf{\textcolor[HTML]{F58137}{3.8}} & 0.9 \\ - Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & (8) & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.0 \\ - \rowcolor[gray]{0.95}Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & (6) & \textbf{\textcolor[HTML]{B6321C}{2.8}} & 1.6 \\ - Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & (6) & \textbf{\textcolor[HTML]{B6321C}{2.8}} & 1.6 \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] - \caption{Opisne statistike za dejavnike, urejene po povprečjih} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/grafVsehDejavnikov_prvi.pdf} - \end{figure}Najboljše so ocenjeni dejavniki "Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu." (\textbf{\textcolor[HTML]{006666}{5.0}}), "Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna." (\textbf{\textcolor[HTML]{006666}{5.0}}), "Pomoč mentorja pri pripravi znanstvenega članka je ustrezna." (\textbf{\textcolor[HTML]{006666}{5.0}}), "Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti." (\textbf{\textcolor[HTML]{006666}{5.0}}) in "Pogostost stikov z mentorjem/mentorico je primerna." (\textbf{\textcolor[HTML]{006666}{5.0}}). \\ \\Najslabše sta ocenjena dejavnika "Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini." (\textbf{\textcolor[HTML]{B6321C}{2.8}}) in "Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini." (\textbf{\textcolor[HTML]{B6321C}{2.8}})\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ Mentor mi nudi podporo & (8) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Ustrezno svetovanje mentorja & (8) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pomoč mentorja pri znan. čl. & (6) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Odzivnost mentorja po el. pošti & (8) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pogostost stikov z mentorjem & (7) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pomoč mentorja pri težavah & (7) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.9}} & 0.4 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ \rowcolor[gray]{0.95}Odzivnost in učinkovitost ref. & (9) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - \rowcolor[gray]{0.95}Ustrezen odnos osebja & (8) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Uradne ure študentskega ref. & (7) & 2 & 5 & 4.4 & 1.1 \\ - \rowcolor[gray]{0.95}Celovite info. na spletni str. & (9) & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.9}} & 1.3 \\ - \multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ Pravilno navedeni izvajalci & (9) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.4 \\ - Razpored ur mi ustreza & (8) & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} & 0.7 \\ - Razpored izvajanja & (9) & 3 & 5 & 4.4 & 0.7 \\ - Spremembe poteka & (9) & 3 & 5 & 4.3 & 0.7 \\ - Druga infrastruktura & (5) & 3 & 5 & 4.0 & 1.0 \\ - Infrastr. za pridobivanje virov & (8) & 3 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 0.9 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}Spodbujanje kritične razprave & (8) & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.8 \\ - \rowcolor[gray]{0.95}Uporabnost za dr. dizertacijo & (7) & 3 & 5 & 4.3 & 0.8 \\ - \rowcolor[gray]{0.95}Ustreznost izbirnih predmetov & (8) & 2 & 5 & 4.1 & 1.1 \\ - \rowcolor[gray]{0.95}Zadovoljstvo z izvajanjem prog. & (9) & 3 & 5 & 4.0 & 0.9 \\ - \rowcolor[gray]{0.95}Pridobitev generičnih znanj & (8) & 2 & 5 & \textbf{\textcolor[HTML]{F58137}{3.8}} & 1.0 \\ - \multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Vključenost v razis. sk. & (7) & 1 & 5 & 4.1 & 1.5 \\ - Možnost udeležbe konf. v tujini & (8) & 3 & 5 & 4.0 & 0.8 \\ - Del študija ali razis. dela v tujini & (6) & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.8}} & 1.6 \\ - Možnost študija/razis. dela v tuj. & (6) & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.8}} & 1.6 \\ - \hline -\end{tabular} -\end{table} -\clearpage\newpage \begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike študijskega procesa po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 - \hline \multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ Mentor mi nudi podporo & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 8 & 100 \\ - Ustrezno svetovanje mentorja & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 8 & 100 \\ - Pomoč mentorja pri znan. čl. & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 6 & 100 \\ - Odzivnost mentorja po el. pošti & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 8 & 100 \\ - Pogostost stikov z mentorjem & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 7 & 100 \\ - Pomoč mentorja pri težavah & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 14 & 6 & 86 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Odzivnost in učinkovitost ref. & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 22 & 7 & 78 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustrezen odnos osebja & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 25 & 6 & 75 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uradne ure študentskega ref. & 0 & 0 & 1 & 14 & 0 & 0 & 1 & 14 & 5 & 71 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Celovite info. na spletni str. & 1 & 11 & 0 & 0 & 1 & 11 & 4 & 44 & 3 & 33 \\ - \multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ Pravilno navedeni izvajalci & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 22 & 7 & 78 \\ - Razpored ur mi ustreza & 0 & 0 & 0 & 0 & 1 & 12 & 1 & 12 & 6 & 75 \\ - Razpored izvajanja & 0 & 0 & 0 & 0 & 1 & 11 & 3 & 33 & 5 & 56 \\ - Spremembe poteka & 0 & 0 & 0 & 0 & 1 & 11 & 4 & 44 & 4 & 44 \\ - Druga infrastruktura & 0 & 0 & 0 & 0 & 2 & 40 & 1 & 20 & 2 & 40 \\ - Infrastr. za pridobivanje virov & 0 & 0 & 0 & 0 & 4 & 50 & 2 & 25 & 2 & 25 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spodbujanje kritične razprave & 0 & 0 & 0 & 0 & 1 & 12 & 2 & 25 & 5 & 62 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Uporabnost za dr. dizertacijo & 0 & 0 & 0 & 0 & 1 & 14 & 3 & 43 & 3 & 43 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost izbirnih predmetov & 0 & 0 & 1 & 12 & 1 & 12 & 2 & 25 & 4 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo z izvajanjem prog. & 0 & 0 & 0 & 0 & 3 & 33 & 3 & 33 & 3 & 33 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pridobitev generičnih znanj & 0 & 0 & 1 & 12 & 2 & 25 & 3 & 38 & 2 & 25 \\ - \multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ Vključenost v razis. sk. & 1 & 14 & 0 & 0 & 0 & 0 & 2 & 29 & 4 & 57 \\ - Možnost udeležbe konf. v tujini & 0 & 0 & 0 & 0 & 2 & 25 & 4 & 50 & 2 & 25 \\ - Del študija ali razis. dela v tujini & 2 & 33 & 0 & 0 & 2 & 33 & 1 & 17 & 1 & 17 \\ - Možnost študija/razis. dela v tuj. & 2 & 33 & 0 & 0 & 2 & 33 & 1 & 17 & 1 & 17 \\ - \hline \end{longtable}\newpage - - - - - - - - -\clearpage\clearpage\subsection{Podrobna analiza vseh spremenljivk po sklopih} - V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavji 4 in 5), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Infrastruktura in urniki - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Pravilno navedeni izvajalci & (9) & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Razpored ur mi ustreza & (8) & 3 & 5 & 0.7 & \textbf{\textcolor[HTML]{36BF4B}{4.6}} \\ - Razpored izvajanja & (9) & 3 & 5 & 0.7 & 4.4 \\ - Spremembe poteka & (9) & 3 & 5 & 0.7 & 4.3 \\ - Druga infrastruktura & (5) & 3 & 5 & 1.0 & 4.0 \\ - Infrastr. za pridobivanje virov & (8) & 3 & 5 & 0.9 & \textbf{\textcolor[HTML]{F58137}{3.8}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Infrastruktura in urniki - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis1_1letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Število tedensko porabljenih ur za doktorski študij}Študenti so v povprečju tedensko za svoj doktorski študij porabili \textbf{16 ur}. Standardni odklon znaša \textbf{7} ur.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Koliko časa povprečno tedensko porabite za svoj doktorski študij (vštejte vse obveznosti)?"} -\begin{tabular}{lp{3cm}p{1cm}p{1cm}} - \hline -\hline -\bfseries{} & \bfseries{Število ur} & \bfseries{n} & \bfseries{\%} \\ - \hline -Statistika interdisciplinarni & 5 & 1 & 11 \\ - Statistika interdisciplinarni & 10 & 3 & 33 \\ - Statistika interdisciplinarni & 20 & 3 & 33 \\ - Statistika interdisciplinarni & 25 & 2 & 22 \\ - \hline -Skupaj & 145 & 9 & 100 \\ - \hline -\hline -Povprečje & 16 & 9 & 100 \\ - Std. Odkl. & 7 & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost časa za doktorski študij}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da, namenim ravno prav časa. & 3 & 33 \\ - Ne, namenim ga premalo, želel/a bi si več časa nameniti za svoj doktorski študij in raziskovalno delo & 6 & 67 \\ - Ne, namenim ga preveč, želel/a bi si manj časa nameniti za svoj doktorski študij in raziskovalno delo & 0 & 0 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite zakaj."} \\ - \hline - \\[-0.4cm] \hline -\textit{Količina dela in število obveznosti je premajhna in se počutim kot da nimam velikih izzivov pri svojem delu.} \\ - \rowcolor[gray]{0.95}\textit{Vec casa namenimo nasemu podrocju, kar nam omogoca bolj kvalitetno razumevanje.} \\ - \textit{Lahko bi še kakšno uro več posvetil prebiranju literature.} \\ - \rowcolor[gray]{0.95}\textit{I am working full-time, therefore I cannot devote more time. But of course, I have to mention here that not always is 20 hours. Very often I spend more than 20 hours a week, especially when I need to submit assignments, study for exams, etc. There are weeks that I spent 40 -50 hours a week on my studies.} \\ - \textit{15 ur vložka na teden je ravno še sprejemljivo ob redni službi.} \\ - \rowcolor[gray]{0.95}\textit{službene obveznosti} \\ - \textit{Služba in druge obveznosti} \\ - \rowcolor[gray]{0.95}\textit{My working hours don't allow me to spend as much time as I would like on my research, also I don't live in Ljubljanja so I lose many hours traveling from another country} \\ - \hline -\hline -\end{longtable} -\clearpage \subsubsection{Izbira predmeta na drugih programih UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 0 & 0 \\ - Ne & 9 & 100 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Izbral/a sem si izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:" je velika večina študentov (100 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 0 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Iz katerega drugega doktorskega programa ste izbrali izbirni predmet?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Fakulteta za strojništvo} \\ - \rowcolor[gray]{0.95}\textit{Izobraževanje učiteljev in edukacijske vede} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kateri predmet ste izbrali?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Numerične metode in dinamika fluidov} \\ - \rowcolor[gray]{0.95}\textit{Izabrana poglavlja iz sodobne fizike} \\ - \hline -\hline -\end{longtable} -\subsubsection{Izbira predmeta izven UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi."} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 0 & 0 \\ - Ne & 9 & 100 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Izbral/a sem si izbirni predmet na drugi domači ali tuji univerzi." je velika večina študentov (100 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 0 \% študentov.\clearpage\subsubsection{Zadovoljstvo z izvajanjem programov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Spodbujanje kritične razprave & (8) & 3 & 5 & 0.8 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Uporabnost za dr. dizertacijo & (7) & 3 & 5 & 0.8 & 4.3 \\ - Ustreznost izbirnih predmetov & (8) & 2 & 5 & 1.1 & 4.1 \\ - Zadovoljstvo z izvajanjem prog. & (9) & 3 & 5 & 0.9 & 4.0 \\ - Pridobitev generičnih znanj & (8) & 2 & 5 & 1.0 & \textbf{\textcolor[HTML]{F58137}{3.8}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis2_1letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Primerna oblika izvedbe predmetov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša (konzultacije ali predavanja)?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -kombinacija obojega & 8 & 89 \\ - konzultacije & 0 & 0 \\ - predavanja & 1 & 11 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite, zakaj:"} \\ - \hline - \\[-0.4cm] \hline -\textit{Količine študentov so premajhne, da bi bilo smiselno imeti predavanja in tako se lahko predavatelj bolje posveti individualnemu študentu.} \\ - \rowcolor[gray]{0.95}\textit{Bolj spodbujajo poglobljano samostojno delo ter dajo možnost za diskusijo.} \\ - \textit{Predavanja, ampak bolj splošna, saj se ne ukvarjamo vsi z mehko snovjo.} \\ - \rowcolor[gray]{0.95}\textit{Pri predavanju ne ves, ce pravilno razumes snov. Tako, da je potrebna kombinacija obojega.} \\ - \textit{Ker je doktorskih študentov malo in je težko izvajat predavanja, ki bi bila zanimiva za vsaj 5 študentov.} \\ - \rowcolor[gray]{0.95}\textit{Everybody have different approaches to organize the ideas and the more ideas we have the better.} \\ - \textit{Ker so predavanja iz različnih področij fizike, nekatere zanimajo bolj kot druge. Za vse je dobro, da nekaj slišimo tudi o temah, ki se niso direktno povezane z našim področjem raziskav, tisti, ki jih zanima več, pa lahko izkoristijo možnost konzultacij.} \\ - \rowcolor[gray]{0.95}\textit{ker se mi zdi najbolj primerna za to raven študija} \\ - \textit{Preprosto zaradi fleksibilnosti.} \\ - \rowcolor[gray]{0.95}\textit{individualne konzultacije s profesorji so dobra dopolnitev predavanj, kjer se tudi med študenti izmenjujejo različna mnenja in argumentacije} \\ - \textit{Pri predavanjih dobimo neko vsebinsko usmeritev, preko konzultacij lahko razrešujemo konkretne probleme.} \\ - \rowcolor[gray]{0.95}\textit{I prefer traditional "chalk\&board" classes and the possibility of consultations with professor if I have a specific problem I can't resolve by myself} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"} \\ - \hline - \\[-0.4cm] \hline -\textit{Ker nismo vsi študenti zaposleni na FMF in IJS bi morali tudi urnik prilagoditi temu - torej obeznosti takoj zjutraj ali pozno popoldne, ne pa sredi dneva.} \\ - \rowcolor[gray]{0.95}\textit{Bolj priročno bi bilo, če bi bili vsi predmeti na isti dan.} \\ - \textit{Imela bi jih manj, tako da mi vec casa ostane za raziskovalno delo. Od njih skoraj nic ne odnesem.} \\ - \rowcolor[gray]{0.95}\textit{I would appreciate if the forms are in English as well. Let's say now I have to go through enrollment process form and all of it I believe is in Slovenian (which was the case last year). It is very hard to fill the form in the language you don't understand and you rely in google translate. Also, when e-mails are sent to us, I believe always should be included the English version of the e-mail, despite the content. If you are claiming is the international programme with official language being English, then I believe applying bi-lingual in documents and e-mails sent it is the least it could be done. Including this website here, where I am checking my index I have problems understanding categories. I believe it should offer the possibility for English language.} \\ - \textit{Veliko različnih izvajalcev in mentorjev sodeluje v programu. Mislim, da nimajo vsi navodil, kaj se od njih pričakuje. Tudi ponudba izbirnih predmetov je pestra in če izbereš predmet, ki ga nosilec še nikoli ni izvajal ter je ta v obliki konzultacij, pride do enakih situacij.} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu temeljne obvezne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 8 & 89 \\ - Ne & 1 & 11 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v letošnjem letu temeljne obvezne predmete?" je velika večina študentov (89 \%) odgovorila z "Da", odgovor "Ne" pa je podalo 11 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Pri predmetu Izbrana poglavja iz reaktorske fizike in tehnike bi pohvalil izbiro vsebin.} \\ - \rowcolor[gray]{0.95}\textit{Pri ponedeljkovih kolokvijih bi bilo bolje, če bi bila zastopana vsa področja, ki jih fakulteta izvaja. Področja predstavljenih kolokvijev so bile namreč zelo omejena.} \\ - \textit{Pohvalil bi veliko količino različnih tem obravnavanih na obveznem seminarju. Izboljšal bi obveščanje študentov glede predavanj, ker se obvestila pogosto prišla le kak dan pred predavanjem.} \\ - \rowcolor[gray]{0.95}\textit{Pokrili smo le 3 področja fizike, in te v čisto prehude podrobnosti, ki nas tistih, ki se s tem ne ukvarjamo, ne zanimajo.} \\ - \textit{sodobna fizika. Dobri predavatelji, mogoce bi nas lahko seznanili prej kdaj so predavanja.} \\ - \rowcolor[gray]{0.95}\textit{Seminar je popolnoma odveč...} \\ - \textit{Seminar - čas predstavitev (sreda ob 12.00), ki so obvezne - težko združljivo z delom kjerkoli drugje kot na FMF/IJS Izbrana poglavja - zanimive teme, pridobivanje širine} \\ - \rowcolor[gray]{0.95}\textit{Imeli smo Izbrana poglavja iz sodobne fizike. Izbira tem se mi je zdela ustrezna, tudi predavatelji so bili dobri. Motilo me je, da smo bili včasih prepozno obveščeni o terminu predavanj (enkrat samo pol ure prej). Še bolje bi bilo, da bi bila predavanja vedno v terminu, določenem na urniku, a razumem, da v primeru gostujočih predavateljev ni vedno izvedljivo.} \\ - \textit{Format of the course, and presentations of different lectures in New Developments in Statistics, also, manner of teaching of prof. Perman in the course he thought.} \\ - \rowcolor[gray]{0.95}\textit{pri mojem konkretnem - raznolikost tem in predavateljev - tudi iz tujine} \\ - \textit{Nic koristi ni od njih, le cas za raziskovalno delo odzirajo.} \\ - \rowcolor[gray]{0.95}\textit{In general there were ok.} \\ - \textit{In the course New developments in statistics I would want students do do more than write abstracts of the lectures because abstracts did not make me learn much about the topics presented.} \\ - \rowcolor[gray]{0.95}\textit{dobro organiozacijo predavanj in vaj} \\ - \textit{Sodobni statistični pristopi - jasna navodila o obveznostih (napisana) pred začetkom izvajanja predmeta. Veliko konkretnih informacij je prihajalo kasneje.} \\ - \rowcolor[gray]{0.95}\textit{My opinion is neutral.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Preverjanje znanja je bilo samo pri predmetu individualni študij. Pri drugih predmetih je bila zgolj obvezna prisotnost, kar je glede na vsebino predmetov primerno.} \\ - \rowcolor[gray]{0.95}\textit{Ga ni.} \\ - \textit{Soliden, ker je paleta tem zelo razlicna in ni potrebe ucenja vseh podrocij.} \\ - \rowcolor[gray]{0.95}\textit{Seminar - predstavitev je ok, dobra priprava na doktorsko disertacijo Izbrana poglavja - ni preverjanja} \\ - \textit{Ni bilo preverjanja znanja.} \\ - \rowcolor[gray]{0.95}\textit{ustrezno; kombinacija različnih elementov} \\ - \textit{In general was ok.} \\ - \rowcolor[gray]{0.95}\textit{ustrezno} \\ - \textit{It is fair.} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 6 & 67 \\ - Ne & 3 & 33 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v letošnjem letu izbirne predmete?" je večina (67 \%) študentov odgovorila z "Da", odgovor "Ne" pa je podalo 33 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Samo 1 je bil?} \\ - \rowcolor[gray]{0.95}\textit{When it comes to electives usually are of consultation form, therefore it would be useful if lecturer guides initially more thoroughly through the course and coursework in general. I believe just giving the assignments it is not sufficient enough. So, providing us with relevant material needed to start and conduct the assignments and prepare for the exam.} \\ - \textit{Pragmatičnost predmetov.} \\ - \rowcolor[gray]{0.95}\textit{Some professors made assumptions that we know much from before and went too quickly through the course.} \\ - \textit{imela sem le en izbirni predmet in pri njem je bila izvedba na nadpovprečno visoki ravni} \\ - \rowcolor[gray]{0.95}\textit{Izvedba le v obliki konzultacij se mi ne zdi primerna.} \\ - \textit{It would be nice if students like me, who are "guests" from another doctoral study, are informed on time about the schedule of lectures, also that schedule could be more findable on web page.} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Pri teh predmetih je bila zgolj obvezna prisotnost, kar je glede na vsebino predmetov primerno.} \\ - \rowcolor[gray]{0.95}\textit{In general ok} \\ - \textit{Ustni izpit je res najprimernejša oblika.} \\ - \rowcolor[gray]{0.95}\textit{ustrezno} \\ - \textit{It's alright} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Pomoč in podpora mentorja}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:09 2017 -\begin{table}[ht] -\centering -\caption{Pomoč in podpora mentorja - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Mentor mi nudi podporo & (8) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Ustrezno svetovanje mentorja & (8) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Pomoč mentorja pri znan. čl. & (6) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Odzivnost mentorja po el. pošti & (8) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Pogostost stikov z mentorjem & (7) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Pomoč mentorja pri težavah & (7) & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.9}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis3_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Moje sodelovanje z mentorjem je dobro, odlično se razumeva. Sodelujeva brez težav in delo je zanimivo.} \\ - \rowcolor[gray]{0.95}\textit{Flawless.} \\ - \textit{Z mentorjem sem zelo zadovoljen. Kadar rabim pomoč, mi je vedno na voljo.} \\ - \rowcolor[gray]{0.95}\textit{Več usmeritme glede izbire raziskovanega problema} \\ - \textit{Imam tri efektivne mentorje, vcasih se zgodi, da mi dajo razlicna navodila oziroma da si predstavljajo, da moram drugace stvari delat. To lahko pripelje do precej stresnih situacij. Bolje bi mi bilo, da mi imela le enega, ki bi se mi bolj posvetil.} \\ - \rowcolor[gray]{0.95}\textit{I am satisfied with my cooperation with the supervisor. Here, I just want to explain that in the above two questions I answered 'I don't have enough information' because there were not yet relevant to the first-year study. That's the only reason.} \\ - \textit{Več kot odlično.} \\ - \rowcolor[gray]{0.95}\textit{Everything is great.} \\ - \textit{Moje sodelovanje z mentorjem je odlično.} \\ - \rowcolor[gray]{0.95}\textit{Odlično.} \\ - \textit{Excellent cooperation} \\ - \hline -\hline -\end{longtable} -\subsubsection{Doktorska disertacija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste pred vpisom na doktorski študij že imeli idejo/raziskovalni načrt za doktorsko disertacijo:"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 5 & 63 \\ - Ne & 3 & 38 \\ - \hline -Skupaj & 8 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste pred vpisom na doktorski študij že imeli idejo/raziskovalni načrt za doktorsko disertacijo:" je večina (63 \%) študentov odgovorila z "Da", odgovor "Ne" pa je podalo 38 \% študentov.\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Da in pričakujem, da ne bo večjih težav, ker je tema zanimiva in popularna in ker bomo vložili veliko truda v kvaliteto izdelka.} \\ - \rowcolor[gray]{0.95}\textit{da, delam na tem} \\ - \textit{Je v delu, zaenkrat ni večjih težav.} \\ - \rowcolor[gray]{0.95}\textit{Eden je že objavljen, eden bo kmalu... verjetno ne bo težav?} \\ - \textit{Članek je že objavljen.} \\ - \rowcolor[gray]{0.95}\textit{We have had already a good idea, and we are thinking to publish it. I think there is not any problem.} \\ - \textit{Počasi se oblikuje ideja za temo članka. Najtežje bo verjetno narediti nekaj povsem novega, česar niso naredili še nikjer drugje.} \\ - \rowcolor[gray]{0.95}\textit{Že začel pisati; morda bodo težave pri objavi v reviji (visoko rangirani)} \\ - \textit{Razmišljal ja, začel pisati še ne.} \\ - \rowcolor[gray]{0.95}\textit{Članek sem začela pisati. Težave pri pridobivanju zanesljivih rezultatov.} \\ - \textit{Ze imam clanek, dva sta pa ze skoraj dokoncana. Ne pricakujem tezav} \\ - \rowcolor[gray]{0.95}\textit{Yes, I started. We are exploring the topic with my mentor. I did not encounter any problem yet, but I believe that I am going to face some during the process.} \\ - \textit{ne še.} \\ - \rowcolor[gray]{0.95}\textit{Ne, ker je prišlo do spremembe ideje doktorske disertacije.} \\ - \textit{Yes, I haven't thought about possible problems yet} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Del študija in ostale aktivnosti v tujini}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{table}[ht] -\centering -\caption{Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Vključenost v razis. sk. & (7) & 1 & 5 & 1.5 & 4.1 \\ - Možnost udeležbe konf. v tujini & (8) & 3 & 5 & 0.8 & 4.0 \\ - Del študija ali razis. dela v tujini & (6) & 1 & 5 & 1.6 & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - Možnost študija/razis. dela v tuj. & (6) & 1 & 5 & 1.6 & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis4_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Zelim si, da bi me posiljali na vec konferenc in fizikalnih poletnih sol.} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Svetovalna pomoč študentom}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Odzivnost in učinkovitost ref. & (9) & 4 & 5 & 0.4 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Ustrezen odnos osebja & (8) & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Uradne ure študentskega ref. & (7) & 2 & 5 & 1.1 & 4.4 \\ - Celovite info. na spletni str. & (9) & 1 & 5 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.9}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis5_1letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Vaši predlogi glede delovanja referata in svetovanja študentom."} \\ - \hline - \\[-0.4cm] \hline -\textit{O doktorskem študiju nismo dobili nobenih informacij vnaprej. Komunikacija z referatom po telefonu/mailu je super, saj so uradne ure neuporabne.} \\ - \rowcolor[gray]{0.95}\textit{več preko interneta - posredovanje dokumentov ipd} \\ - \textit{The provision of information in English, even in the form of a short summary of the emails being circulated and the websites, would be of much help to a swift handling of the administrative matters.} \\ - \rowcolor[gray]{0.95}\textit{I have only compliments for students affairs staff - helpful, patient, responsive to e-mails, polite!} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali je prvo leto študija izpolnilo vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Študij je izpolnil moja pričakovanja.} \\ - \rowcolor[gray]{0.95}\textit{Prvo leto je v glavnem izpolnilo moja pričakovanja, sem pa upal, da bo malo več predavanj o kakih naprednih temah in raziskovalnih metodah.} \\ - \textit{Pohvalil bi, da je količina obveznih vsebin majhna, a žal se kljub temu izvaja površno in s tem daje vtis, da je sama sebi namen.} \\ - \rowcolor[gray]{0.95}\textit{Predavanja preveč specifična. Na seminarju ne dobimo nobenega feed-backa.} \\ - \textit{leto je bilo solidno.} \\ - \rowcolor[gray]{0.95}\textit{Študij nam omogoča dovolj časa za samostojno delo in specializacijo na področju. Lepo bi bilo, da bi bili predmetniki znani vnaprej in dovolj zgodaj, ter da bi se teh urnikov tudi zares držali.} \\ - \textit{manjši obseg obveznosti in preverjanj znanja omogočajo večjo posvečenost raziskovalnemu delu.} \\ - \rowcolor[gray]{0.95}\textit{This doctoral program has been higher than my previous expectation. This first year of studies has been very pleasant and productive.} \\ - \textit{Raziskovalno delo je še težje kot sem pričakoval. Glede predmetov/predavanj, bi spremenil samo to, da bi jih dan vse na isti dan v tednu.} \\ - \rowcolor[gray]{0.95}\textit{Več medsebojnega sodelovanja znotraj raziskovalne skupine.} \\ - \textit{Raziskovalno delo izgleda, kakor sem si predstavljala. Zmanjsala bi stevilo obveznih seminarjev in predavanj, od njih nimam nic koristri, saj niso v zvezi z mojim podrocjem.} \\ - \rowcolor[gray]{0.95}\textit{prvo leto je izpolnilo vsa pričakovanja.} \\ - \textit{From this point of view, I do not have any negative comment in organisation or implementation of the programme. I think that the programme is well conceptualized.} \\ - \rowcolor[gray]{0.95}\textit{I hoped to get more practical knowledge through some exercises.} \\ - \textit{Izpolnilo pričakovanja, nimam predlogov za spremembe.} \\ - \rowcolor[gray]{0.95}\textit{Mislim, da sodelujoči izvajalci in mentorji potrebujejo več navodil.} \\ - \textit{I expected to struggle more on my own, but my supervisor and faculty staff were very professional and friendly} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Način študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Sem mladi raziskovalec / mlada raziskovalka & 0 & 0 \\ - Sem mladi raziskovalec/ mlada raziskovalka v gospodarstvu, & 0 & 0 \\ - Sem doktorski študent/doktorska študentka, ki se financira sam/a, & 6 & 67 \\ - Sem doktorski študent/doktorska študentka, ki mi šolnino plačuje delodajalec, & 1 & 11 \\ - Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih): & 2 & 22 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"} \\ - \hline - \\[-0.4cm] \hline -\textit{Nek razpis z univerze} \\ - \rowcolor[gray]{0.95}\textit{Republic of Slovenia} \\ - \textit{Proračun RS} \\ - \rowcolor[gray]{0.95}\textit{Co-funding of doctoral studies by Slovenian ministry} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Razlog študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij? Možnih je več odgovorov."} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline - Študij sem izbral/a, ker želim imeti akademsko kariero, & 2 & 13 \\ - Študij sem izbral/a zaradi želje po osebnem razvoju in napredku, & 7 & 47 \\ - Študij sem izbral/a, ker menim, da je dobro imeti doktorsko izobrazbo, & 0 & 0 \\ - Študij sem izbral/a, ker menim, da mi bo pridobljeno znanje koristilo na mojem delovnem mestu, & 6 & 40 \\ - Študij sem izbral/a, ker nisem dobil/a zaposlitve, & 0 & 0 \\ - Študij sem izbral/a, da bi lahko napredoval/a na delovnem mestu. & 0 & 0 \\ - Drugo: & 0 & 0 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Odločitev o vpisu}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: Če bi se danes odločali o vpisu na doktorski študij:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -bi se odločil/a enako & 8 & 89 \\ - bi se vpisal/a drugam & 0 & 0 \\ - se ne bi odločil/a za doktorski študij & 0 & 0 \\ - ne vem & 1 & 11 \\ - \hline -Skupaj & 9 & 100 \\ - \hline -\end{tabular} -\end{table} -\clearpage\subsubsection{Alternativni vpis} - Študenti na to vprašanje niso podali odgovorov.\subsubsection{Dodatni komentarji študentov} - -\newpage\pagestyle{drugi}\section{Podrobna analiza: Drugi letnik}\subsection{Analiza dejavnikov}V nadaljevanju so najprej podrobno predstavljene analize za 25 skupnih dejavnikov, ki so bile sicer vključene v agregatne analize že v poglavju 5 in 6. Opisne statistike vključujejo poleg števila (n), povprečja in standardnega odklona (sd) tudi podrobne porazdelitve.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:10 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}ccc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline -S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a. & ((4)) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna. & ((4)) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga. & ((4)) & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Osebje študentskega referata je odzivno in učinkovito. & ((3)) & . & . \\ - Mentor mi nudi potrebno podporo, pomoč in svetovanje pri raziskovalnem delu. & ((4)) & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Pomoč mentorja pri pripravi znanstvenega članka je ustrezna. & ((4)) & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Zadovoljen/na sem z odzivnostjo mentorja po elektronski pošti. & ((4)) & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}Pogostost stikov z mentorjem/mentorico je primerna. & ((4)) & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Fakulteta mi nudi vso potrebno infrastrukturo za pridobivanje virov za moje raziskovalno delo (dostop do člankov, revij ipd.). & ((3)) & . & . \\ - \rowcolor[gray]{0.95}Osebje študentskega referata ima ustrezen odnos do študentov. & ((3)) & . & . \\ - Informacije na spletnih straneh so dovolj jasne in celovite. & ((3)) & . & . \\ - \rowcolor[gray]{0.95}Izvajalci predmetov (predavanj, konzultacij, seminarjev) so tisti, ki so navedeni v študijskem programu. & ((4)) & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.0 \\ - Fakulteta mi nudi vso potrebno drugo infrastrukturo za moje raziskovalno delo (laboratoriji, raziskovalna oprema ipd.). & ((2)) & . & . \\ - \rowcolor[gray]{0.95}Ponudba izbirnih predmetov je ustrezna. & ((4)) & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.6 \\ - Z razporedom izvajanja predmetov sem bil/a pravočasno seznanjen/a. & ((3)) & . & . \\ - \rowcolor[gray]{0.95}Pridobljeno znanje v okviru organiziranih oblik študija mi bo pomagalo pri delu na doktorski disertaciji. & ((3)) & . & . \\ - Razpored ur za predavanja, konzultacije in druge oblike dela mi ustreza. & ((4)) & 4.3 & 0.5 \\ - \rowcolor[gray]{0.95}Nabor predmetov za pridobitev generičnih znanj in spretnosti je ustrezen (npr. vodenje projektov, pisanje člankov itd.). & ((3)) & . & . \\ - V okviru organiziranih oblik študija je bila spodbujena kritična razprava. & ((4)) & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.7 \\ - \rowcolor[gray]{0.95}Imam možnost udeležbe na znanstvenih konferencah v tujini. & ((3)) & . & . \\ - Uradne ure študentskega referata so primerne. & ((3)) & . & . \\ - \rowcolor[gray]{0.95}Želim opravljati del študija ali raziskovalnega dela v okviru študija v tujini. & ((4)) & \textbf{\textcolor[HTML]{B6321C}{3.3}} & 2.1 \\ - Zadovoljen/na sem z izvedbo organiziranih oblik študijskega programa. & ((3)) & . & . \\ - \rowcolor[gray]{0.95}Sem vključen/a v raziskovalno skupino / program / projekt. & ((4)) & \textbf{\textcolor[HTML]{B6321C}{2.3}} & 1.9 \\ - Imam možnost opravljanja dela študija ali raziskovalnega dela v tujini. & ((2)) & . & . \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] - \caption{Opisne statistike za dejavnike, urejene po povprečjih} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/grafVsehDejavnikov_drugi.pdf} - \end{figure}Najboljše so ocenjeni dejavniki "S spremembami poteka predavanj, konzultacij ali seminarjev sem vedno primerno in pravočasno seznanjen/a." (\textbf{\textcolor[HTML]{006666}{5.0}}), "Podpora in usmerjanje mentorja pri izbiri predmetnika sta ustrezna." (\textbf{\textcolor[HTML]{006666}{5.0}}) in "Ko naletim na težavo pri svojem raziskovalnem delu, mi mentor pomaga." (\textbf{\textcolor[HTML]{006666}{5.0}}). \\ \\Najslabše je ocenjen dejavnik "Sem vključen/a v raziskovalno skupino / program / projekt." (\textbf{\textcolor[HTML]{B6321C}{2.3}})\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij po sklopih} -\begin{tabular}{p{8.2cm}C{0.8cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Pomoč in podpora mentorja}}\\ Ustrezno svetovanje mentorja & ((4)) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Pomoč mentorja pri težavah & ((4)) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - Mentor mi nudi podporo & ((4)) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Pomoč mentorja pri znan. čl. & ((4)) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Odzivnost mentorja po el. pošti & ((4)) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - Pogostost stikov z mentorjem & ((4)) & 4 & 5 & \textbf{\textcolor[HTML]{006666}{4.8}} & 0.5 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Infrastruktura in urniki}}\\ \rowcolor[gray]{0.95}Spremembe poteka & ((4)) & 5 & 5 & \textbf{\textcolor[HTML]{006666}{5.0}} & 0.0 \\ - \rowcolor[gray]{0.95}Infrastr. za pridobivanje virov & ((3)) & 4 & 5 & . & . \\ - \rowcolor[gray]{0.95}Pravilno navedeni izvajalci & ((4)) & 3 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 1.0 \\ - \rowcolor[gray]{0.95}Druga infrastruktura & ((2)) & 4 & 5 & . & . \\ - \rowcolor[gray]{0.95}Razpored izvajanja & ((3)) & 3 & 5 & . & . \\ - \rowcolor[gray]{0.95}Razpored ur mi ustreza & ((4)) & 4 & 5 & 4.3 & 0.5 \\ - \multicolumn{6}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ Ustreznost izbirnih predmetov & ((4)) & 4 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} & 0.6 \\ - Uporabnost za dr. dizertacijo & ((3)) & 4 & 5 & . & . \\ - Pridobitev generičnih znanj & ((3)) & 3 & 5 & . & . \\ - Spodbujanje kritične razprave & ((4)) & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 1.7 \\ - Zadovoljstvo z izvajanjem prog. & ((3)) & 1 & 4 & . & . \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ \rowcolor[gray]{0.95}Možnost udeležbe konf. v tujini & ((3)) & 1 & 5 & . & . \\ - \rowcolor[gray]{0.95}Del študija ali razis. dela v tujini & ((4)) & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{3.3}} & 2.1 \\ - \rowcolor[gray]{0.95}Vključenost v razis. sk. & ((4)) & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.3}} & 1.9 \\ - \rowcolor[gray]{0.95}Možnost študija/razis. dela v tuj. & ((2)) & 1 & 2 & . & . \\ - \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & ((3)) & 5 & 5 & . & . \\ - Ustrezen odnos osebja & ((3)) & 4 & 5 & . & . \\ - Celovite info. na spletni str. & ((3)) & 4 & 5 & . & . \\ - Uradne ure študentskega ref. & ((3)) & 1 & 5 & . & . \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{longtable}{p{5.5cm}cccccccccc} - \caption{Frekvenčna porazdelitev enot za dejavnike po sklopih} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam,\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ - \hline - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - - \endfirsthead - - \caption{Frekvenčna porazdelitev enot za dejavnike študijskega procesa po sklopih (nadaljevanje)} \\ \hline - - & \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - - \textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline - \endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 - \hline \multicolumn{11}{l}{\textbf{Pomoč in podpora mentorja}}\\ Ustrezno svetovanje mentorja & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 100 \\ - Pomoč mentorja pri težavah & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 100 \\ - Mentor mi nudi podporo & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 25 & 3 & 75 \\ - Pomoč mentorja pri znan. čl. & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 25 & 3 & 75 \\ - Odzivnost mentorja po el. pošti & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 25 & 3 & 75 \\ - Pogostost stikov z mentorjem & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 25 & 3 & 75 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Infrastruktura in urniki}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spremembe poteka & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 4 & 100 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Infrastr. za pridobivanje virov & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 33 & 2 & 67 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Pravilno navedeni izvajalci & 0 & 0 & 0 & 0 & 1 & 25 & 0 & 0 & 3 & 75 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Druga infrastruktura & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 50 & 1 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Razpored izvajanja & 0 & 0 & 0 & 0 & 1 & 33 & 0 & 0 & 2 & 67 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Razpored ur mi ustreza & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 75 & 1 & 25 \\ - \multicolumn{11}{l}{\textbf{Zadovoljstvo z izvajanjem programov}}\\ Ustreznost izbirnih predmetov & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 50 & 2 & 50 \\ - Uporabnost za dr. dizertacijo & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 67 & 1 & 33 \\ - Pridobitev generičnih znanj & 0 & 0 & 0 & 0 & 1 & 33 & 1 & 33 & 1 & 33 \\ - Spodbujanje kritične razprave & 1 & 25 & 0 & 0 & 0 & 0 & 2 & 50 & 1 & 25 \\ - Zadovoljstvo z izvajanjem prog. & 1 & 33 & 0 & 0 & 0 & 0 & 2 & 67 & 0 & 0 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Del študija in ostale aktivnosti v tujini}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Možnost udeležbe konf. v tujini & 1 & 33 & 0 & 0 & 0 & 0 & 1 & 33 & 1 & 33 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Del študija ali razis. dela v tujini & 1 & 25 & 1 & 25 & 0 & 0 & 0 & 0 & 2 & 50 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Vključenost v razis. sk. & 2 & 50 & 1 & 25 & 0 & 0 & 0 & 0 & 1 & 25 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Možnost študija/razis. dela v tuj. & 1 & 50 & 1 & 50 & 0 & 0 & 0 & 0 & 0 & 0 \\ - \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Odzivnost in učinkovitost ref. & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 3 & 100 \\ - Ustrezen odnos osebja & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 33 & 2 & 67 \\ - Celovite info. na spletni str. & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 33 & 2 & 67 \\ - Uradne ure študentskega ref. & 1 & 33 & 0 & 0 & 0 & 0 & 1 & 33 & 1 & 33 \\ - \hline \end{longtable} \newpage\subsection{Podrobna analiza vseh spremenljivk po sklopih} V nadaljevanju so podrobno analizirana vsa vprašanja (vključno z odprtimi vprašanji), ki so bila vključena v določen sklop. Pri analizi dejavnikov prihaja pri tem do določenega ponavljanja (poglavji 4 in 5), vendar gre vsakič za nekoliko drugačen nivo analize.\subsubsection{Infrastruktura in urniki}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Infrastruktura in urniki - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Spremembe poteka & ((4)) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Infrastr. za pridobivanje virov & ((3)) & 4 & 5 & . & . \\ - Pravilno navedeni izvajalci & ((4)) & 3 & 5 & 1.0 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Druga infrastruktura & ((2)) & 4 & 5 & . & . \\ - Razpored izvajanja & ((3)) & 3 & 5 & . & . \\ - Razpored ur mi ustreza & ((4)) & 4 & 5 & 0.5 & 4.3 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Infrastruktura in urniki - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis1_2letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Število tedensko porabljenih ur za doktorski študij}Študenti so v povprečju tedensko za svoj doktorski študij porabili \textbf{377 ur}. Standardni odklon znaša \textbf{724} ur.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Koliko časa povprečno tedensko porabite za svoj doktorski študij (vštejte vse obveznosti)?"} -\begin{tabular}{lp{3cm}p{1cm}p{1cm}} - \hline -\hline -\bfseries{} & \bfseries{Število ur} & \bfseries{n} & \bfseries{\%} \\ - \hline -Statistika interdisciplinarni & 6 & 1 & 25 \\ - Statistika interdisciplinarni & 18 & 1 & 25 \\ - Statistika interdisciplinarni & 20 & 1 & 25 \\ - Statistika interdisciplinarni & 1463 & 1 & 25 \\ - \hline -Skupaj & 1507 & 4 & 100 \\ - \hline -\hline -Povprečje & 377 & 4 & 100 \\ - Std. Odkl. & 724 & 4 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost časa za doktorski študij}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali se vam zdi čas, ki ga namenite doktorskemu študiju, ustrezen?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da, namenim ravno prav časa. & 3 & 60 \\ - Ne, namenim ga premalo, želel/a bi si več časa nameniti za svoj doktorski študij in raziskovalno delo & 2 & 40 \\ - Ne, namenim ga preveč, želel/a bi si manj časa nameniti za svoj doktorski študij in raziskovalno delo & 0 & 0 \\ - \hline -Skupaj & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Ustreznost trajanja doktorskega študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ocenjujete, da je triletno trajanje doktorskega študija ustrezno?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -da, ravno prav & 1 & 20 \\ - ne vem / ne morem oceniti & 2 & 40 \\ - ne, predolgo & 1 & 20 \\ - ne, prekratko & 1 & 20 \\ - \hline -Skupaj & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite zakaj. "} \\ - \hline - \\[-0.4cm] \hline -\textit{V treh letih je zelo težko dokončati doktorat. Eksperimenti vzamejo veliko časa, potrebna je tudi obdelava podatkov.} \\ - \rowcolor[gray]{0.95}\textit{Za izdelavo doktorata je (na mojem področju - fizika delcev) tri leta premalo, saj zraven opravljam še različne podporne naloge. Kar se pa tiče študijskega procesa na fakulteti, so obvezne študijske vsebine tako ali tako prisotne le v prvem letniku, kar se mi tudi zdi primerno.} \\ - \textit{It is hard to produce enough material for a strong thesis in only three years, expecially if you follow some courses and teach as well.} \\ - \rowcolor[gray]{0.95}\textit{Če kandidat ni na področju sodeloval že pri pripravi magisterija na 2. bolonjski stopnji, ima občutno manj časa kot nekdo, ki se je že seznanil s področjem} \\ - \textit{With the current load of mandatory coursework three years seems insufficient to me. The current system in particular punishes students who are unlucky with the PhD classes that are offered. Even though I am not contractually required to do any teaching, it strikes me as an essential part of the doctoral programme, and I chose to invest time in it, thus further reducing my effective research time per year. If a student happened to be offered exactly the classes that they could complete with relative ease and they chose not to do any teaching, three years may be enough. It seems like an unlikely and undesirable scenario though.} \\ - \hline -\hline -\end{longtable} -\clearpage \subsubsection{Izbira predmeta na drugih programih UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "V 2. letniku sem si izbral/a izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 0 & 0 \\ - Ne & 5 & 100 \\ - \hline -Skupaj & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "V 2. letniku sem si izbral/a izbirni predmet na Univerzi v Ljubljani, izven predmetov doktorskega študijskega programa, na katerega sem vpisan/a:" je velika večina študentov (100 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 0 \% študentov.\subsubsection{Izbira predmeta izven UL}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "V 2. letniku sem si izbral/a izbirni predmet na drugi domači ali tuji univerzi."} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 0 & 0 \\ - Ne & 5 & 100 \\ - \hline -Skupaj & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "V 2. letniku sem si izbral/a izbirni predmet na drugi domači ali tuji univerzi." je velika večina študentov (100 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 0 \% študentov.\newpage\subsubsection{Zadovoljstvo z izvajanjem programov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo z izvajanjem programov - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Ustreznost izbirnih predmetov & ((4)) & 4 & 5 & 0.6 & \textbf{\textcolor[HTML]{36BF4B}{4.5}} \\ - Uporabnost za dr. dizertacijo & ((3)) & 4 & 5 & . & . \\ - Pridobitev generičnih znanj & ((3)) & 3 & 5 & . & . \\ - Spodbujanje kritične razprave & ((4)) & 1 & 5 & 1.7 & \textbf{\textcolor[HTML]{F58137}{3.5}} \\ - Zadovoljstvo z izvajanjem prog. & ((3)) & 1 & 4 & . & . \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Zadovoljstvo z izvajanjem programov - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis2_2letnik.pdf} - \centering - \end{figure}\newpage\subsubsection{Primerna oblika izvedbe predmetov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Katera oblika izvedbe predmetov se vam zdi primernejša?"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -predavanja & 3 & 60 \\ - konzultacije & 0 & 0 \\ - kombinacija obojega & 2 & 40 \\ - \hline -Skupaj & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Navedite zakaj: "} \\ - \hline - \\[-0.4cm] \hline -\textit{Ljubša so mi predavanja.} \\ - \rowcolor[gray]{0.95}\textit{Predavanja / seminarji s splošnih področij fizike so primerni, ker seznanjajo s širšimi temami s področja fizike. Konzultacije so bolj primerne za spodbujanje individualnega dela.} \\ - \textit{Since the department has a small but vary PhD school, it is hard to give lectures that are interesting for everyone.} \\ - \rowcolor[gray]{0.95}\textit{More focus on specific areas of research} \\ - \textit{Veliko več interakcije kakor tudi več pridobljenega znanja v primerjavi s konzultacijami.} \\ - \rowcolor[gray]{0.95}\textit{predavanja prinesejo nek bolj splošen vpogled v področje, medtem ko se lahko s konzultacijami poglobimo v primernejše dele področja, ki so zanimive za izvedbo doktorata} \\ - \textit{Lectures have the obvious benefit that there are other students that share the same experience, which allows us to study together and, more importantly discuss the topics of the class. This brings a richer point of view and more context for a subject. They are beneficial when the subject is part of a standard curriculum. Consultation classes can of course better be tailored to the individual needs of each student. In particular, more niche subjects can be explored that would not be accessible (or useful) for students from other fields.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z izvajanjem organiziranih oblik študija (predavanja, konzultacije, seminarji, predstavitve tem doktorskih disertacij ...)"} \\ - \hline - \\[-0.4cm] \hline -\textit{V redu je, da ni izpitov.} \\ - \rowcolor[gray]{0.95}\textit{Lectures as they are now don't provide choice to students. We should be allowed to choose from classes in the second cycle or replace lectures with consultations.} \\ - \textit{Greater flexibility with the composition of the programme would be highly desirable. The current format of three mandatory PhD level courses *only from FMF*, with a single class offered per semester, plus two consultation classes is plainly catastrophic. Enrolling in a three years programme means essentially that I have to conclude my coursework within the first two years, because I cannot take the risk of failing a class in my last year and thereby delaying my graduation. So far so well. Now, the only classes I can choose from are the doctoral level classes offered by FMF. Classes from other faculties (let alone universities) are not eligible. Master's level classes from FMF -- not eligible. That leaves me with the obligation to take three out of four classes, which, unless I have followed a BSc\&MSc curriculum very similar to the one offered here at FMF, I may be utterly unprepared for. As it turns out, even some of the students from FMF found themselves unprepared for some of the classes that were "proposed" (effectively: mandated). This lack of choice creates a completely disproportionate workload for the coursework. A single course should amount to 5 credits, or 1/12 of the yearly requirements, not 1/3 or more. The situation could be improved in several ways: - allowing a real choice for the fulfilment of the three lecture courses by extending the pool of courses to the masters programme or courses from other institutions - replacing more of the lectures by consultations - counting PhD schools as lecture classes - generally: more flexibility All of these can possibly be subject to individual approval, at the discretion somebody with sufficient subject expertise (usually: the PhD supervisor). For those students with a four year contract these issues are less pressing but not fundamentally different. I do not think that the PhD school is currently big enough to offer a sufficiently wide selection of courses considering the breadth of research that is conducted at our faculty and thus the diversity of specialisations of its students. FMF has to consider where it stands with respect to welcoming students from abroad and from other disciplines. In the current state of affairs, I can only recommend the PhD programme to other interested students with very high reservations.} \\ - \hline -\hline -\end{longtable} -\clearpage\subsubsection{Temeljni/obvezni izbirni predmeti}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v 2. letniku posamezne temeljne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 2 & 50 \\ - Ne & 2 & 50 \\ - \hline -Skupaj & 4 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v 2. letniku posamezne temeljne predmete?" je z "Da" odgovorilo 50 \% študentov, odgovor "Ne" pa je podalo 50 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Zanima nas izvedba temeljnih/obveznih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{The goal of a class is to learn something. Courses with high prerequisites will be beneficial only for few students, so they should rather be self contained. Conducting a class at different levels of sophistication simultaneously is unrealistically ambitious if the original goal is still to be met.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (temeljnih/obveznih) predmetih?"} \\ - \hline - \\[-0.4cm] \hline -\textit{The format of two or three homework assignments with more questions than are required for full credit works very well. In terms of final examination, the presentation of an article / book chapter which connects to the domain of studies of the student worked very well in Alex's class.} \\ - \hline -\hline -\end{longtable} -\newpage\subsubsection{Izbirni predmeti}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Ali ste imeli v letošnjem letu izbirne predmete?"} -\begin{tabular}{lcc} - \hline -\hline -\bfseries{} & \bfseries{n} & \bfseries{\%} \\ - \hline -Da & 1 & 20 \\ - Ne & 4 & 80 \\ - \hline -Skupaj & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -Na vprašanje "Ali ste imeli v letošnjem letu izbirne predmete?" je velika večina študentov (80 \%) odgovorila z "Ne", odgovor "Da" pa je podalo 20 \% študentov.% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Zanima nas izvedba izbirnih predmetov. Kaj bi pri teh predmetih najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Material was nicely paced. Homework exercises helped process/learn the material.} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kaj menite o načinu preverjanja znanja pri teh (izbirnih) predmetih?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Appropriate} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Pomoč in podpora mentorja} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:11 2017 -\begin{table}[ht] -\centering -\caption{Pomoč in podpora mentorja - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Ustrezno svetovanje mentorja & ((4)) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Pomoč mentorja pri težavah & ((4)) & 5 & 5 & 0.0 & \textbf{\textcolor[HTML]{006666}{5.0}} \\ - Mentor mi nudi podporo & ((4)) & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Pomoč mentorja pri znan. čl. & ((4)) & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Odzivnost mentorja po el. pošti & ((4)) & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - Pogostost stikov z mentorjem & ((4)) & 4 & 5 & 0.5 & \textbf{\textcolor[HTML]{006666}{4.8}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Pomoč in podpora mentorja - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis3_2letnik.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kako bi ocenili sodelovanje s svojim mentorjem/mentorico? Kaj bi pohvalili in kaj spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Sodelovanje bi ocenil kot 9/10.} \\ - \rowcolor[gray]{0.95}\textit{Zelo dobro, imam odlično podporo, usmerjanje in možnost za razpravo. Odzivnost je dobra.} \\ - \textit{Vedno si vzame čas zame, mi je pripravljen prisluhniti in mi tudi pomaga. Zame se zelo zavzema, kar zelo cenim.} \\ - \rowcolor[gray]{0.95}\textit{mentor je v veliki večini primerov na voljo takoj, ko ga potrebujem} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Kakšne so vaše izkušnje s prijavo dispozicije doktorske naloge?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Navodila kaj/kdaj/kako... napisati temo dispozicije bi lahko bila objavljena na speltni strani FMF.} \\ - \rowcolor[gray]{0.95}\textit{V redu. Lahko bi razmislili o enotnem obrazcu "Vloga," ker sem ga sam moral (oblikovno) kopirati od kolega iz višjega letnika.} \\ - \textit{At first I believed it was too early to produce such a document, then I realized it helped me gather ideas on what my dissertation should look like.} \\ - \rowcolor[gray]{0.95}\textit{It helped me focus on what direction my research was going.} \\ - \textit{Predvsem pozitivne. To pomeni, da te prijava dipozicije "prisili", da k svoji temi pristopiš kakovostno: se poglobiš v svojo vsebino, prebiraš ogromno literature, razmišljaš o izvirnemu prispevku itd.} \\ - \rowcolor[gray]{0.95}\textit{Izredno slabe. Preveč birokracije. Izgubiš motivacijo in voljo do nadaljevanja} \\ - \textit{prijava je stresna, saj je tudi zavezujoča, če obljubimo preveč, imamo lahko kasneje probleme, vendar pa je še prezgodaj, da bi dovolj dobro vedeli, kaj naj bo res uspelo - zato kakšni zanalašč 'ponavljajo' drugi letnik (da še ni potrebno podati prijave teme in imajo dodatno leto za pisanje)} \\ - \rowcolor[gray]{0.95}\textit{That was fine.} \\ - \hline -\hline -\end{longtable} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Ali ste že razmišljali ali začeli pisati članek, ki ga morate objaviti pred zagovorom disertacije? Kakšne težave pričakujete ali že imate v zvezi s tem?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Članek je že poslan, imel sem že več izmenjav z arbitrom (referee). Predvidoma bo objavljen v naslednjih dveh mesecih. Težava do zdaj je bila razmeroma slaba odzivnost arbitra, kar je vodilo do dolgega časa od vloge do objave.} \\ - \rowcolor[gray]{0.95}\textit{I have already published such article.} \\ - \textit{Yes. The problem is that only very particular journals are counted, and you can't co-write with anyone but your supervisor.} \\ - \rowcolor[gray]{0.95}\textit{Trenutno sem v fazi pisanja znanstveneg članka. Trenutno se bolj ukvarjam s kakovostjo vsebine članka kot z morebitnimi težavami.} \\ - \textit{razmišljam že, pišem še ne} \\ - \rowcolor[gray]{0.95}\textit{The main venue in my field are conferences; there are very few journals. Publishing in the post-proceedings of a conference requires passing a standard hard peer review and should thus probably be regarded as sufficient for the doctoral programme requirement.} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Del študija in ostale aktivnosti v tujini} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{table}[ht] -\centering -\caption{Del študija in ostale aktivnosti v tujini - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Možnost udeležbe konf. v tujini & ((3)) & 1 & 5 & . & . \\ - Del študija ali razis. dela v tujini & ((4)) & 1 & 5 & 2.1 & \textbf{\textcolor[HTML]{B6321C}{3.3}} \\ - Vključenost v razis. sk. & ((4)) & 1 & 5 & 1.9 & \textbf{\textcolor[HTML]{B6321C}{2.3}} \\ - Možnost študija/razis. dela v tuj. & ((2)) & 1 & 2 & . & . \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Del študija in ostale aktivnosti v tujini - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis4_2letnik.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj v zvezi z raziskovalnim delom v okviru študija?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Zelo lepo bi bilo, če bi imeli več študentov z 2. stopnje, s katerimi bi delali na istem področju. S tem bi oni lahko pridobili več izkušenj z delom v laboratoriju, mi pa bi lahko naredili več. Žal magistrski študenti navadno nimajo veliko časa oz. zaključijo kmalu po tem, ko se jih uvede.} \\ - \rowcolor[gray]{0.95}\textit{Participation in conferences has been very helpful staying in touch with recent developments in the field. The frequent visitors to our research group made me feel more connected to the rest of the community.} \\ - \hline -\hline -\end{longtable} - - \clearpage - \subsubsection{Svetovalna pomoč študentom} - % latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - dejavniki (opisne statistike)} -\begin{tabular}{p{7cm}|cccc|c} - \hline \hline &&&&& \textbf{Povprečje}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{sd} & \bfseries{Statistika.} \\ - \hline -Odzivnost in učinkovitost ref. & ((3)) & 5 & 5 & . & . \\ - Ustrezen odnos osebja & ((3)) & 4 & 5 & . & . \\ - Celovite info. na spletni str. & ((3)) & 4 & 5 & . & . \\ - Uradne ure študentskega ref. & ((3)) & 1 & 5 & . & . \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč študentom - dejavniki (grafični prikaz povprečij)} - \includegraphics[width=\maxwidth]{../rezultati/3000027/grafi/izpis5_2letnik.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Vaši predlogi glede delovanja referata in svetovanja študentom."} \\ - \hline - \\[-0.4cm] \hline -\textit{Obveščanje je včasih nekoliko neorganizirano, npr. pri vpisu na višjo stopnjo. V idealnem primeru bi lahko npr. na začetku avgusta prejeli elektronsko pošto s pozivom k vpisu v višji letnik in priloženimi navodili, kaj je za to potrebno. Saj je postopek navadno samoumeven, ampak ne bi nič škodilo, če bi imeli vsa navodila zbrana na enem mestu.} \\ - \rowcolor[gray]{0.95}\textit{Unfortunately, I don't actually know where to get "student counselling", or what that would encompass. It would be great to have more English speaking staff, or at least a contact person. Usually I feel that I have to go through my supervisor.} \\ - \textit{Documents and notifications in English!} \\ - \hline -\hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Na doktorski študij ste se gotovo vpisali z določenimi pričakovanji. Ali sta prvi dve leti študija izpolnili vaša pričakovanja? Kaj bi v programu najbolj pohvalili in kaj bi spremenili?"} \\ - \hline - \\[-0.4cm] \hline -\textit{Študij bi pohvalil. Spremenil bi le točkovanje poletnih šol. Kako naj študent dobi 10 KT iz poletnih šol če so posamezne šole lahko točkovane le z 3 in 6 KT??? Točkovanje poletnih šol se je spremenilo tekom štuidija, za kar študentje nismo bili obveščeni. Poleg tega, je na določenih odsekih na določenem inštitutu nezapisano pravilo, da lahko mladi raziskovalec/doktorski študent potuje le na eno poletno šolo na leto. V tem primeru mora študent nujno obiskati 2 poletni šoli, ki sta točkovani z 6 KT.} \\ - \rowcolor[gray]{0.95}\textit{Skupno gledano sem z doktorskim študijem do zdaj zadovoljen. Imam dobro podporo mentorja. Imam redne stike z raziskovalci z drugih institucij, ki jim lahko predstavljam svoje rezultate. Fizikalni kolokviji so kar zanimivi. Pri študijskih obveznosti bi bilo treba doseči večjo jasnost, katere predmete je treba opravljati in kateri se priznajo z 2. stopnje. Predmetnik je namreč precej kaotičen.} \\ - \textit{The first half of the program went very well. I enjoyed being in the research environment, it greatly expeanded my knowledge and curiosity on many different topics. There were many opportunities to share ideas as well as developing some of my own.} \\ - \rowcolor[gray]{0.95}\textit{Ne. Vbistvu sem kar malo razočaran. Sem si predstavljal več interakcije oziroma predavanj in več praktičnega dela. Predvsem bi pohvalil prijaznost in odzivnost vseh nosilcev predmetov na doktorskem študiju. Res jo prijazni in primpravljeni pomagati. Spremenil bi predvsem to, da bi vključil vel interakcije in praktičnega dela.} \\ - \textit{pričakovanj ni bilo veliko} \\ - \hline -\hline -\end{longtable} -\subsubsection{Način študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Kako študirate:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -Sem mladi raziskovalec / mlada raziskovalka & 1 & 20 \\ - Sem mladi raziskovalec/ mlada raziskovalka v gospodarstvu, & 0 & 0 \\ - Sem doktorski študent/doktorska študentka, ki se financira sam/a, & 2 & 40 \\ - Sem doktorski študent/doktorska študentka, ki mi šolnino plačuje delodajalec, & 1 & 20 \\ - Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih): & 1 & 20 \\ - \hline -Skupaj & 5 & 100 \\ - \hline -\end{tabular} -\end{table} -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Sem doktorski študent/doktorska študentka, ki ima štipendijo oz. sofinanciranje iz drugih virov (prosimo, navedite, katerih):"} \\ - \hline - \\[-0.4cm] \hline -\textit{funded by a research project at FMF (I guess this is my case?)} \\ - \hline -\hline -\end{longtable} -\subsubsection{Razlog študija}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Zakaj ste se odločili za doktorski študij? Možnih je več odgovorov."} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline - Študij sem izbral/a, ker želim imeti akademsko kariero, & 2 & 18 \\ - Študij sem izbral/a zaradi želje po osebnem razvoju in napredku, & 3 & 27 \\ - Študij sem izbral/a, ker menim, da je dobro imeti doktorsko izobrazbo, & 2 & 18 \\ - Študij sem izbral/a, ker menim, da mi bo pridobljeno znanje koristilo na mojem delovnem mestu, & 3 & 27 \\ - Študij sem izbral/a, ker nisem dobil/a zaposlitve, & 0 & 0 \\ - Študij sem izbral/a, da bi lahko napredoval/a na delovnem mestu. & 0 & 0 \\ - Drugo: & 1 & 9 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Drugo:"} \\ - \hline - \\[-0.4cm] \hline -\textit{To delo me veseli} \\ - \rowcolor[gray]{0.95}\textit{I like Mathematics} \\ - \textit{nekje je potrebno začeti, pa čeprav si potem težje zaposljiv} \\ - \hline -\hline -\end{longtable} -\subsubsection{Odločitev o vpisu}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "Če bi se danes odločali o vpisu na doktorski študij:"} -\begin{tabular}{p{13.9cm}cc} - \hline -\hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{\%} \\ - \hline -bi se odločil/a enako & 2 & 50 \\ - bi se vpisal/a drugam & 0 & 0 \\ - se ne bi odločil/a za doktorski študij & 1 & 25 \\ - ne vem & 1 & 25 \\ - \hline -Skupaj & 4 & 100 \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Alternativni vpis} - Študenti na to vprašanje niso podali odgovorov.\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "1. korak: Čas od oddaje teme doktorske disertacije do soglasja senata/komisije fakultete:"} -\begin{tabular}{p{9cm}cccc} - \hline -\hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{Čas v mesecih} & \bfseries{n} & \bfseries{\%} \\ - \hline -Statistika interdisciplinarni & 2. & 5 & 2 & 67 \\ - Statistika interdisciplinarni & 2. & 6 & 1 & 33 \\ - \hline -Skupaj & & 16 & 3 & 100 \\ - \hline -\hline -Povprečje & & 5 & . & . \\ - Standardni odklon & & 1 & . & . \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{table}[ht] -\centering -\caption{Frekvenčna porazdelitev odgovorov na vprašanje: "2. korak: Čas od soglasja senata/komisije fakultete do soglasja senata UL (zapišite podatek, če je soglasje k temi doktorske disertacije pogoj za vpis v 3. letnik, sicer pustite prazno):"} -\begin{tabular}{p{9cm}cccc} - \hline -\hline -\bfseries{Program} & \bfseries{Letnik} & \bfseries{Čas v mesecih} & \bfseries{n} & \bfseries{\%} \\ - \hline -Statistika interdisciplinarni & 2. & 2 & 1 & 50 \\ - Statistika interdisciplinarni & 2. & 3 & 1 & 50 \\ - \hline -Skupaj & & 5 & 2 & 100 \\ - \hline -\hline -Povprečje & & 3 & . & . \\ - Standardni odklon & & 1 & . & . \\ - \hline -\end{tabular} -\end{table} -\subsubsection{Dodatni komentarji študentov}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 27 14:30:12 2017 -\begin{longtable}{p{0.95\textwidth}} -\caption{Odgovori na odprto vprašanje: "Bi nam želeli sporočiti še kaj, kar ni bilo zajeto v anketi?"} \\ - \hline - \\[-0.4cm] \hline -\textit{birokracija birokracija birokracija. Takšne čase bi postopka pridobitve senata bi morali vstaviti v vaše brošure.} \\ - \hline -\hline -\end{longtable} -Študenti na to vprašanje niso podali odgovorov. -\end{document} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.toc b/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.toc deleted file mode 100644 index 1ff0dff99..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija doktorski studij/R_splosna_porocila/temp/splosnaDoktorska_po_Programih.toc +++ /dev/null @@ -1,45 +0,0 @@ -\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1} -\contentsline {section}{\numberline {2.}Metodologija}{3}{section.0.2} -\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov v anketi}{5}{section.0.3} -\contentsline {section}{\numberline {4.}Analiza dejavnikov in vsebinskih sklopov - oba letnika zdru\IeC {\v z}eno}{6}{section.0.4} -\contentsline {section}{\numberline {5.}Analize skupnih spremenljivk po letnikih}{10}{section.0.5} -\contentsline {section}{\numberline {6.}Podrobna analiza: Prvi letnik}{16}{section.0.6} -\contentsline {subsection}{\numberline {6.1}Analiza dejavnikov}{16}{subsection.0.6.1} -\contentsline {subsection}{\numberline {6.2}Podrobna analiza vseh spremenljivk po sklopih}{20}{subsection.0.6.2} -\contentsline {subsubsection}{\numberline {6.2.1}Infrastruktura in urniki}{20}{subsubsection.0.6.2.1} -\contentsline {subsubsection}{\numberline {6.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.2} -\contentsline {subsubsection}{\numberline {6.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{21}{subsubsection.0.6.2.3} -\contentsline {subsubsection}{\numberline {6.2.4}Izbira predmeta na drugih programih UL}{22}{subsubsection.0.6.2.4} -\contentsline {subsubsection}{\numberline {6.2.5}Izbira predmeta izven UL}{22}{subsubsection.0.6.2.5} -\contentsline {subsubsection}{\numberline {6.2.6}Zadovoljstvo z izvajanjem programov}{23}{subsubsection.0.6.2.6} -\contentsline {subsubsection}{\numberline {6.2.7}Primerna oblika izvedbe predmetov}{24}{subsubsection.0.6.2.7} -\contentsline {subsubsection}{\numberline {6.2.8}Pomo\IeC {\v c} in podpora mentorja}{29}{subsubsection.0.6.2.8} -\contentsline {subsubsection}{\numberline {6.2.9}Doktorska disertacija}{30}{subsubsection.0.6.2.9} -\contentsline {subsubsection}{\numberline {6.2.10}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{32}{subsubsection.0.6.2.10} -\contentsline {subsubsection}{\numberline {6.2.11}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{34}{subsubsection.0.6.2.11} -\contentsline {subsubsection}{\numberline {6.2.12}Na\IeC {\v c}in \IeC {\v s}tudija}{36}{subsubsection.0.6.2.12} -\contentsline {subsubsection}{\numberline {6.2.13}Razlog \IeC {\v s}tudija}{37}{subsubsection.0.6.2.13} -\contentsline {subsubsection}{\numberline {6.2.14}Odlo\IeC {\v c}itev o vpisu}{37}{subsubsection.0.6.2.14} -\contentsline {subsubsection}{\numberline {6.2.15}Alternativni vpis}{38}{subsubsection.0.6.2.15} -\contentsline {subsubsection}{\numberline {6.2.16}Dodatni komentarji \IeC {\v s}tudentov}{38}{subsubsection.0.6.2.16} -\contentsline {section}{\numberline {7.}Podrobna analiza: Drugi letnik}{39}{section.0.7} -\contentsline {subsection}{\numberline {7.1}Analiza dejavnikov}{39}{subsection.0.7.1} -\contentsline {subsection}{\numberline {7.2}Podrobna analiza vseh spremenljivk po sklopih}{43}{subsection.0.7.2} -\contentsline {subsubsection}{\numberline {7.2.1}Infrastruktura in urniki}{43}{subsubsection.0.7.2.1} -\contentsline {subsubsection}{\numberline {7.2.2}\IeC {\v S}tevilo tedensko porabljenih ur za doktorski \IeC {\v s}tudij}{44}{subsubsection.0.7.2.2} -\contentsline {subsubsection}{\numberline {7.2.3}Ustreznost \IeC {\v c}asa za doktorski \IeC {\v s}tudij}{44}{subsubsection.0.7.2.3} -\contentsline {subsubsection}{\numberline {7.2.4}Ustreznost trajanja doktorskega \IeC {\v s}tudija}{44}{subsubsection.0.7.2.4} -\contentsline {subsubsection}{\numberline {7.2.5}Izbira predmeta na drugih programih UL}{46}{subsubsection.0.7.2.5} -\contentsline {subsubsection}{\numberline {7.2.6}Izbira predmeta izven UL}{46}{subsubsection.0.7.2.6} -\contentsline {subsubsection}{\numberline {7.2.7}Zadovoljstvo z izvajanjem programov}{47}{subsubsection.0.7.2.7} -\contentsline {subsubsection}{\numberline {7.2.8}Primerna oblika izvedbe predmetov}{48}{subsubsection.0.7.2.8} -\contentsline {subsubsection}{\numberline {7.2.9}Temeljni/obvezni izbirni predmeti}{50}{subsubsection.0.7.2.9} -\contentsline {subsubsection}{\numberline {7.2.10}Izbirni predmeti}{51}{subsubsection.0.7.2.10} -\contentsline {subsubsection}{\numberline {7.2.11}Pomo\IeC {\v c} in podpora mentorja}{52}{subsubsection.0.7.2.11} -\contentsline {subsubsection}{\numberline {7.2.12}Del \IeC {\v s}tudija in ostale aktivnosti v tujini}{55}{subsubsection.0.7.2.12} -\contentsline {subsubsection}{\numberline {7.2.13}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{57}{subsubsection.0.7.2.13} -\contentsline {subsubsection}{\numberline {7.2.14}Na\IeC {\v c}in \IeC {\v s}tudija}{58}{subsubsection.0.7.2.14} -\contentsline {subsubsection}{\numberline {7.2.15}Razlog \IeC {\v s}tudija}{59}{subsubsection.0.7.2.15} -\contentsline {subsubsection}{\numberline {7.2.16}Odlo\IeC {\v c}itev o vpisu}{59}{subsubsection.0.7.2.16} -\contentsline {subsubsection}{\numberline {7.2.17}Alternativni vpis}{59}{subsubsection.0.7.2.17} -\contentsline {subsubsection}{\numberline {7.2.18}Dodatni komentarji \IeC {\v s}tudentov}{60}{subsubsection.0.7.2.18} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/.Rhistory b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/.Rhistory deleted file mode 100644 index 2f5ab93be..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/.Rhistory +++ /dev/null @@ -1,512 +0,0 @@ -ggplot2.multiplot(..., plotlist=NULL, cols=2) -install.packages("devtools") -library(devtools) -install_github("easyGgplot2", "kassambara") -library(easyGgplot2) -pushViewport(viewport(layout = grid.layout(1, 2, heights = unit(c(1, 4, 4), "null")))) -grid.text("title of this panel", vp = viewport(layout.pos.row = 1, layout.pos.col = 1:2)) -print(p1, vp = viewport(layout.pos.row = 2, layout.pos.col = 1)) -print(p1, vp = viewport(layout.pos.row = 1, layout.pos.col = 1)) -print(p2, vp = viewport(layout.pos.row = 1, layout.pos.col = 2)) -p1 <- ggplot(iris, aes(Sepal.Length)) + -geom_density() + -facet_wrap(~ Species) -p2 <- ggplot(iris, aes(Sepal.Length)) + -geom_density() -multiplot(p1, p2, cols = 2) -pushViewport(viewport(layout = grid.layout(1, 2, heights = unit(c(1, 4, 4), "null")))) -grid.text("title of this panel", vp = viewport(layout.pos.row = 1, layout.pos.col = 1:2)) -print(p1, vp = viewport(layout.pos.row = 1, layout.pos.col = 1)) -print(p2, vp = viewport(layout.pos.row = 1, layout.pos.col = 2)) -pushViewport(viewport(layout = grid.layout(1, 1, heights = unit(c(1, 4, 4), "null")))) -print(p1, vp = viewport(layout.pos.row = 1, layout.pos.col = 1)) -print(p2, vp = viewport(layout.pos.row = 1, layout.pos.col = 2)) -multiplot(p1, p2, cols = 2) -pushViewport(viewport(layout = grid.layout(1, 1, heights = unit(c(1, 4, 4), "null")))) -print(p1, vp = viewport(layout.pos.row = 1, layout.pos.col = 1)) -print(p2, vp = viewport(layout.pos.row = 1, layout.pos.col = 2)) -print(p1, vp = viewport(layout.pos.row = 1, layout.pos.col = 1)) -print(p2, vp = viewport(layout.pos.row = 1, layout.pos.col = 2)) -pushViewport(viewport(layout = grid.layout(1, 1, heights = unit(c(1, 4, 4), "null")))) -print(p1, vp = viewport(layout.pos.row = 1, layout.pos.col = 1)) -print(p2, vp = viewport(layout.pos.row = 1, layout.pos.col = 2)) -pushViewport(viewport(layout = grid.layout(1, 2, heights = unit(c(1, 4, 4), "null")))) -print(p1, vp = viewport(layout.pos.row = 1, layout.pos.col = 1)) -print(p2, vp = viewport(layout.pos.row = 1, layout.pos.col = 2)) -library(gridExtra) -grid.arrange(p1,p2, top = "Title", -layout_matrix = matrix(c(1,2), ncol=2, byrow=TRUE)) -multiplot(p1, p2, cols = 2) -grid.arrange(p1,p2, top = "Title", -layout_matrix = matrix(c(1,2), ncol=2, byrow=TRUE)) -grid.arrange(p1,p2, layout_matrix = matrix(c(1,2), ncol=2, byrow=TRUE)) -par(oma=c(0,15,0,0)) -multiplot(p1, p2, cols = 2) -par(oma=c(0,15,5,0)) -multiplot(p1, p2, cols = 2) -par(oma=c(0,15,5,10)) -multiplot(p1, p2, cols = 2) -muu<-data.frame(x=c(1,2,3,4,5),y=c(6,7,8,9,0)) -muu -muu2<-as.character(row[,x]) -muu2<-as.character(muu[,x]) -muu -muu[,x] -muu[,x] -muu2<-as.character(muu[,"x"]) -muu2 -?row -grid=10 -library(matlab) -lambda_grids=exp(linspace(log(1),log(1e-4),grid)) -install.packages("matlab") -library(matlab) -lambda_grids=exp(linspace(log(1),log(1e-4),grid)) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axes=expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axes=expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]) -lambda[2] -plot(lambda_grids,type='l',xlab=expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10], ylab="",yaxt="n") -axes=expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]) -plot(lambda_grids,type='l',xlab=c(expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]), ylab="",yaxt="n") -axes=expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]) -require(latex2exp) -install.packages("latex2exp") -require(latex2exp) -plot(1, xlab = TeX('$\\mu$')) -plot(lambda_grids,type='l',xlab=c(expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]), ylab="",yaxt="n") -axes=expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]) -require(latex2exp) -plot(1, xlab = TeX('$\\mu$')) -grid=10 -lambda_grids=exp(linspace(log(1),log(1e-4),grid)) -plot(lambda_grids,type='l',xlab=c(expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]), ylab="",yaxt="n") -axes=expression(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]) -require(latex2exp) -plot(1, xlab = TeX('$\\mu$')) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -plot(lambda_grids,type='l',xlab=TeX(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]), ylab="",yaxt="n") -lambda -expression(lambda[2]) -plot(1:10) -labs <- lapply(alpha, function(x) bquote(alpha == .(x))) -axis(4, at = seq(1, by = 2, length = 5), -labels = do.call(expression, labs), las = 1) -par(op) -plot(1:10) -axis(1) -labs <- lapply(alpha, function(x) bquote(alpha == .(x))) -axis(4, at = seq(1, by = 2, length = 5), -labels = do.call(expression, labs), las = 1) -par(op) -plot(lambda_grids,type='l',xlab=TeX(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]), ylab="",yaxt="n") -library(matlab) -lambda_grids=exp(linspace(log(1),log(1e-4),grid)) -plot(lambda_grids,type='l',xlab=TeX(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]), ylab="",yaxt="n") -grid=10 -library(matlab) -lambda_grids=exp(linspace(log(1),log(1e-4),grid)) -plot(lambda_grids,type='l',xlab=TeX(lambda[2],lambda[4],lambda[6],lambda[8],lambda[10]), ylab="",yaxt="n") -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(4,at=c(0.75,1.75),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(0,at=c(0.75,1.75),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,at=c(0.75,1.75),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,at=c(2,4,6,8,19),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(1,at=c(2,4,6,8,19),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,at=c(2,4,6,8,10),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,seq(2, by = 2, length = 5),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,seq(2, by = 2, length = 2),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,seq(2, by = 2, length = 4),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,seq(2, by = 2, length = 3),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,seq(2, by = 2, length = 5),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -axis(1,seq(2, by = 4, length = 2),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(1,seq(2, by = 4, length = 2),labels=c(expression(alpha==0.1),expression(alpha==0.2)),las=1) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(1, at=1:10, labels=letters[1:10]) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(1, at=1:10, labels=TeX{\\lambda^5}) -axis(1, at=1:10, labels=TeX{"\\lambda"}) -axis(1, at=1:10, labels=TeX({"\\lambda"})) -axis(1, at=1:2, labels=TeX({"\\lambda"})) -axis(1, at=1:1, labels=TeX({"\\lambda"})) -axis(1, at=1:1, labels=TeX("\\lambda")) -plot(1:10,1:10) -mtext(expression(bold("Meaningless Title")), -line=3.5,cex=1.15) -mtext(bquote(paste(f( lambda ^ x) ==.(lambda),", ", -alpha==.(alpha),", ", -beta==.(beta),", ", -delta==.(delta),", ", -mu==.(mu),sep="")), -line=2.25,cex=1.15) -lambda <- 4 -mtext(expression(bold("Meaningless Title")), -line=3.5,cex=1.15) -mtext(bquote(paste(f( lambda ^ x) ==.(lambda),", ", -alpha==.(alpha),", ", -beta==.(beta),", ", -delta==.(delta),", ", -mu==.(mu),sep="")), -line=2.25,cex=1.15) -mu <- 0 -alpha <- 1 -beta <- 2 -delta <- 3 -lambda <- 4 -mtext(bquote(paste(f( lambda ^ x) ==.(lambda),", ", -alpha==.(alpha),", ", -beta==.(beta),", ", -delta==.(delta),", ", -mu==.(mu),sep="")), -line=2.25,cex=1.15) -axis(1,seq(2, by = 4, length = 2),labels=c(expression(lambda==0.1),expression(lambda==0.2)),las=1) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(1,seq(2, by = 4, length = 2),labels=c(expression(lambda==0.1),expression(lambda==0.2)),las=1) -axis(1,seq(2, by = 4, length = 2),labels=c(expression(lambda),expression(lambda)),las=1) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(1,seq(2, by = 4, length = 2),labels=c(expression(lambda),expression(lambda)),las=2) -axis(1,seq(2, by = 4, length = 2),labels=c(expression(lambda),expression(lambda)),las=1) -plot(lambda_grids,type='l',axes=FALSE,xlab="", ylab="",yaxt="n") -Axis(side=1, labels=FALSE) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -Axis(side=1, labels=FALSE) -Axis(side=2, labels=FALSE) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(1,seq(2, by = 4, length = 2),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1,seq(2, by = 4, length = 4),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1,seq(2, by = 2, length = 1:40),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1,seq(2, by = 2, length = 1:10),labels=c(expression(lambda),expression(lambda)),las=1) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(1, at=1:1, labels=labels=c(expression(lambda))) -axis(1, at=1:1, labels=expression(lambda)) -axis(1,seq(2, by = 2, length = 1:10), labels=expression(lambda)) -axis(1,seq(2, by = 2, length = 5), labels=expression(lambda)) -lambda_grids -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(1,seq(2, by = 2, length = 1:10),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1,seq(2, by = 2, length = 1),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1, at=c(2,4), labels=expression(lambda))) -axis(1, at=c(2,4), labels=expression(lambda)) -at = floor(seq(from = 1, to = 5913, length.out = 7)) -axis(1, seq(2, by = 2, length = 1),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda),expression(lambda)),las=1) -axis(1, at = floor(seq(from = 1, to = 10, length.out = 7)), labels=expression(lambda)) -axis(side=1,at=c(2,4,8,10),labels=c("C","S","M","a")) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda)"2",expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(c(expression(lambda)"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(paste(expression(lambda)"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(paste(expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(paste0(expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(c(expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c((expression(lambda),"2"),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda^3),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda3),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda2==2),expression(lambda)),las=1) -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda==2),expression(lambda)),las=1) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda3),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(1, seq(2, by = 2, length = 2),labels=c(expression(lambda==2),expression(lambda)),las=1) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda==2),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2=lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2==lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(2==lambda),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda[2]),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda),expression(lambda),expression(lambda),expression(lambda))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*4),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*[4]),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*[4]),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*"["4"]"),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side=1,at=c(2,4,6,8,10),labels=c(expression(lambda*2),expression(lambda*,"[",4,"]",),expression(lambda*6),expression(lambda*8),expression(lambda*10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda ^ 2), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -lambda_grids=exp(linspace(log(1),log(1e-4),grid)) -plot(lambda_grids,type='l',xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda ^ 2), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda ^ 2), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda ^ 4), -expression(lambda ^ 6), expression(lambda ^ 8), expression(lambda ^ 10))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda [2]), -expression(lambda [2]), expression(lambda [2]), expression(lambda [2]))) -plot(lambda_grids,type='l', axes=FALSE, frame.plot=TRUE,xlab="", ylab="",yaxt="n") -axis(side = 1, at = c(2, 4, 6, 8, 10),labels = c(expression(lambda [2]), expression(lambda [4]), -expression(lambda [6]), expression(lambda [8]), expression(lambda [10]))) -paste0(ass,".tex") -paste0("fileOutputName",".tex") -fileOutputName -gsub("\\.pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex ") -gsub("\\.pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex ") -gsub(".pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex ") -gsub(".pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex.") -gsub("\\.pdf", "", "SAMOEVALVACIJSKO_POROCILO__hierarhija_tri_vprasanja.pdf.tex.") -paste0(gsub("\\.pdf", "", "aa.pdf"),".tex") -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -a <- str_split(a, ";") -library(stringr) -a <- str_split(a, ";") -a -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -str_split(a, ";") -unique(str_split(a, ";")) -unique(unlist(a, use.names = FALSE)) -b <- unique(str_split(a, ";")) -unique(unlist(b, use.names = FALSE)) -čist(unique(unlist(b))) -list(unique(unlist(b))) -unique(unlist(b)) -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -Then -a <- str_split(a, ";") -and finally -list(unique(unlist(a))) -a <- list("aaa;bbb", "aaa", "bbb", "aaa;ccc") -unique(unlist(sapply(a, function(i) strsplit(i, ';')))) -df = data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df[df$item_text=="car",] -df -(df[grep("car", df$item_text),]) -df[grep("car", df$item_text),] -df[grep("car", df$item_text)] -df[,grep("car", df$item_text)] -df[grep("car", df)] -df$item_text= -df$item_text -df[grep("car", df$item_text, value = TRUE)] -df$item_text -df = data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df -df$item_text -df[grep("car", df[,1], value = TRUE)] -df[,1] -str(df) -df$item_text <- as.character(df$item_text) -df$item_text -df$item_text -df[grep("car", df$item_text , value = TRUE)] -df[grep("car", df$item_text, value = TRUE),] -df = as.data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df = as.data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df = data.frame(item_text=c("car1","car2","carry","carry1"),id=seq(1,4)) -df -df[grep("car", df["item_text"], value = TRUE),] -df[grep("car", df["item_text"], value = TRUE)] -df[,grep("car", df["item_text"], value = TRUE)] -df = data.frame(item_text = c("car", "a car", "my carry", "carry a car", "something")) -subset(df, subset = grepl("car", df$item_text) & !grepl("carry", df$item_text)) -subset(df, subset = grepl("car", df$item_text) & !grepl("carry", df$item_text)) -df = data.frame(item_text = c("car", "a car", "my carry", "carry a car", "something")) -subset(df, subset = grepl("car", df$item_text) & !grepl("carry", df$item_text)) -grepl("car", df$item_text) & !grepl("carry", df$item_text) -df[grep("car", df$item_text) & !grep("carry", df$item_text),] -subatring %in% string -subatring <- c("phone","phones","telephonesss") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -subatring %in% string -subatring[subatring %like% string] -subatring[subatring %in% string] -str_subset(subatring, string) -library(stringr) -str_subset(subatring, string) -subatring -string -str_detect(subatring, string) -stri_detect_fixed(subatring, string) -library(stringi) -stri_detect_fixed(subatring, string) -subatring -stri_detect_fixed(string,subatring) -string -if(stri_detect_fixed(string, subatring), 1, 0 -ifelse(stri_detect_fixed(string, subatring), 1, 0) -ifelse(stri_detect_fixed(string, subatring), TRUE, FALSE) -df <- data.frame(subatring,string) -df <- data.frame(subatring,string) -ifelse(stri_detect_fixed(df$string, df$subatring), TRUE, FALSE) -stri_detect_fixed(df$string, df$subatring) -df$string -df$subatring -df -ifelse(stri_detect_fixed(df$string, df$subatring), TRUE, FALSE) -stri_detect_fixed(df$string, df$subatring) -df$match <- ifelse(stri_detect_fixed(df$string, df$subatring), TRUE, FALSE) -df -stri_detect_fixed(df$string, df$substring) -subatring <- c("phone", "phones", "telephonesss") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -df <- data.frame(subatring,string) -stri_detect_fixed(df$string, df$substring) -stri_detect_fixed( df$substring, df$string) -subatring <- c("phone", "phones", "telephonesss") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -stri_detect_fixed(df$substring, df$string) -stri_detect_fixed(df$string, df$subatring) -df$t <- (df$string, df$subatring) -df$t <- stri_detect_fixed(df$string, df$subatring) -df -stri_detect_fixed(df$string, df$subatring) -subatring <- c("phone", "phones", "telephonesss","my new phone","this is my new mobile phone") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone") -df <- data.frame(subatring,string) -subatring <- c("phone", "phones", "telephonesss","my new phone") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone","this is my new mobile phone") -df <- data.frame(subatring,string) -stri_detect_fixed(df$string, df$subatring) -str_detect(df$substring, df$string) -ifelse(str_detect(df$string, df$subatring), TRUE, FALSE) -df -df[] <- lapply(df, as.character) -stri_detect_fixed(df$string, df$subatring) -df$t <- -str_detect(df$string, df$subatring) -str_detect(df$string, df$subatring) -stri_extract_all_words(df$string, df$subatring) -string[string %in% subatring)] -string[string %in% subatring] -string -ifelse (string %in% subatring, "*match*", B) -ifelse (string %in% subatring, "*match*", 1) -string -subatring -ifelse (subatring %in% string, "*match*", 1) -intersect(subatring, string) -setdiff(subatring, string) -subatring -string -match(subatring, string) -regmatches(df, gregexpr(string, subatring)) -regmatches(df, gregexpr(string, subatring),invert=TRUE) -regmatches(string, subatring) -str_extract(df$string, df$subatring) -str_extract(df$string, df$subatring,simplify = FALSE) -str_locate(df$string, df$subatring) -str_match_all(df$string, df$subatring) -agrep(df$string, df$subatring) -charmatch(df$string, df$subatring) -library(stringdist) -install.packages("stringdist ") -install.packages("stringdist") -library(stringdist) -ain(df$string, df$subatring) -df$string -ain(df$string, df$subatring, maxDist=10) -amatch(df$string, df$subatring) -ifelse(df$string==df$subatring,1,0) -subatring <- c("phone", "phones", "telephonesss","my new phone") -string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone","this is my new mobile phone") -df <- data.frame(subatring,string) -df[] <- lapply(df, as.character) -ifelse(df$string==df$subatring,1,0) -mapply(function(i, j) length(grep(i, j)), df$string, df$subatring) -df$string -mapply(grepl, pattern= df$string, x=df$subatring) -df$string -mapply(grepl, pattern= df$subatring, x=df$string) -library(data.table) -DT[, df := grepl(string, subatring), by = subatring] -library(data.table) -DT <- data.table(df) -DT[, := grepl(string, subatring), by = subatring] -DT[, grepl(string, subatring), by = subatring] -DT[, grepl(subatring, string), by = subatring] -DT[, grepl(subatring, string), by = string] -DT[, grepl(subatring, string), by = subatring] -which(df$string == df$subatring) -which(df$subatring == df$string) -mapply(grepl, paste0('\\b', df$string, '\\b'), df$subatring) -mapply(grepl, paste0('\\b', df$subatring, '\\b'), df$string) -mapply(grepl, paste0('\\W', df$subatring, '\\b'), df$string) -mapply(grepl, paste0('\\w', df$subatring, '\\b'), df$string) -a <- "I’m" -gsub("’","'",a) -Encoding(a) -2+4+4+4+3+4+4+4 -library("igraph") -from <- c(1,2,3,3,6,6,8,9) -to <- c(2,3,4,5,7,8,6,10) -edges = data.frame(from,to) -g<- graph_from_data_frame(edges,directed=FALSE) -plot(g) -clc <- max_cliques(g, min=3) -clc -g2 <- graph.full(length(clc)) -g2 -V(g2)$name <- V(g)$name[clc] -max_cliques(g) -cliques(g, min=3) -clique.number(clc) -clique.number(g) -cliques(g, min=2) -clique.number(g) -g -clusters(g) -clc <- cliques(g, min=3) -clc -cliques(g) -cl <- clusters(g) -me <- which(cl$csize >= 3) -res <- split(names(cl$membership), cl$membership)[me] -res -setwd("C:/MIHA DELO/EVALVACIJE UL SPLOŠNA IN DOKTORSKA POROČILA/Evalvacija splošna poročila 2016-2017/koda3_posiljanje") -library(knitr) -# Delovna mapa mora biti tista, kjer sta obe .r skripti -# nastavimo mapo, kjer bodo ustvarjene pomozne datoteke, potrebne -# za pretvorbo iz v latex in nato v pdf. -# Kodo pretvorimo v pdf. -# Dolocimo ID-je in imenaTabel -IDs <- c(3000043, 3000044, 3000042, 3000071, 3000025, -3000021, 3000018, 3000031, 3000026, 3000030, -3000027, 3000009, 3000023, 3000006, 3000022, -3000041, 3000029, 3000001, 3000020, -3000050, 3000037, 3000011) -for (zaporednaBaza in 1:length(IDs)){ -owd = setwd('temp') -#imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/bazaFF2014.csv"), -# paste0(owd, "/zacasnaMapa_baz/bazaBF2016.csv"), -# paste0(owd, "/zacasnaMapa_baz/bazaFGG2016.csv"), -# paste0(owd, "/zacasnaMapa_baz/anketa122-2016-04-13.csv")) -imenaTabel = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") -ID <- IDs[zaporednaBaza] -imenaTabel <- paste0(owd, "/zacasnaMapa_baz/", imenaTabel[zaporednaBaza]) -knit2pdf('../splosnaPorocilo.Rnw', encoding = 'UTF-8') -# Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID -novaMapa <- paste0("../rezultati/", ID, "/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna",".pdf") -file.copy("splosnaPorocilo.pdf", novaMapa, overwrite =T) -# Testi: -novaMapa <- paste0("../rezultati/vsaPorocila/", fakulteta, "_", -format(Sys.time(), "%Y"), "_splosna",".pdf") -file.copy("splosnaPorocilo.pdf", novaMapa, overwrite =T) -# Delovno pot spremenimo v prvotno. -setwd(owd) -# Pobrisemo elemente iz 'environment-a' -# Ne za zadnjo porocilo, da lahko testiramo spremenljivke -if (zaporednaBaza != length(IDs)){ -#remove(list = ls()) -} -} -warnings() diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/cmunrm.ttf b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/cmunrm.ttf deleted file mode 100644 index 1c3fff0a6..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/cmunrm.ttf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/koda2pdf.R b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/koda2pdf.R deleted file mode 100644 index 4467b7f6f..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/koda2pdf.R +++ /dev/null @@ -1,44 +0,0 @@ -library(knitr) -# Delovna mapa mora biti tista, kjer sta obe .r skripti -# nastavimo mapo, kjer bodo ustvarjene pomozne datoteke, potrebne -# za pretvorbo iz v latex in nato v pdf. - -# Kodo pretvorimo v pdf. -# Dolocimo ID-je in imenaTabel -IDs <- c(3000043, 3000044, 3000042, 3000071, 3000025, - 3000021, 3000018, 3000031, 3000026, 3000030, - 3000027, 3000009, 3000023, 3000006, 3000022, - 3000041, 3000029, 3000001, 3000020, - 3000050, 3000037, 3000011) - -for (zaporednaBaza in 1:length(IDs)){ - owd = setwd('temp') - - #imenaTabel <- c(paste0(owd, "/zacasnaMapa_baz/bazaFF2014.csv"), - # paste0(owd, "/zacasnaMapa_baz/bazaBF2016.csv"), - # paste0(owd, "/zacasnaMapa_baz/bazaFGG2016.csv"), - # paste0(owd, "/zacasnaMapa_baz/anketa122-2016-04-13.csv")) - imenaTabel = list.files(paste0(owd,"/zacasnaMapa_baz/"), pattern="*.csv") - ID <- IDs[zaporednaBaza] - imenaTabel <- paste0(owd, "/zacasnaMapa_baz/", imenaTabel[zaporednaBaza]) - - knit2pdf('../splosnaPorocilo.Rnw', encoding = 'UTF-8') - # Porocilo iz mape 'temp' prekopiramo v mapo /rezultati/ID - novaMapa <- paste0("../rezultati/", ID, "/", fakulteta, "_", - format(Sys.time(), "%Y"), "_splosna",".pdf") - file.copy("splosnaPorocilo.pdf", novaMapa, overwrite =T) - # Testi: - novaMapa <- paste0("../rezultati/vsaPorocila/", fakulteta, "_", - format(Sys.time(), "%Y"), "_splosna",".pdf") - file.copy("splosnaPorocilo.pdf", novaMapa, overwrite =T) - # Delovno pot spremenimo v prvotno. - setwd(owd) - # Pobrisemo elemente iz 'environment-a' - # Ne za zadnjo porocilo, da lahko testiramo spremenljivke - if (zaporednaBaza != length(IDs)){ - #remove(list = ls()) - } - -} - - diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_AG.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_AG.png deleted file mode 100644 index 08167f2a1..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_AG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_AGRFT.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_AGRFT.png deleted file mode 100644 index 0ce636ac9..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_AGRFT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_ALU.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_ALU.png deleted file mode 100644 index ebc2a3376..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_ALU.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_BF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_BF.png deleted file mode 100644 index 18b8aa1a2..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_BF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_EF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_EF.png deleted file mode 100644 index 93a99535b..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_EF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FA.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FA.png deleted file mode 100644 index a1556aa8f..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FA.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FDV.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FDV.png deleted file mode 100644 index cd760790d..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FDV.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FE.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FE.png deleted file mode 100644 index 2004f96c0..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FE.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FF.png deleted file mode 100644 index 9a7853e20..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FFA.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FFA.png deleted file mode 100644 index e3a1ec3f8..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FFA.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FGG.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FGG.png deleted file mode 100644 index 89ea50719..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FGG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FKKT.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FKKT.png deleted file mode 100644 index e32a5e6b9..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FKKT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FMF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FMF.png deleted file mode 100644 index fbe338733..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FMF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FPP.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FPP.png deleted file mode 100644 index 798ad486b..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FPP.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FRI.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FRI.png deleted file mode 100644 index 541a49607..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FRI.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FS.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FS.png deleted file mode 100644 index 142f68468..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FS.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FSD.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FSD.png deleted file mode 100644 index 7a77dff35..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FSD.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FSTR.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FSTR.png deleted file mode 100644 index e8e27fed1..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FSTR.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FU.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FU.png deleted file mode 100644 index 3f29baf8b..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_FU.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_MF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_MF.png deleted file mode 100644 index 0c6d4de60..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_MF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_NTF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_NTF.png deleted file mode 100644 index c7122d172..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_NTF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_PEF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_PEF.png deleted file mode 100644 index ef610a1b0..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_PEF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_PF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_PF.png deleted file mode 100644 index 2a394a128..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_PF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_TEOF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_TEOF.png deleted file mode 100644 index 05eb09138..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_TEOF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_VF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_VF.png deleted file mode 100644 index a08aced59..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_VF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_ZF.png b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_ZF.png deleted file mode 100644 index cc781bc7a..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/logo/logo_ZF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/sloven2e.sty b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/sloven2e.sty deleted file mode 100644 index a25f70321..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/sloven2e.sty +++ /dev/null @@ -1,42 +0,0 @@ -% -% slovene.sty - prilagoditev zvrsti ARTICLE, BOOK in REPORT slovenscini -% -\@ifundefined{slovensko}{\def\slovensko{}}{\endinput} -\typeout{Document Style Option 'Sloven2e' ver 0.1. / 11-Nov-95 / V.B.} - -% naslovi - -\def\abstractname{Povzetek} -\def\appendixname{Dodatek} -\def\bibname{Literatura} -\def\ccname{cc} -\def\chaptername{Poglavje} -\def\contentsname{Kazalo} -\def\enclname{Priloge} -\def\figurename{Slika\ } -\def\headpagename{Stran} -\def\headtoname{Komu} -\def\indexname{Stvarno kazalo} -\def\listfigurename{Slike} -\def\listtablename{Tabele} -\def\partname{Del} -\def\prefacename{Predgovor} -\def\seename{glej} -\def\alsoseename{glej tudi} -\def\refname{Viri} -\def\tablename{Tabela\ } - -% tekoci datum - -\def\today{\number\day. \ifcase\month\or - januar\or februar\or marec\or april\or maj\or junij\or - julij\or avgust\or september\or oktober\or november\or december\fi - \space\number\year} - - -% slovenski narekovaji - -\def\lqlq{\leavevmode\hbox{,\kern-.1em,}} -\def\rqrq{\leavevmode\hbox{`\kern-.1em`}} - -\endinput diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/splosnaPorocilo.Rnw b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/splosnaPorocilo.Rnw deleted file mode 100644 index 9174f5337..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/splosnaPorocilo.Rnw +++ /dev/null @@ -1,5277 +0,0 @@ -\documentclass[11pt,a4paper]{report} -\newcommand*\rot{\rotatebox{90}} -%\zmanjša robove dokumenta -\usepackage[cm]{fullpage} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -% za oznacevanje elementov v tabeli (odprti odg) kot seznam -\newcommand{\tabitem}{~~\llap{\textbullet}~~} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%Tikz -\usepackage{preview} -\usepackage{pgf} -%slovenski napisi -\usepackage{../sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -% Pomembno, da pravilno zlomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage{hyperref} -%\usepackage[breaklinks=true]{hyperref} -% Times font -\usepackage{times} -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} - -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Nejasno: kje so apostrofi? -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -%\Spremeni barvo, napis, slog napisa tabele -%\definecolor{poglavja}{HTML}{5D92CD} -%\usepackage[font={color=ocre},figurename=Fig.,labelfont={bf}]{caption} -%\usepackage[font={color=ocre,bf}]{caption} - -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri sekcijah -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -%\author{} -%\logotip univerze -\usepackage{graphicx} -\graphicspath{ {../logo/} } -%\ za custom glavo / nogo -%\usepackage{fancyhdr} -%\pagestyle{fancy} -%\fancyhf{} -% izbrise crto pod headerjem -%\renewcommand{\headrulewidth}{0pt} -%\lfoot{Metodologija je zajeta s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/}} -%\ dev.off(), ce se v porocilu pojavljajo dodatni grafi -<>= -############## -# Uvoz pomoznih tabel -# Stolpci: -# kratkoIme dolgoIme tip id sklop kljucnaBeseda barplot sklopBeseda -########## -pomoznaT <- read.csv2("pomozne_tabele/pomoznaT_dodatni.csv", stringsAsFactors = FALSE) -# Izlocimo podatke samo za odgovore zaprtega tipa -vprZ1 <- subset(pomoznaT, pomoznaT$tip==0) -# Izlocimo "osnovna vprasanja" -vprZ <- vprZ1[c(1:27),] -dodatniSklop <- 0 - -# Dodatni sklop pripisemo v spodnji kodi -# Zaenkrat imata dodatni sklop FDV in FGG. -# ID <- 3000021 - -fakulteta <- "" -ime.fakultete <- "" - -if (ID == 3000001) { # here - fakulteta <- "PEF" - fakulteta1 <- "Prakse PEF" - ime.fakultete <- "Pedagoška fakulteta" - logo <- "logo_PEF" -} else if (ID == 3000004){ - fakulteta <- "FU" - fakulteta1 <- "Prakse FU" - ime.fakultete <- "Fakulteta za upravo" - logo <- "logo_FU" -} else if (ID == 3000006){ - fakulteta <- "FSD" - fakulteta1 <- "Prakse FSD" - ime.fakultete <- "Fakulteta za socialno delo" - logo <- "logo_FSD" -} else if (ID == 3000009){ - fakulteta <- "FPP" - fakulteta1 <- "Prakse FPP" - ime.fakultete <- "Fakulteta za pomorstvo in promet" - logo <- "logo_FPP" -} else if (ID == 3000011){ - fakulteta <- "ZF" - fakulteta1 <- "Prakse ZF" - ime.fakultete <- "Zdravstvena fakulteta" - logo <- "logo_ZF" -} else if (ID == 3000018){ - fakulteta <- "FF" - fakulteta1 <- "Prakse FF" - ime.fakultete <- "Filozofska fakulteta" - logo <- "logo_FF" -} else if (ID == 3000019){ - fakulteta <- "EF" - fakulteta1 <- "Prakse EF" - ime.fakultete <- "Ekonomska fakulteta" - logo <- "logo_EF" -} else if (ID == 3000020){ - fakulteta <- "PF" - fakulteta1 <- "Prakse PF" - ime.fakultete <-"Pravna fakulteta" - logo <- "logo_PF" -} else if (ID == 3000021){ - fakulteta <- "FDV" - fakulteta1 <- "Prakse FDV" - ime.fakultete <- "Fakulteta za družbene vede" - logo <- "logo_FDV" - # Izberemo vprasanja iz dodatnega sklopa - vprZ <- vprZ1[c(1:27, 28:30), ] - # Preveri: Vklopimo izracune za dodatni sklop - dodatniSklop <- 1 - dodatniSklop_napis <- "Zadovoljstvo s študijskim programom" - napisi_dodatniSklop_priloga <- c("Vsebina\\\\programa", - "Predavatelji", "Pridobljene\\\\kompetence") -} else if (ID == 3000022){ - fakulteta <- "FSP" - fakulteta1 <- "Prakse FSP" - ime.fakultete <- "Fakulteta za šport" - logo <- "logo_FS" -} else if (ID == 3000023){ - fakulteta <- "FSTR" - fakulteta1 <- "Prakse FSTR" - ime.fakultete <- "Fakulteta za strojništvo" - logo <- "logo_FSTR" -} else if (ID == 3000025){ - fakulteta <- "FA" - fakulteta1 <- "Prakse FA" - ime.fakultete <- "Fakulteta za arhitekturo" - logo <- "logo_FA" -} else if (ID == 3000026){ - fakulteta <- "FGG" - fakulteta1 <- "Prakse FGG" - ime.fakultete <- "Fakulteta za gradbeništvo in geodezijo" - logo <- "logo_FGG" - dodatniSklop <- 1 - dodatniSklop_napis <- "Zadovoljstvo s tutorjem pedagogom" - napisi_dodatniSklop_priloga <- c("Koristnost\\\\tut. pedag.", - "Pomoč tut.\\\\pedagoga", "Pomembnost\\\\pomoči tut.") - vprZ <- vprZ1[c(1:27,31:33),] -} else if (ID == 3000027){ - fakulteta <- "FMF" - fakulteta1 <- "Prakse FMF" - ime.fakultete <- "Fakulteta za matematiko in fiziko" - logo <- "logo_FMF" -} else if (ID == 3000029){ - fakulteta <- "NTF" - fakulteta1 <- "Prakse NTF" - ime.fakultete <- "Naravoslovnotehniška fakulteta" - logo <- "logo_NTF" -} else if (ID == 3000030){ - fakulteta <- "FKKT" - fakulteta1 <- "Prakse FKKT" - ime.fakultete <- "Fakulteta za kemijo in kemijsko tehnologijo" - logo <- "logo_FKKT" -} else if (ID == 3000031){ - fakulteta <- "FFA" - fakulteta1 <- "Prakse FFA" - ime.fakultete <- "Fakulteta za farmacijo" - logo <- "logo_FFA" -} else if (ID == 3000037){ - fakulteta <- "VF" - fakulteta1 <- "Prakse VF" - ime.fakultete <- "Veterinarska fakulteta" - logo <- "logo_VF" -} else if (ID == 3000041){ - fakulteta <- "MF" - fakulteta1 <- "Prakse MF" - ime.fakultete <- "Medicinska fakulteta" - logo <- "logo_MF" -} else if (ID == 3000042){ - fakulteta <- "ALUO" - fakulteta1 <- "Prakse ALUO" - ime.fakultete <- "Akademija za likovno umetnost in oblikovanje" - logo <- "logo_ALU" -} else if (ID == 3000043){ - fakulteta <- "AG" - fakulteta1 <- "Prakse AG" - ime.fakultete <- "Akademija za glasbo" - logo <- "logo_AG" -} else if (ID == 3000044){ - fakulteta <- "AGRFT" - fakulteta1 <- "Prakse AGRFT" - ime.fakultete <- "Akademija za gledališče, radio, film in televizijo" - logo <- "logo_AGRFT" -} else if (ID == 3000050){ - fakulteta <- "TEOF" - fakulteta1 <- "Prakse TEOF" - ime.fakultete <- "Teološka fakulteta" - logo <- "logo_TEOF" -} else if (ID == 3000063){ - fakulteta <- "FRI" - fakulteta1 <- "Prakse FRI" - ime.fakultete <- "Fakulteta za računalništvo in informatiko" - logo <- "logo_FRI" -} else if (ID == 3000064){ - fakulteta <- "FE" - fakulteta1 <- "Prakse FE" - ime.fakultete <- "Fakulteta za elektrotehniko" - logo <- "logo_FE" -} else if (ID == 3000071){ - fakulteta <- "BF" - fakulteta1 <- "Prakse BF" - ime.fakultete <- "Biotehniška fakulteta" - logo <- "logo_BF" -} else { - fakulteta <- "" - fakulteta1 <- "" - ime.fakultete <- "" - -} -# ce je utf z malo ne dela -# FDV ima drugacno obliko baze -if (ID == 3000021){ -podatki <- lapply(imenaTabel, function(x){ - read.csv2(x, stringsAsFactors = FALSE) -}) -}else{ -podatki <- lapply(imenaTabel, function(x){ - read.csv2(x, stringsAsFactors = FALSE) -}) - -} - - -# Podatkom odstranimo "=" (Pride v poštev, če je baza 'napačno' izvožena) -for (i in 1:length(podatki)){ - podatki[[i]] <- as.data.frame(lapply(podatki[[i]], - function(y) gsub("=", "", y)), - stringsAsFactors = F) - -# izbrisemo prvo vrstico, ki so imena stolpcev -podatki[[i]] <- podatki[[i]][-c(1),] - -podatki[[i]] <- subset(podatki[[i]], podatki[[i]]$idprog != "-2") - -if(podatki[[i]]$Q1[1] == "Jezik"){ - podatki[[i]] <- podatki[[i]][-c(1),] - -} - -} - - -# Prestejemo enote z neveljavnimi letniki -neveljavni_letnik_n <- length(podatki[[1]]$letnik[podatki[[1]]$letnik < 1]) -# Izkljucimo enote z neveljavnimi letniki -podatki[[1]] <- subset(podatki[[1]], podatki[[1]]$letnik > 0) -@ - - -<>= -# Preveri: ali uporabljas vse? Tudi drugace opisi za katere funkcije je kaj ključno. -library(knitr) -library(ggplot2) -library(Cairo) -library(scales) -library(dplyr) -library(XML) -library(RCurl) -library(xtable) -library(Hmisc) -library(showtext) -library(stringi) - -# in this document we mainly use results='asis', so set it globally -opts_chunk$set(results='asis', - warning=F, - message = F) - -#pdf.options(encoding="CP1253") -# Nastavi v razlicici za streznik -muffleError <- function(x,options) {} -knit_hooks$set(error=muffleError) -@ - -<>= -# Tu izracunamo veljavne enote, veljavne odgovore in letnico -# Uvoz tabele studijski programi - ce je tu kodiranje UTF-8, so v -# napisih znaki npr.: " -studijskiProgramiT <- read.csv2("pomozne_tabele/studijskiProgrami.csv", - stringsAsFactors = FALSE) - - -######################## -#Filter veljavnih podatkov -# Q2a ali Q3a != "1" -######################## -veljavneEnote <- vector('list', length(podatki)) -veljavniOdg <- vector('list', length(podatki)) -veljavniSklopi <- vector('list', length(podatki)) - -napisiST <- list("\\textbf{Dejavnik}") - -#veljavneEnote[[1]] <- subset(podatki, podatki$Q2a != 1) -i <- 1 -if("Q3a" %in% colnames(podatki[[i]])){ - # Podatke filtriramo glede na filter spremenljivko - veljavneEnote[[i]] <- subset(podatki[[i]], #(podatki[[i]]["status"] == 5 & - #podatki[[i]]["lurker"] == 0) | - - (podatki[[i]]["status"] == 6 & - podatki[[i]]["lurker"] == 0)) - - # St veljavnih enot, ki imajo idprog enak -2 - #stBrezPrograma <- length(podatki[[i]]["idprog"][podatki[[i]]["Q3a"] != 1 & podatki[[i]]["idprog"]== -2]) - - veljavniOdg[[i]] <- sapply(vprZ$kratkoIme, function(x){ - lapply(veljavneEnote[[i]][x], function(y) { - as.numeric(na.omit(y)) - }) - }) - - # Veljavni odgovori so samo tisti z vrednostjo vecjo od ena - names(veljavniOdg[[i]]) <- vprZ$kratkoIme - veljavniOdg[[i]] <- sapply(veljavniOdg[[i]], function(x){ - subset(x, x>0)}) - } - - # Napisi stolpcev - # Ce je anketo nekdo izpolnil od oktobra (vkljucno) do decembra potem letnici pristejemo - # Eno leto - - leto <- as.numeric(substr(veljavneEnote[[i]]$itime, nchar(veljavneEnote[[i]]$itime)-3, nchar(veljavneEnote[[i]]$itime))[1]) - - - # Dolocimo napise za trende - # Dodatno avtomatiziraj - # Iz zanke, ki bo prebrala prejsnjeIzracune - if (dodatniSklop == 1){ - #napisiST <- append(napisiST, paste0((leto[[i]])-2,"/",leto[[i]]-1)) - napisiST <- append(napisiST, paste0((leto[[i]]),"/",leto[[i]]+1)) - - }else{ - napisiST <- append(napisiST, paste0((leto[[i]]),"/",leto[[i]]+1)) - - } - #Npr. 2015/16 - celaLetnica <- "2016/2017" - #Npr. 2015/2016 - celaLetnica_dolga <- "2016/2017" - -@ -%\title{Zadovoljstvo študentov \Sexpr{fakulteta} s študijem \Sexpr{celaLetnica}} -%\title{{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2cm] EVALVACIJSKO POROČILO ZA PROGRAME I IN II STOPNJE \\[0.2cm]}}} \textup{\LARGE \textbf{\Sexpr{ime.fakultete}} \\[0.2in] {\color{red} \textbf{Splošni vidiki študijskega procesa}}} \\[0.5in] {\normalsize Študijsko leto \Sexpr{celaLetnica} \\[0.5in] Pripombe, komentarje, vprašanja sporočite na \\ \url{http://1ka.si/set} }} -\usepackage{fancyhdr} -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{\Sexpr{ime.fakultete}}}% \hfill {{\nouppercase{\leftmark}}}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} -\setcounter{tocdepth}{1} - -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{\Sexpr{logo}} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2cm] EVALVACIJSKO POROČILO ZA PROGRAME I IN II STOPNJE \\[0.3in]}}} -\textup{\LARGE \textbf{\Sexpr{ime.fakultete}} \\[0.3in] {\color{red} \textbf{Splošni vidiki študijskega procesa}}} \\[0.5in] -{\large Študijsko leto \Sexpr{celaLetnica_dolga} \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - -<>= - round2 = function(x, digits) { - posneg = sign(x) - z = abs(x)*10^digits - z = z + 0.5 - z = trunc(z) - z = z/10^digits - z*posneg -} -formatC2 <- function(x, digits, format){ - formatC(round2(x, digits), digits=digits, format=format) -} - - -# V tem chunku tudi funkciji trendiGraf in ggPie -######### -## Izracuni -## Za tabele v sklopu 2 -## -## -######### -odgMean <- vector('list', length(veljavniOdg)) -stEnot <- vector('list', length(veljavniOdg)) - -# Izracun povprecij in stevilo enot -# Dolocitev imen stolpcev - -for (i in(1: length(veljavniOdg))){ - odgMean[[i]] <- lapply(veljavniOdg[[i]], mean) - stEnot[[i]] <- lengths(veljavniOdg[[i]]) - names(odgMean[[i]]) <- vprZ$kratkoIme -} - - -### -### -### Izracuni za grafe -graf_p <- vector('list', length(odgMean)) - -# Tu zdruzi stare podatke z novimi -# V primeru FF starih ni torej, damo to v pogoj -# Pregleda mapo 'prejsnjiIzracuni' -# Izpise seznam prejsnjihIzracunov: zaenkrat samo pri FDV in FF -# Nato zdruzi prejsnje izracune z zdajsnjimi in jih izpise v grafu (trendi) -# Pripravi se zapisovanje zdajsnjih v isti obliki. (ce se ne obstajajo) -# Izracuna jih iz koncneBaze tega leta, ki naj bi jo streznik -# ob koncani anketi = potecen cas resevanja -# poslal v pripadajoco mapo npr. splosna/podatki/3000021/koncneBaze - -# Risanje trendov je izklopljeno, dokler ne obstajajo, podatki za vsaj eno prejsnje leto -# prejsnjih let -# mainDir <- getwd() -# Ce je pri spremenljivki letosnjiIzracuni vrednost 0, potem to pomeni, da letosnjih -# izracunov se ni v tabeli 'prejsnjiIzracuni' in jih ob pogoju, da ze imamo koncno letosnjo -# bazo, izracunamo - -letosnjiIzracuni <- 0 -# letosnjiTrendi <- cbind(as.numeric(formatC2(unlist(odgMean[[1]]), digits = 2, format = 'f')), leto) -risanjeTrendov <- 0 - -# Preverimo ali obstaja mapa s prejsnjimiIzracuni za izbrano fakulteto -# Ce obstaja preverimo ali vsebuje 'prejsnjeIzracune' : drugace jo ustvarimo -# Ce obstajajo jih preberemo in vklopimo risanje trendov -# V nasprotnem primeru imamo le letosnje podatke in trendov ne risemo - -if(dir.exists(paste0("podatki/", ID, "/prejsnjiIzracuni"))){ - -# poiscemo vse .csv datoteke v mapi podatki/'idFakultete'/prejsnjiIzracuni -prejsnjiIzracuni = list.files(paste0(getwd(),"/podatki/", ID, "/prejsnjiIzracuni/"), pattern="*.csv") - -# ce datoteka obstaja jo nalozi in vklopi risanje trendov -# in izklopi zapis letosnjih izracunov - -if (file.exists(paste0("podatki/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni))){ -izracuni <- read.table(paste0("podatki/",ID, "/prejsnjiIzracuni/", prejsnjiIzracuni), stringsAsFactors = F, sep =',') - -# Ce so v prejsnjih izracunih tudi letosnji trendi, jih ne zapisemo -# se enkrat (letosnjiIzracuni <- 1) -if (leto %in% izracuni$V2){letosnjiIzracuni <- 1} -else{letosnjiIzracuni <- 0} - -if (length(unique(izracuni$V2)) <= 1){ - risanjeTrendov <- 0 -}else{risanjeTrendov <- 1} -}else{letosnjiIzracuni <- 0} -# Recursive poskrbi, da ustvari obe mapi: tisto z ID-jem fakultete in znotraj te -# se mapo 'prejsnjiIzracuni' -}else{dir.create(paste0("podatki/", ID, "/prejsnjiIzracuni"), recursive =T)} - -# To spremeni v list -# Zapisovanje letosnjih povprecij -# povp, leto -# Preverimo ali je v mapi 'koncneBaze' ze letosnja koncana anketa -# To preverimo tako, da pogledamo ce je v tej mapi ze baza, ki ima v imenu letosnjo letnico - -# ce letosnjih Izracunov se ni, jih ob pogoju, da ze imamo koncno bazo zapisemo - -if (letosnjiIzracuni == 0){ -if(dir.exists(paste0("podatki/", ID, "/koncneBaze"))){ - -koncneBaze = list.files(paste0(getwd(),"/podatki/", ID, "/koncneBaze/"), pattern="*.csv") -# Nalozimo le tisto bazo, ki ima v imenu letnico, ki ustreza, letnici, ki smo jo -# pridobili iz spremenljivke 'itime', v bazi, ki vstopa v to kodo (iz streznika) -imeLetosnjeBaze <- koncneBaze[grepl(leto, koncneBaze)] - -if (length(imeLetosnjeBaze) != 0){ - # Ali obstaja baza z letosnjimi izracuni? - # = Ali so podatki letosnje (koncane) ankete ze v mapi? - # Ce obstaja letosnje izracune trendov appendaj v tabelo in jim pripisi letnico - if (file.exists(paste0("podatki/", ID, "/koncneBaze/", imeLetosnjeBaze))){ - write.table(letosnjiTrendi, - file = paste0("podatki/", ID, - "/prejsnjiIzracuni/prejsnjiIzracuni.csv"), - append=T, - row.names = F, - col.names = F, - sep = ',') - -} -} -} -} - -# Testiranje: -# Tu zdruzimo prejsnje izracune (povprecja) z zdajsnjimi -# Samo za testiranje trendov do 2020 -# risanjeTrendov <- 1 - -if (risanjeTrendov != 0 & leto %in% izracuni[,2]){ - izracuniTrendov <- izracuni - izracuniTrendov <- arrange(izracuniTrendov, V2) - - }else if(risanjeTrendov != 0 & !(leto %in% izracuni[,2])){ - izracuniTrendov <- rbind(izracuni, - unname(cbind(unlist(odgMean[[1]]), leto))) - izracuniTrendov <- arrange(izracuniTrendov, V2) - -}else{ - izracuniTrendov <- cbind(unlist(odgMean[[1]]), leto) -} - -# Testiranje: -#podatkiStari <- 0 -#if ("Q6a" %in% names(odgMean[[i]]) & podatkiStari != 0){ -# izracuniTrendov <- rbind(cbind(unlist(odgMean[[1]]), leto-1), cbind(unlist#(odgMean[[2]]), leto)) -#}else{ -# izracuniTrendov <- cbind(unlist(odgMean[[1]]), leto-1) -#} - - -# Dejavnikom pripisemo sklope (za kasnejse klicanje pri izrisu trendov) -sklopi_dff <- c(1,1,1,2,2,2,2,3,3,3, - 3,4,4,4,4,4,4,5,5,5,5,5, - 6,6,7,7,8) - -# Za dodatne sklope -if (dodatniSklop == 1){ - sklopi_dff <- c(sklopi_dff, rep(9,3)) -} - -#vprZ$grafBeseda[vprZ$grafBeseda == "Odzivnost in učinkovitost ref." ] <- "Odzivnost in\nučinkovitost ref." - -# Generalizacija -if (dodatniSklop == 1){ - dff <- data.frame(Dejavnik=vprZ$grafBeseda[1:30], - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) -}else{ - dff <- data.frame(Dejavnik=vprZ$grafBeseda[1:27], - leto=izracuniTrendov[,2], - povprecje=izracuniTrendov[,1], - sklop=sklopi_dff) -} - -# napisi za x os (letnice): -# iz podatkov pridobimo vse uniketne letnice -# in jih preoblikujemo v obliko prejsne leto / letosnje leto - -# Preverimo ali obstaja mapa, kamor bomo shranjevali slike (grafe) -# Ce se ne obstaja, jo ustvarimo. -if(!dir.exists(paste0("rezultati/", ID))){ - dir.create(paste0("rezultati/", ID)) -} - -if(!dir.exists(paste0("rezultati/", ID, "/grafi"))){ - dir.create(paste0("rezultati/", ID, "/grafi")) -} - -trendiGraf <- function(x, y, z, izpis=1){ - if(risanjeTrendov != 0 & (min(izracuniTrendov$V2) != max(izracuniTrendov$V2))){ - letnice.uq <- unique(x$leto) - letnice.label <- sapply(letnice.uq, function(x){ - paste0(x,'/',x+1) - }) - - x$leto <- factor(x$leto) - p1 <- ggplot(data = x, aes(x = leto, - y = povprecje, - colour = Dejavnik))+ - scale_x_discrete("Leto", label = letnice.label)+ - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none, - breaks=c(1:5))+ - #scale_color_brewer(palette="Dark2")+ - - geom_line(aes(group = Dejavnik)) + geom_point()+ - - - #scale_x_discrete("Leto", labels=c(napisiST[2:length(napisiST)])) - #oob = rescale_none, pomembno, da je 1 na zaccetku x osi - theme_classic()+ - theme(aspect.ratio=1)+ - # \n zaradi dodatnega odmika napisa od osi - xlab("Leto\n")+ylab("Povprečna vrednost\n")+ - - theme(axis.text= element_text(size=14, family="CM Roman"), - axis.title= element_text(size=14, family='CM Roman'), - legend.text= element_text(size=13, family='CM Roman'), - legend.position ="right", - legend.title=element_blank(), - axis.line.x = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, linetype='solid')) - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/izpisTrendi",stevec,".pdf") - ggsave(p1, filename=ime, units="in", device=cairo_pdf ) - caption <- as.character(y) - -#library("Cairo") -#CairoPNG(ime, width=480, height=480) -#p1 -#dev.off() - - if (izpis==1){ - cat(paste0('\\begin{figure}[!ht] - \\vspace*{-6cm} - \\caption{Trendi - ', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\end{figure} - \\clearpage')) - } - - else if(izpis==2){ - cat(paste0('\\begin{figure}[ht] - \\caption{Trendi - ', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\end{figure} - \\clearpage')) - } - - } # Zapremo pogoj (risanjeTrendov != 0 & (min(izracuniTrendov$V2) != max(izracuniTrendov$V2))) -} - - -ggPie <- function(dat, naslov){ - izpis <- ggplot(dat, aes(x=1, y=V4, fill=V5)) + - #ggtitle(naslov) + - # black border around pie slices - geom_bar(stat="identity", color='black') + - # Na grafu izpisemo odstotke; velikost spremenimo s size = - geom_text(aes(y=(cumsum(c(dat$V4[1], dat$V4[2])) - c(dat$V4[1], dat$V4[2])/2), - label=V6))+ - # remove black diagonal line from legend - guides(fill=guide_legend(override.aes=list(colour=NA))) + - # polar coordinates - # graf spremeni v pie chart - coord_polar(theta='y') + - theme_classic()+ - # label aesthetics - theme( - legend.title=element_blank(), # odstranimo naslov legende - axis.ticks=element_blank(), # the axis ticks - axis.title=element_blank(), # the axis labels - axis.text.y=element_blank(), # the 0.75, 1.00, 1.25 labels - axis.text.x=element_text(color='black')) + - scale_y_continuous( - # Dodamo ce sta samo dva dejavnika dodamo pri izracunu pozicij dodamo 25. - breaks=(cumsum(c(dat$V4[1], dat$V4[2])) - c(dat$V4[1], dat$V4[2])/2), - labels=dat$V5)+ - scale_fill_manual(values=c("#468fd7", "#CD2626")) - - stevec <- dat$kratkoIme.tip4[[1]] - ime <- paste0("rezultati/", ID, "/grafi/piechart_",stevec,".pdf") - ggsave(izpis, filename=ime, device=cairo_pdf, width=5.5, height=4.5) - - caption <- as.character(dat$dolgoIme.tip4[[1]]) - cat(paste0(' - \\begin{figure}[!ht] - \\flushleft \\caption{', caption, '} - \\includegraphics[width=0.7\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} -@ - -<>= -#Pot do delovne mape - -#Uvoz podatkov -#podatki <- read.csv2("podatkiCSV2.csv", stringsAsFactors = FALSE, encoding="utf-8") -#p <- read.csv2("podatki2.csv", stringsAsFactors = FALSE, encoding="utf-8") -#V spremenljivko 'veljavneEnote[[1]]' izloci samo veljavne enote -#veljavneEnote[[1]] <- subset(podatki, podatki$Q2a != 1) -#Iz programov odstrani piko -#veljavneEnote[[1]]$program <- gsub(".ma", "ma", veljavneEnote[[1]]$program) -#podatki <- podatki - -if("Q2a" %in% colnames(podatki)){ - #Napis "magistrski program" zamenja s "bp" - podatki$program <- gsub(".magistrski program", "BP", podatki$program) - #Napis "univerzitetni program" zamenja s "bd" - podatki$program <- gsub("univerzitetni program", "BD", podatki$program) - #Napis "magistrski program" zamenja s "bp" - veljavneEnote[[1]]$program <- gsub(".magistrski program", "BP", - veljavneEnote[[1]]$program) - #Napis "univerzitetni program" zamenja s "bd" - veljavneEnote[[1]]$program <- gsub("univerzitetni program", "BD", - veljavneEnote[[1]]$program) -} - -# -stopnjeUQ <- as.character(unique(studijskiProgramiT$Vrsta)) -stopnjeUQ <- cbind(stopnjeUQ, 1:length(stopnjeUQ)) -stopnjeUQ <- rbind(stopnjeUQ, c("-2", (length(stopnjeUQ)/2)+1)) -st.kratkoIme <- c("Uni", "Uni*", "Vis", "Spec", "Mag*", - "Dr*", "Mag", "Mag1", "Vis", "Dr", "Mag2", "Izp", "-2") -stopnjeUQ <- cbind(stopnjeUQ, st.kratkoIme) - -# Pripisovanje tipov studijskih programov, ki ga uporabimo v tabeli 1. -# Tu unikatnim idprog pripisemo naziv (=Ime programa), vrsto(=npr. Univerzitetni) in -# okrajsavo(=npr. # Uni + pika) -# Ce dolocena enota glede na idprog nima pripisane stopnje" - -idprog_uq2 <- unique(podatki[[1]]$idprog) - -tip_programa <- data.frame(idprog_uq2, stringsAsFactors = F) -tip_programa$naziv <- sapply(tip_programa$idprog_uq2, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Naziv[studijskiProgramiT$ID == x] - }}) -tip_programa$vrsta <- sapply(tip_programa$idprog_uq2, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x] - }}) -# Tu glede na študijsko stopnjo pripišemo kratico in ji dodamo piko. -tip_programa$kratica <- paste0(sapply(tip_programa$vrsta, function(x){ - if (x == -2){ - "-2" - }else{ - stopnjeUQ[,3][x== stopnjeUQ[,1]] -}}), ".") - - #tip_programa$kratica[tip_programa$kratica == "/."] <- "/" - -# df uredimo glede na padajoce ime programov -tip_programa <- arrange(tip_programa, naziv) - -# Iz prve tabele odstranimo enote, ki imajo pri idprog vrednost -2 -# oz. ne prikazujemo programa '-2' -#tip_programa <- subset(tip_programa, tip_programa[,1] != -2) - -# Vrstica skupaj nima tipa programa, torej ji pripisemo "(.)" -# V novejsih razlicicah namesto "(.)", pripisemo "", torej prazno vrednost - -tip_programa2 <- c(tip_programa$kratica, "") -# Napisom iz tabele studijski program priredimo veliko zacetnico -tip_programa2 <- sapply(tip_programa2, function(x){ - x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) -}) - -idprog_uq <- unique(veljavneEnote[[1]]$idprog) - -# Tu izlocimo program (ime), idprog, ki jih bomo pripisali, kot tip programa v tabeli 1 -tip_programa_veljavni <- data.frame(idprog_uq, stringsAsFactors = F) -tip_programa_veljavni$naziv <- sapply(tip_programa_veljavni$idprog_uq, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Naziv[studijskiProgramiT$ID == x] - }}) -tip_programa_veljavni$vrsta <- sapply(tip_programa_veljavni$idprog_uq, function(x){ - if (x == -2){ - "-2" - }else{ - studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x] - }}) -tip_programa_veljavni$kratica <- paste0(sapply(tip_programa_veljavni$vrsta, function(x){ - if (x == -2){ - "-2" - }else{ - stopnjeUQ[,3][x== stopnjeUQ[,1]] -}}), ".") - -#tip_programa_veljavni$kratica[tip_programa_veljavni$kratica == "/."] <- "/" - -tip_programa_veljavni <- arrange(tip_programa_veljavni, naziv) - -# Iz tabel v prilogi odstranimo enote, ki imajo idprog enak -2 -# oz. ne prikazujemo tipov prog, enakih '-2' -# tip_programa_veljavni <- subset(tip_programa_veljavni, tip_programa_veljavni[,1] != -2) - -# V novejsih razlicicah namesto "(.)", pripisemo "", torej prazno vrednost -tip_programa_veljavni2 <- c(tip_programa_veljavni$kratica, "") -# Napisom iz tabele studijski program priredimo veliko zacetnico -tip_programa_veljavni2 <- sapply(tip_programa_veljavni2, function(x){ - x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) -}) - -# Te podatke shrani v vektor, da jih lahko prestejemo / izpisemo v tabeli -# Stevilo veljavnih enot na program -poProgramih_N <- as.numeric() -for (i in 1:length(tip_programa$idprog_uq)){ - poProgramih_N[i] <- as.numeric(length(veljavneEnote[[1]]$Q3a[veljavneEnote[[1]]$idprog == tip_programa$idprog_uq[[i]]])) - } - - -#Vseh enot za tabelo (struktura studijski program) (n) -vsehT1 <- sum(poProgramih_N) - -#Izpišemo število VSEH enot glede na posamezen program -podatki.n <- numeric(length(tip_programa$idprog_uq)) -for (i in 1:length(tip_programa$idprog_uq)){ - podatki.n[i]<-as.numeric( - length(podatki[[1]]$Q3a[podatki[[1]]$idprog == tip_programa$idprog_uq[[i]]])) -} - -odgovori_pct <- formatC2((poProgramih_N/podatki.n)*100, digits = 0, format="f") -odgovori_pct <- c(odgovori_pct, formatC2((sum(poProgramih_N)/sum(podatki.n))*100, digits = 0, format="f")) - -#Izracun stevila tistih, ki niso odgovorili -podatki.r <- podatki.n - poProgramih_N -#Odstotki na eno decimalno mesto natancno (n) - -odstotki <- function(n){ - n<-(n/vsehT1*100) - n<-round2(n, digits=0) - return(n) -} - -vektorProgrami <- numeric(length(tip_programa$idprog_uq)) - -#Z lapply poženemo zgornjo funkcijo cez poProgramih_N, kjer so shranjene dolžine seznama sodelujoci (Q2a==NA) -#in dobimo seznam odstotkov -odstotkiT1 <- lapply(poProgramih_N, odstotki) -podatki.r.pct <- formatC2((podatki.r/podatki.n)*100, digits = 0, format="f") -#Odstotke iz seznama prenesemo v vektor -for (i in (1:length(tip_programa$idprog_uq))){vektorProgrami[i]<-odstotkiT1[[i]]} -# in jim pripisemo izracun 'skupaj' -odstotkiT1 <- c(odstotkiT1, formatC2(sum(unlist(odstotkiT1)), digits=0, format="f")) - -#Dodamo vrstico 'skupaj' -programiV1 <- c(tip_programa$naziv, "Skupaj") -poProgramih_N <- c(poProgramih_N, vsehT1) - -fx <- 0 -# Ce ima vektor pod 10 enot mu dodamo oklepaje -oklepajiVektor_f <- function(x, y=4, z=10){ -x <- as.list(x) - -for (i in (1:length(x))){ - if (x[[i]] < y ){ - x[[i]] <- paste0("((", formatC2(x[[i]], digits=0, format="f"), "))") - }else if (x[[i]] < z ){ - x[[i]] <- paste0("(", formatC2(x[[i]], digits=0, format="f"), ")") - }else{ - x[[i]] <- formatC2(x[[i]], digits=0, format="f") - } - -} -return(unlist(x)) -} - -#poProgramih_N_z_oklepaji <- poProgramih_N -poProgramih_N_z_oklepaji <- oklepajiVektor_f(poProgramih_N) -#poProgramih_N_z_oklepaji <- paste0("(", poProgramih_N[poProgramih_N<10], ")") - -#za 'r%' -podatki.r.pct <- c(podatki.r.pct, formatC2((sum(podatki.r)/sum(podatki.n))*100, - digits = 0, format ="f")) - -#Dodamo vrstico skupaj -odgovorili.n <- sum(podatki.n) -podatki.n <- formatC2(c(podatki.n, sum(podatki.n)), digits=0, format='f') - -#Odebeljeni odstotki; .0 zato, ker drugace izpise brez decimalke -vektorProgrami <- c(vektorProgrami, sum(vektorProgrami)) - -# Odebeljena vsota udelezenih, tistih, ki niso odgovorili -podatki.r <- formatC2(c(podatki.r, sum(podatki.r)), digits=0, format='f') -#Izpis tabele 1 -stolpec100 <- formatC2(rep(100, length(podatki.n)), digits=0, format ='f') -struktura_studijski_program <- data.frame(programiV1, tip_programa2, - podatki.n, stolpec100, poProgramih_N_z_oklepaji, - odgovori_pct, podatki.r, podatki.r.pct) - -colnames(struktura_studijski_program) <- c("", "", "$n_0$", "\\%", "n", "\\%", "r", "\\%") - - -struktura_studijski_program_po_stolpcih <- struktura_studijski_program[-4] -struktura_studijski_program_po_stolpcih[5] <- formatC2(((as.numeric(poProgramih_N) / as.numeric(poProgramih_N[length(poProgramih_N)])) * 100), digits=0, format = 'f') -struktura_studijski_program_po_stolpcih[7] <- formatC2(((as.numeric(podatki.r) / as.numeric(podatki.r[length(podatki.r)])) * 100), digits=0, format = 'f') -colnames(struktura_studijski_program_po_stolpcih) <- c("", "", "$n_0$", "n", "\\%", "r", "\\%") - -#dolocimo kje naj bodo crte -#hlines <- c(-1, 0, nrow(struktura_studijski_program), nrow(struktura_studijski_program)-1) -hlines <- c(nrow(struktura_studijski_program)-1) - - - bold <- function(x) { - paste0('\\bfseries{', x, '}') - } -############ - -@ - -<>= -######### -##TABELA2 -######### - -#Shranimo vrste programov in izlocimo prvi zapis, ki je prazen -#vrstaProg <- unique(na.omit(veljavneEnote[[1]]$prog_r2)) - - -# Pridobimo unikatne id-je programov, za vse enote in za veljavne enote. -idProg <- unique(na.omit(veljavneEnote[[1]]$idprog)) -idProg.Sk <- unique(na.omit(podatki[[1]]$idprog)) - -########### -##########Vkljuci pod pomanjkljivosti -#idProg <- idProg -# Nejasno: Nepomenljiva imena spremenljivk -sifraDolgoIme <- lapply(idProg, function(x){c(x, studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x])}) - -sifraDolgoIme.Sk <- lapply(idProg.Sk, function(x){c(x, - studijskiProgramiT$Vrsta[studijskiProgramiT$ID == x])}) - - -sifraDolgoIme[sifraDolgoIme=="-2"] <- list(c("-2", "-2")) -sifraDolgoIme.Sk[sifraDolgoIme.Sk=="-2"] <- list(c("-2", "-2")) - -qw <- lapply(sifraDolgoIme, function(x){c(x, stopnjeUQ[,2][stopnjeUQ[,1]==x[2]])}) -qw2 <- lapply(sifraDolgoIme.Sk, function(x){c(x, stopnjeUQ[,2][stopnjeUQ[,1]==x[2]])}) - -# Indeks!!!!!!!!!!!! -# Podatkom dodamo id stopnje (za tabele in grafe po sklopih) -er <- veljavneEnote[[1]]$idprog -er2 <- podatki[[1]]$idprog -#er <- er[er!="-2"] -# Ustvarimo vektor, ki ga bomo dodali kot stolpec podatkom - - -# Sezname pretvorimo v matriko -qwM <- do.call(rbind, qw) -qwM.Sk <- do.call(rbind, qw2) - - -err <- lapply(er, function(x){qwM[,3][qwM[,1]==x]}) -err2 <- lapply(er2, function(x){qwM.Sk[,3][qwM.Sk[,1]==x]}) - - - -err <- do.call(rbind, err) -err2 <- do.call(rbind, err2) -######### -######## -#### Indeks!!!!! - -veljavneEnote[[1]]['prog_r2'] <- err -podatki[[1]]['prog_r2'] <- err2 - -# Za izpis v tabeli 2 in grafih zamenjamo unikatne id-sklopov z napisi iz tabele (studijski programi) - -#vrstaProg <- sapply(sort(unique(veljavneEnote[[1]]$prog_r2)), -# function(x){ stopnjeUQ[,1][stopnjeUQ[,2]==x] -#}) - - -vrstaProg <- sapply(sort(unique(podatki[[1]]$prog_r2)), - function(x){ stopnjeUQ[,1][stopnjeUQ[,2]==x] -}) - -# Iz izpisa tabel po idprog, grafov in tabele 2, odstranimo enote, ki -# imajo pri idprog vrednost -2 -#vrstaProg <- vrstaProg[vrstaProg != -2] - -# Napisom iz tabele studijski program priredimo veliko zacetnico -vrstaProg <- sapply(vrstaProg, function(x){ - x <- paste0(toupper(substr(x, 1, 1)), substr(x,2, nchar(x))) -}) - -# 9: pripisemo tistim programom, ki v tabeli studijskiProgramiT nimajo pripisane -# vrste -# Po dogovoru, vsem pripisemo vrsto: visokosolski -if("9" %in% names(vrstaProg)){ - vrstaProg["9"] <- "Visokošolski" -} - -stVrsta <- as.numeric() -stVrsta.vsi <- as.numeric() - -# Prestejemo enote in veljavne enote glede na studijsko stopnjo -for (i in 1:length(vrstaProg)){ - stVrsta[i] <- length(veljavneEnote[[1]]$Q3a[veljavneEnote[[1]]$prog_r2 == names (vrstaProg)[i]]) - - stVrsta.vsi[i] <- length( - podatki[[1]]$Q3a[podatki[[1]]$prog_r2 == names(vrstaProg)[i]]) -} - -# in dodamo sestevek. -stVrsta[(length(stVrsta)+1)] <- sum(stVrsta) -stVrsta.vsi[(length(stVrsta.vsi)+1)] <- sum(stVrsta.vsi) -# Sestevkom veljavnih odgovorov, po vrsti dodamo oklepaje -stVrsta_oklepaji <- oklepajiVektor_f(stVrsta) - -# Izracun vrstice, ki sesteje stevilo tistih, ki so sodelovanje zavrnili -stVrsta.r <- stVrsta.vsi - stVrsta - - -#Vsebina prvega stolpca -if (length(vrstaProg)>1){ - imena <- c(names(vrstaProg), 25) - vrstaProg_T2 <- c(vrstaProg, "Skupaj") - vrstaProg <- c(vrstaProg, "Skupaj") - -}else if(length(vrstaProg)==1){ - # V drugi tabeli, prikazemo "Skupaj", tudi ce je samo en tip programa - # Pri tabelah in grafih po letniku "Skupaj", v primeru enega tipa ne prikazujemo - imena <- names(vrstaProg) - vrstaProg_T2 <- c(vrstaProg, "Skupaj") -} - - -#Odstotki za tabelo struktura_stopnja -stVrsta.vsi.pct <- (stVrsta.vsi/ - stVrsta.vsi[length(stVrsta.vsi)])*100 - -# Tu delim vnose v stolpcu z vsoto tega stolpca -stVrsta.r.pct <- (stVrsta.r/ - stVrsta.r[length(stVrsta.r)])*100 - -# Tu delim vnose v stolpcu z vsoto tega stolpca -odstotkiT2 <- (stVrsta/stVrsta[length(stVrsta)])*100 - - -struktura_stopnja <- data.frame(vrstaProg_T2, - stVrsta.vsi, - #stVrsta.vsi.pct, - stVrsta_oklepaji, - odstotkiT2, - stVrsta.r, - stVrsta.r.pct, stringsAsFactors = F) -#struktura_stopnja <- struktura_stopnja[-3] -colnames(struktura_stopnja) <- c("", "$n_{0}$", "n", "\\%", "r", "\\%") - - -# Tu delim stevila tistih, ki so odgovorili s stevili tistih, ki so pristopili -# Tako, da dobimo vsoto po vrsticah 100% -stVrsta_pct_po_vrsticah <- (stVrsta / stVrsta.vsi) * 100 -stVrsta.r_pct_po_vrsticah <- (stVrsta.r / stVrsta.vsi) * 100 -stVrsta_stolpec100 <- rep(100, length(stVrsta.vsi)) -struktura_stopnja_po_vrsticah <- data.frame(vrstaProg_T2, - stVrsta.vsi, - stVrsta_stolpec100, - #stVrsta.vsi.pct, - stVrsta_oklepaji, - stVrsta_pct_po_vrsticah, - stVrsta.r, - stVrsta.r_pct_po_vrsticah, - stringsAsFactors = F) -# -#struktura_stopnja_po_vrsticah <- struktura_stopnja_po_vrsticah[-3] -colnames(struktura_stopnja_po_vrsticah) <- c("", "$n_{0}$", "\\%", "n", "\\%", "r", "\\%") -@ - -<>= -########## -##TABELA3 -######### - -#Uvoz pomozne tabele -#pomoznaT <- read.csv2("pomoznaT.csv", stringsAsFactors = FALSE) -#vprZ <- subset(pomoznaT, pomoznaT$tip==0) - -#Napis (vprašanja) do ":" zamenja s "" -#Presledek za : pomemben, da izbrise tudi njega -#vprZ$dolgoIme <- gsub("^.*\\: ","", vprZ$dolgoIme) -########!!!!!!!!!!!!!! -########!!!!!!!!!!!!!!!! -#Nejasno: -#vprZ$dolgoIme1 <- vprZ$dolgoIme -vprZ$dolgoIme1 <- vprZ$povzetekIme -vprZ$dolgoIme <- vprZ$kljucnaBeseda - - -#Fun: izloci samo veljavne odgovore: -#ii = kratko ime vprasanja in se uporablja za klicanje in nov zapis glede na doloceno vprasanje - -#odgVeljavni <- numeric() -#for (i in (1:(length(vprZ$kratkoIme))-3)){ -# ii <- vprZ$kratkoIme[i] -#odgVeljavni[ii] <- subset(veljavneEnote[[1]][ii], veljavneEnote[[1]][ii]>0) -#} - -# Nejasno: -odgVeljavni <- veljavniOdg[[1]] - -#Izracuni iz odgVeljavni (stevilo, povprecje....) -odgSt <- lengths(odgVeljavni) -odgMean <- sapply(odgVeljavni, mean) -odgSd <- sapply(odgVeljavni, sd) - -# Zaokrozimo na eno decimalko in zamenjamo vrednosti NA s piko -odgSd <- sapply(odgSd, function(x){ - if (!is.na(x)){x <- formatC2( round2(as.numeric(x), 1 ), format='f', digits=1 )} - else {x <- "(.)"} -}) - - -odgMin <-sapply(odgVeljavni, min) -odgMax <-sapply(odgVeljavni, max) - -napisiSklop <- c("Obveščanje na fakulteti", - "Prostori, oprema in urnik", - "Knjižnica", - "Mednarodna mobilnost", - "Svetovalna pomoč študentom", - "Drugi dejavniki študijskega procesa", - "Študentski svet in obštudijske dejavnosti", - "Zadovoljstvo s študijem") - -#Izracuni po sklopih -odgSklop <- list(median(odgMean[1:3]), - median(odgMean[4:7]), - median(odgMean[8:11]), - median(odgMean[12:17]), - median(odgMean[18:22]), - median(odgMean[23:24]), - median(odgMean[25:26]), - odgMean[[27]]) - - - -#Pripravimo stolpec z medianami povprecij sklopa, da lahko t3 razvrcamo znotraj median povprecij sklopov -odgSklop_R <- c(rep(odgSklop[[1]],3), - rep(odgSklop[[2]],4), - rep(odgSklop[[3]],4), - rep(odgSklop[[4]],6), - rep(odgSklop[[5]],5), - rep(odgSklop[[6]],2), - rep(odgSklop[[7]],2), - odgSklop[[8]]) - -# Ce ima dolocena fakulteta dodatni sklop, to upostevamo pri izracunu -# Predvidevanje: kaj če ima dodatnih sklopov več? -if (dodatniSklop == 1){ - odgSklop <- c(odgSklop, median(odgMean[28:(28 + length(napisi_dodatniSklop_priloga)-1)])) - odgSklop_R <- c(odgSklop_R, rep(odgSklop[[9]], length(napisi_dodatniSklop_priloga))) - napisiSklop <- c(napisiSklop, dodatniSklop_napis) -} - -# Uporabljamo pri avtomatskem povzetku -odgMean_rounded <- as.numeric(formatC2(odgMean, digits=1, format ='f')) -povpSklopi_zaIzpis <- as.data.frame(cbind(odgMean_rounded, odgSklop_R), - stringsAsFactors =F) -idSklopov_zaIzpis <- c(rep(1,3), - rep(2,4), - rep(3,4), - rep(4,6), - rep(5,5), - rep(6,2), - rep(7,2), - 8) - -if (dodatniSklop == 1){ - idSklopov_zaIzpis <- c(idSklopov_zaIzpis, rep(9,3)) -} - -povpSklopi_zaIzpis <- cbind(povpSklopi_zaIzpis, idSklopov_zaIzpis) -povpSklopi_zaIzpis <- arrange(povpSklopi_zaIzpis, desc(odgSklop_R), desc(odgMean_rounded)) - -sklop_Z <- cbind(napisiSklop, 1:length(odgSklop), as.numeric(formatC2(unlist(odgSklop), digits=1, format = 'f')), "id", "tip") - -colnames(sklop_Z) <- c("napisiSklop", "id", "odgSklop", "opis", "tip") - -for (i in (1:length(sklop_Z[,3]))){ - - if (sklop_Z[i,3] > 4.5){ - sklop_Z[i,4] <- gsub("id", "nad 4.5", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 1, sklop_Z[i,5]) - } - else if (sklop_Z[i,3] > 4 ){ - sklop_Z[i,4] <- gsub("id", "nad 4", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 2, sklop_Z[i,5]) - } - - else if (sklop_Z[[i,3]] > 3.5){ - sklop_Z[i,4] <- gsub("id", "3.5do4", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 3, sklop_Z[i,5]) - } - - else if(sklop_Z[[i,3]] >= 3){ - sklop_Z[i,4] <- gsub("id", "nad 3", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 4, sklop_Z[i,5]) - } - - else if (sklop_Z[[i,3]] < 3){ - sklop_Z[i,4] <- gsub("id", "pod 3", sklop_Z[i,4]) - sklop_Z[i,5] <- gsub("tip", 5, sklop_Z[i,5]) - } - } - - - -#Izracuni za barplot, glede na vrsto programa ('prog_r2') -# Koncni rezultat je seznam s stolpci stopnjaMean_v, stopnjaId_v -# ..., iii (napis), stopnjaMeanSkupaj_v -graf_p <- list() -graf_p3 <- list() - -# Za shranjevanje zacasnih rezultatov -graf_p_temp <- list() -graf_p_temp3 <- list() - -# Pri tabelah ne izlocimo povp., glede na letnik / stopnjo, ki imajo -# st. enot manjse od 4, tam povprecju dodamo dva oklepaja oz. enega -# za st. enot manjse od 10 - -tabela_p <- list() -tabela_p3 <- list() -tabela_p_temp <- list() -tabela_p_temp3 <- list() -#Barvanje - -barvanje_f <- function(y){ - sapply(unlist(y, use.names = F), function(x){ - #x <- formatC2(as.numeric(x), digits=1, format='f') - - if(!is.nan(x) & !is.na(x) & x >= 4.5){ - paste0("\\textbf{\\textcolor[HTML]{006666}{", - formatC2(round2(as.numeric(x),1), digits=1, format='f'), "}}") - - }else if (!is.nan(x) & !is.na(x) & x >= 4){ - paste0("\\textbf{\\textcolor[HTML]{36BF4B}{", - formatC2(round2(as.numeric(x),1), digits=1, format='f'), "}}") - }else if (!is.nan(x) & !is.na(x) & x >= 3.5 & x < 4){ - formatC2(round2(as.numeric(x),1), digits=1, format='f') - }else if (!is.nan(x) & !is.na(x) & x >= 3 & x < 3.5){ - paste0("\\textbf{\\textcolor[HTML]{F58137}{", - formatC2(round2(as.numeric(x),1), digits=1, format='f'), "}}") - - }else if(!is.nan(x) & !is.na(x) & x < 3 & x >=1){ - paste0("\\textbf{\\textcolor[HTML]{B6321C}{", - formatC2(round2(as.numeric(x),1), digits=1, format='f'), "}}") -}else{paste0(".")} -}) -} - -# Funkcija, ki obarva indekse -barvanje_f_index <- function(y){ - sapply(unlist(y, use.names = F), function(x){ - if(x > 120){ - paste0("\\textbf{\\textcolor[HTML]{006666}{", - formatC2(x, digits=0, format='f'), "}}") - } - else if (x > 110){ - paste0("\\textbf{\\textcolor[HTML]{36BF4B}{", - formatC2(x, digits=0, format='f'), "}}") - } - else if (x >= 90 & x <= 110){ - paste0("", - formatC2(x, digits=0, format='f'), "") - } - else if (x >= 80 & x < 90){ - paste0("\\textbf{\\textcolor[HTML]{F58137}{", - formatC2(x, digits=0, format='f'), "}}") - } - else if(x < 80){ - paste0("\\textbf{\\textcolor[HTML]{B6321C}{", - formatC2(x, digits=0, format='f'), "}}") - # Priloga - }else{paste0("NaN")} -}) -} - - -for (i in (1:length(vprZ$kratkoIme))){ - ii <- vprZ$kratkoIme[i] - iii <- vprZ$kljucnaBeseda[i] - iii2 <- vprZ$grafBeseda[i] - -# Za veljavne enote izracunamo -# odgovore, idStopnje, in letnik -stopnjaMean_v <- as.numeric(subset(veljavneEnote[[1]][[ii]], - veljavneEnote[[1]][[ii]]>0)) - - -stopnjaId_v <- as.numeric(subset(veljavneEnote[[1]][["prog_r2"]], - veljavneEnote[[1]][ii]>0)) - -letnik_v <- as.numeric(subset(veljavneEnote[[1]][["letnik"]], - veljavneEnote[[1]][ii]>0)) - -letnik_v <- letnik_v[letnik_v > 0] - -#Izracun povprecij glede na (prog_r2) (vrsto programov) -graf_p_temp <- cbind(Hmisc::summarize(stopnjaMean_v, - by = stopnjaId_v, - FUN = mean), iii) - -# Izracun povprecij glede na letnik in pripis napisov za graf -graf_p_temp3 <- cbind(Hmisc::summarize(stopnjaMean_v, - by = letnik_v, - FUN = mean), iii2) - -# Povprecja glede na stopnjo / letnik, ki jih bomo prikazali v tabelah zaokrozimo na 1 dec. -tabela_p_temp <- graf_p_temp -tabela_p_temp3 <- graf_p_temp3 - -tabela_p_temp$stopnjaMean_v <- barvanje_f(tabela_p_temp$stopnjaMean_v) -tabela_p_temp3$stopnjaMean_v <- barvanje_f(tabela_p_temp3$stopnjaMean_v) - -#for(i in(1:nrow(tabela_p_temp))){ -# tabela_p_temp$stopnjaMean_v[[i]] <- formatC2( round2(as.numeric(tabela_p_temp$stopnjaMean_v[[#i]]), 1 ), format='f', digits=1 ) -#} - -#for(i in(1:nrow(tabela_p_temp3))){ -# tabela_p_temp3$stopnjaMean_v[[i]] <- formatC2( round2(as.numeric(tabela_p_temp3$stopnjaMean_v#[[i]]), 1 ), format='f', digits=1 ) -#} - -#tabela_p_temp$stopnjaMean_v <- round2(tabela_p_temp$stopnjaMean_v, digits=1) -#tabela_p_temp2$stopnjaMean_v <- round2(tabela_p_temp2$stopnjaMean_v, digits=1) -#tabela_p_temp3$stopnjaMean_v <- round2(tabela_p_temp3$stopnjaMean_v, digits=1) - - - -# Prestejemo stevilo enot na posamezen dejavnik in iz graf_p_temp izkljucimo: -# povp studijskih stopenj in letnike, ki imajo stevilo enot manjse od 4 - -# paste0 oklepaj, dva -stevilo_PoStopnjah <- table(stopnjaId_v) -stevilo_PoLetnikih <- table(letnik_v) - -for (i in 1:length(stevilo_PoStopnjah)){ - if (stevilo_PoStopnjah[i] < 4 ){ - # Izkljucimo povprečja, ki imajo manj, kot štiri enote. - #graf_p_temp$stopnjaMean_v[i] <- NA - tabela_p_temp$stopnjaMean_v[i] <- paste0("((", tabela_p_temp$stopnjaMean_v[i], "))") - } - else if (stevilo_PoStopnjah[i] >=4 & stevilo_PoStopnjah[i] < 10){ - tabela_p_temp$stopnjaMean_v[i] <- paste0("(", tabela_p_temp$stopnjaMean_v[i], ")") - } -} - -for (i in 1:length(stevilo_PoLetnikih)){ - # Popravi, pri 50 - # Ce je manjsi, ne prikazi podatkov za celotni sklop - if (stevilo_PoLetnikih[i] < 4 ){ - graf_p_temp3$stopnjaMean_v[i] <- NA - tabela_p_temp3$stopnjaMean_v[i] <- paste0("((", tabela_p_temp3$stopnjaMean_v[i], "))") - }#else if (stevilo_PoLetnikih[i] >= 4 & stevilo_PoLetnikih[i] <10){ - #graf_p_temp3$stopnjaMean_v[i] <- NA - #tabela_p_temp3$stopnjaMean_v[i] <- paste0("(", tabela_p_temp3$stopnjaMean_v[i], ")") - #} -} - -#Vrstica s povprecji fakultete (25 je nek umeten ID) -graf_vrstica <- c(25, formatC2(odgMean[ii], digits=1, format='f'), iii) -graf_vrstica2 <- c(25, formatC2(odgMean[ii], digits=1, format='f'), iii2) - -graf_p_temp <- rbind(graf_p_temp, graf_vrstica) -graf_p_temp3 <- rbind(graf_p_temp3, graf_vrstica2) - -#barve <- c("#FFE4E1", "#1874CD", "#CD2626", "#D9E2E1", "#B7AFA3") -#names(barve) <- c("1", "7", "9", "25", "30") -# Podatkom za graf pripisemo napise za legendo in barvo -# To sem mislil uporabiti pri prikazu grafov brez dejavnikov -# ki imajo st. enot manjse od 4 -# Izkljuceno, ker se ne deluje - -#for (i in 1:nrow(graf_p_temp)){ -# ii2 <- graf_p_temp$stopnjaId_v[i] -# graf_p_temp$napis[[i]]<- vrstaProg[names(vrstaProg) == ii2] -# graf_p_temp$barve[[i]] <- barve[names(barve) == ii2] -#} - -#for (i in 1:nrow(graf_p_temp2)){ -# ii2 <- graf_p_temp2$stopnjaId_v[i] -# graf_p_temp2$napis[[i]]<- vrstaProg[names(vrstaProg) == ii2] -# graf_p_temp2$barve[[i]] <- barve[names(barve) == ii2] -# -#} - -tabela_p_temp <- rbind(tabela_p_temp, c(25, barvanje_f(odgMean[ii]) , iii)) -#tabela_p_temp3 <- rbind(tabela_p_temp3, graf_vrstica2) -tabela_p_temp3 <- rbind(tabela_p_temp3, c(25, barvanje_f(odgMean[ii]) , iii2)) - - -# Pripisemo stolpec s poprecji za vse stopnje / letnike -# z namenom razvrscanja sklopov glede na to povprecje -stopnjaMeanSkupaj_v <- odgMean[ii] -graf_p[ii] <- list(cbind(graf_p_temp, stopnjaMeanSkupaj_v)) -graf_p3[ii] <- list(cbind(graf_p_temp3, stopnjaMeanSkupaj_v)) - -tabela_p[ii] <- list(cbind(tabela_p_temp, stopnjaMeanSkupaj_v)) -tabela_p3[ii] <- list(cbind(tabela_p_temp3, stopnjaMeanSkupaj_v)) - -} - -# Privzete -# Barve naj se ujemajo tudi, pri izlocenih dejavnikih -# Dokumentacija: se že ujemajo, vendar to ni opisano -#barve <- c("#FFE4E1", "#1874CD", "#CD2626", "#D9E2E1", "#B7AFA3") - -barve <- c("#FFE4E1", "#468fd7", "#CD2626", "#D9E2E1", "#B7AFA3") -names(barve) <- c("1", "7", "9", "25", "30") -barva_font = "black" - -#Sys.setenv(R_GSCMD = "C:/Program Files/gs/gs9.18/bin/gswin64c.exe") -#library(extrafont) -#loadfonts() -#library(showtext) -#library(Cairo) -font.add("CM Roman", regular = paste0("cmunrm.ttf")) - -#font.add("CM Roman", regular = paste0(getwd(),"/cmunrm.ttf")) -#font.families() - -#Funkcija za risanje barchartov glede na 'prog_r2' -graf_program_f <- function(x, y, z){ -nivojiFaktorjev <- factor(dejavniki$stopnjaId_v) -vrstniRedNivojev <- sort(unique(as.numeric((dejavniki$stopnjaId_v)))) -nivojiFaktorjev <- factor(nivojiFaktorjev, levels=rev(vrstniRedNivojev)) - -# Podatke uredimo glede na skupno povprecje dejavnikov -dejavniki <- arrange(dejavniki, desc(dejavniki[,length(dejavniki)])) -dejavniki$iii2 <- factor(dejavniki$iii2, levels=rev((unique(dejavniki$iii2)))) - -# Urejanje velikosti grafov -manjsi.font <- 0 -manjsi.kvadrat <- 0 -manjsi.height <- 0 -manjsi.width <- 0 - -if(nrow(dejavniki)==2*length(vrstaProg)){ - if((length(vrstaProg)-1)<3){ - asp.ratio <- 0.85 - manjsi.width <- 0.5 - manjsi.height <- 3 - }else{ - asp.ratio <- 0.7 - manjsi.height <- 3 - } -}else if (nrow(dejavniki)==3*length(vrstaProg)){ - asp.ratio <- 0.95 - manjsi.height <- 1.5 -}else if(nrow(dejavniki)==4*length(vrstaProg)){ - asp.ratio <- 1.3 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - manjsi.width <- 0.3 - -}else if(nrow(dejavniki)==5*length(vrstaProg)){ - asp.ratio <- 1.4 - manjsi.font <- 2 - manjsi.height <- 1 - manjsi.kvadrat <- 0.4 - manjsi.width <- 1.1 - -}else if(nrow(dejavniki)==6*length(vrstaProg)){ - asp.ratio <- 1.55 - manjsi.font <- 3.5 - manjsi.kvadrat <- 0.3 - manjsi.width <- 1.3 - manjsi.height <- 0.8 -} - - -izpis <- ggplot(dejavniki, - aes(x=iii2,y=as.numeric(meanGraf), - fill=nivojiFaktorjev, - label = meanGraf))+ - geom_bar(stat="identity", position="dodge")+ #Pozicija value label-ov - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = barva_font, - #fontface = "bold", - size = 4.2)+ - - scale_y_continuous(expand=c(0,0), - limits=c(1,5), - oob = rescale_none) + - - scale_fill_manual(name = "", breaks=nivojiFaktorjev, - values= rev(dejavniki$barve), - labels= dejavniki$napis, - guide= guide_legend())+ - - xlab("")+ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(aspect.ratio= asp.ratio)+ - - theme(axis.text=element_text(size=15-manjsi.font, - family='CM Roman'), - axis.title=element_text(size=15-manjsi.font, - family='CM Roman'), - legend.position="right", - #legend.direction = "horizontal", - #Velikost, barva kvaratov - #legend.key=element_rect(size=10, color="white"), - legend.key.size = unit(1.6-manjsi.kvadrat, "lines"), - #barva / velikost / naklon legende - legend.text = element_text(size = 12.3-manjsi.font), - # Dodamo crto pri x in y osi, ki je drugace pri tej temi ni - axis.line.x = element_line(colour = 'black', - size=0.5, - linetype='solid'), - axis.line.y = element_line(colour = 'black', - size=0.5, - linetype='solid'))+ - - #coord_flip(ylim=c(1,5)) - coord_flip() -#print(izpis) -#dev.off() - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/izpis",stevec,".pdf") - - showtext.auto() - ggsave(izpis, filename=ime, width=9-manjsi.width, - height=6-manjsi.height, units="in", - device=cairo_pdf) - -#showtext.end() -#embed_fonts(ime) - - caption <- as.character(y) - cat(paste0('\\begin{figure}[!ht] - \\flushleft \\caption{', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} - -graf_letnik_f <- function(x, y, z){ - # Dejavnike uredimo glede na padajoce povprecje vseh letnikov - dejavniki1 <- arrange(dejavniki1, desc(dejavniki1[,length(dejavniki1)])) - - - nivojiFaktorjev <- factor(dejavniki1$letnik_v) - vrstniRedNivojev <- sort(unique(as.numeric((dejavniki1$letnik_v)))) - nivojiFaktorjev <- factor(nivojiFaktorjev, levels=rev(vrstniRedNivojev)) - - - # Napise ponovimo, da se njihovo stevilo sklada z nivoji faktorjev, ki - # so ze ponovljeni za vsak dejavnik v dejavniki1 - #napisiLegenda <- rep(factor(napisiLetnik$napisi, levels = rev(napisiLetnik$napisi)), length (unique(dejavniki1$iii2))) - - napisiLegendaSeznam <- data.frame(id=c(1, 2, 3, 4, 5, 6, 25), - napisLetnik=c("Prvi letnik", - "Drugi letnik", - "Tretji letnik", - "Četrti letnik", - "Peti Letnik", - "Šesti letnik", - "Skupaj"), - stringsAsFactors = F) - #napisiLetnik2 <- rep(napisiLetnik.uq) - napisiLetnik2 <- list() - for (u in 1:nrow(dejavniki1)){ - ux <- dejavniki1$letnik_v[u] - napisiLetnik2[[u]] <- napisiLegendaSeznam$napisLetnik[napisiLegendaSeznam$id == ux] - } - - napisiLetnik2 <- unlist(napisiLetnik2) - #napisiLegenda <- rep(napisiLegenda, length(unique(dejavniki1$iii2))) - - # Podatke uredimo glede na skupno povprecje dejavnikov - dejavniki1 <- arrange(dejavniki1, desc(stopnjaMeanSkupaj_v)) - dejavniki1$iii2 <- factor(dejavniki1$iii2, levels=rev((unique(dejavniki1$iii2)))) - - manjsi.font <- 0 - manjsi.kvadrat <- 0 - manjsi.height <- 0 - manjsi.width <- 0 - - if(nrow(dejavniki1)==2*length(letniki.uq)){ - asp.ratio <- 0.75 - manjsi.height <- 3 - }else if (nrow(dejavniki1)==3*length(letniki.uq)){ - asp.ratio <- 0.95 - manjsi.height <- 1.5 - }else if(nrow(dejavniki1)==4*length(letniki.uq)){ - asp.ratio <- 1.3 - manjsi.font <- 0.5 - manjsi.height <- 0.5 - manjsi.width <- 0.3 - - }else if(nrow(dejavniki1)==5*length(letniki.uq)){ - asp.ratio <- 1.4 - manjsi.font <- 1 - manjsi.height <- 1 - manjsi.kvadrat <- 0.4 - manjsi.width <- 0.9 - - }else if(nrow(dejavniki1)==6*length(letniki.uq)){ - asp.ratio <- 1.7 - manjsi.font <- 2 - manjsi.kvadrat <- 0.4 - manjsi.width <- 1 - } - - - #gx <- subset(dejavniki, dejavniki$stopnjaId_v != 4 ) - izpis <- ggplot(dejavniki1, - aes(x=iii2,y=round2(as.numeric(meanGraf), digits=1), - fill=nivojiFaktorjev, - label = meanGraf))+ - geom_bar(stat="identity", position="dodge")+ #Pozicija value label-ov - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = barva_font, - #fontface = "bold", - size = 4.2)+ - scale_y_continuous(expand=c(0,0),limits=c(1,5), - oob = rescale_none) + - - scale_fill_manual(name = "", breaks=nivojiFaktorjev, - values= rev(dejavniki1$barve), - labels= dejavniki1$napisLetnik)+ - - #xlab("Dejavniki\n")+ - xlab("")+ - ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(aspect.ratio= asp.ratio)+ - - theme(axis.text=element_text(size=15-manjsi.font, - family='CM Roman'), - axis.title=element_text(size=15-manjsi.font, - family='CM Roman'), - legend.position="right", - #legend.direction = "horizontal", - #Velikost, barva kvaratov - #legend.key=element_rect(size=10, color="white"), - legend.key.size = unit(1.6-manjsi.kvadrat, "lines"), - #barva / velikost / naklon legende - legend.text = element_text(size = 13-manjsi.font), - axis.line.x = element_line(colour = 'black', size=0.5, - linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, - linetype='solid'))+ - - coord_flip() - - stevec <- as.numeric(z) - ime <- paste0("rezultati/", ID,"/grafi/povprecjaSklopLetnik",stevec,".pdf") - ggsave(izpis, filename=ime, width=9-manjsi.width, height=7-manjsi.height, - units="in", device= cairo_pdf) - caption <- as.character(y) - cat(paste0('\\begin{figure}[!ht] - \\flushleft \\caption{', caption, '} - \\includegraphics[width=\\maxwidth]{../', ime, '} - \\centering - \\end{figure}')) -} - -#ggsave(graf_program_f(dejavniki), width=8, height=8) -# ggsave(graf_program_f(dejavniki), filename="blah.pdf", -# width=8, height=8, units="in", device=cairo_pdf) - -# Nejasno: zakaj to naredim na ta način? -# Ustvarimo prazna df-ja -# da tam nadomescamo povprecja glede na dejavnik -# to prikazujemo pri tabelah po stopnji / letniku - -stID_v <- as.matrix(rep(c(as.numeric(imena)), nrow(vprZ)), ncol=1) -stMean_v <- as.matrix(rep("0", length(vrstaProg)*nrow(vprZ)), ncol=1) -stMean_v_graf <- as.matrix(rep("0", length(vrstaProg)*nrow(vprZ)), ncol=1) - -iii3 <- sapply(vprZ$kljucnaBeseda, function(x){rep(x,length(vrstaProg))}) -iii3 <- matrix(iii3, ncol=1) -nap <- as.matrix(rep(c(vrstaProg), nrow(vprZ)), ncol=1) - -# B7 - siva, D9 - sivomodra, CD - rdeca, 1874-modra, ffe - roza -# c7 - sivoroza - -barve1 <- c("#468fd7", "#CD2626", "#C7AFA3", "#D9E2E1", "#B7AFA3", "#AD571D", "#FF8200") -# Color brewer set 1, preskocimo rumeno -# rdeca, modra, zelena, vijolicna, oranzna, rjava, siva; , "#45AE49" -#barve1 <- c("#ED2700", "#227FB9", "#9D51A3", "#FF8200", "#AD571D", "#9C9A99") -# Pomembno, da je skupaj tako v grafih po programih, kot v grafih -# po letnikih, prikazan z isto barvo -barveStopnja <- barve1 -barveStopnja[length(vrstaProg)] <- "#FFE4E1" -#barveStopnja[length(vrstaProg)] <- "#45AE49" - - -bar <- as.matrix(rep(c(barveStopnja[1:length(vrstaProg)]), nrow(vprZ)), ncol=1) - -stMeanSk_v <- as.matrix(rep("0", length(vrstaProg)*nrow(vprZ)), ncol=1) -odgSklopR_2 <- as.vector(sapply(odgSklop_R, function(x){rep(x, length(vrstaProg))})) - -vprZsklop2 <- as.vector(sapply(vprZ$sklop, function(x){rep(x, length(vrstaProg))})) - -# Grafom po letnikih pripisemo napise za v legendo -napisiLetnik <- c("Prvi letnik", "Drugi letnik", "Tretji letnik", - "Četrti letnik", "Peti letnik", "Šesti letnik", "Skupaj") -napisiLetnik.tabela <- c("{\\small \\makecell{Prvi\\\\letnik}}", - "{\\small \\makecell{Drugi\\\\letnik}}", - "{\\small \\makecell{Tretji\\\\letnik}}", - "{\\small \\makecell{Četrti\\\\letnik}}", - "{\\small \\makecell{Peti\\\\letnik}}", - "{\\small \\makecell{Šesti\\\\letnik}}", - "{\\small \\shortstack{Skupaj}}") -idLetnik <- c(1, 2, 3, 4, 5, 6, 25) -napisiLetnik <- data.frame(napisi = napisiLetnik, - napisiLetnik.tabela, - id = idLetnik, stringsAsFactors =F) - - -odgMeanSkupaj <- as.vector(sapply(odgMean, function(x){rep(x,length(vrstaProg))})) -kratkoIme <- as.vector(sapply(vprZ$kratkoIme, function(x){rep(x,length(vrstaProg))})) - -prazen_n <- as.vector(sapply(odgSt, function(x){rep(x,length(vrstaProg))})) -prazen_min <- as.vector(sapply(odgMin, function(x){rep(x,length(vrstaProg))})) -prazen_max <- as.vector(sapply(odgMax, function(x){rep(x,length(vrstaProg))})) -prazen_sd <- as.vector(sapply(odgSd, function(x){rep(x,length(vrstaProg))})) - -# Dolocimo unikatna imena vrstic, ker drugace javi napako -prazen_df <- data.frame(kratkoIme, stID_v, prazen_n, prazen_min, prazen_max, prazen_sd, stMean_v, stMean_v_graf, iii3, nap, bar, stMeanSk_v, odgSklopR_2, vprZsklop2, odgMeanSkupaj, row.names = 1:length(kratkoIme), stringsAsFactors = F) - -#prazen_df <- arrange(prazen_df, vprZsklop2, odgSklopR_2, odgMeanSkupaj) - -# Imena dejavnikov shranimo, da lahko poimenujemo posamezne kose, tega -# df, potem ko ga razdelimo glede na dejavnike - -vrstiRedImen <- prazen_df$kratkoIme[seq(1, length(prazen_df$kratkoIme), - by=length(vrstaProg))] - -prazen_df <- split(prazen_df, rep(1:nrow(vprZ),each=length(imena))) - -for (i in (1:(length(vrstaProg)))){ - ii <- imena[i] - for (j in 1:length(tabela_p)){ - colnames(prazen_df[[j]]) <- c("imeKratko","stopnjaId_v", "n", "min", "max", "sd", - "stopnjaMean_v", "meanGraf", "iii2", "napis", "barve", - "stopnjaMeanSkupaj_v", "odgSklop_R", "vprZ$sklop", - "odgMeanSkupaj") - - if (length(tabela_p[[j]]['stopnjaMean_v'][tabela_p[[j]]['stopnjaId_v']==ii])!= 0){ - prazen_df[[j]]$stopnjaMean_v[[i]] <- tabela_p[[j]]['stopnjaMean_v'][tabela_p[[j]]['stopnjaId_v']==ii] - - } - if (length(graf_p[[j]]['stopnjaMean_v'][graf_p[[j]]['stopnjaId_v']==ii])!= 0){ - prazen_df[[j]]$meanGraf[[i]] <- formatC2(round2(as.numeric(graf_p[[j]]['stopnjaMean_v'][graf_p[[j]]['stopnjaId_v']==ii]), digits = 1), digits = 1, format = 'f') - - } - } -} -### Podatke primerne za izris grafov transformiramo v obliko za tabele -### Povprecja, ki so prvotno v enem stoplcu, razdelimo v vec stolpcev -### Odvisno od stevila prisotnih stopenj. -prazen_df_t <- list() -for (i in (1:length(prazen_df))){ - for (j in (1:nrow(prazen_df[[i]]))){ - prazen_df[[i]][paste0("povp",j)] <- prazen_df[[i]]$stopnjaMean_v[[j]] - } - # Izlocimo samo eno vrstico - # in potrebne stolpce za izpis tabele - # 13 - idSklopa; 8 - ime; 3:6 - n min max sd, 15... uni, mag... - prazen_df_t[[i]] <- prazen_df[[i]][1, c(14, 9, 3, 6, 16:(16+length(vrstaProg)-1))] -} - -names(prazen_df) <- vrstiRedImen -names(prazen_df_t) <- vrstiRedImen -# data.frame spet zdruzimo v enega -prazen_df_t <- do.call(rbind, prazen_df_t) - -# podatke uredimo glede na id sklopa in padajoce povprecje za vse sklope -prazen_df_t <- arrange(prazen_df_t, vprZ$sklop, desc(prazen_df_t[,length(prazen_df_t)])) - -# Izlocimo stolpec z id-jem sklopa -prazen_df_t <- prazen_df_t[,-1] - -# Dolocimo napise za tabele po studijskih stopnjah: -if (length(vrstaProg) > 1){ - napisiT5 <- lapply(imena[-length(imena)], function(x){stopnjeUQ[,3][stopnjeUQ[,2]==x]}) - colnames(prazen_df_t) <- c("\\textbf{Dejavnik}", "n", "sd", unlist(napisiT5), "Skupaj") -}else if (length(vrstaProg) == 1){ - napisiT5 <- lapply(imena, function(x){stopnjeUQ[,3][stopnjeUQ[,2]==x]}) - colnames(prazen_df_t) <- c("\\textbf{Dejavnik}", "n", "sd", unlist(napisiT5)) -} - - -prazen_df_t[prazen_df_t == 0] <- "(.)" - - -# Tu so v seznamih vsa povprecja iz podatkov v tabela_p3, glede -# na letnik -# Vsi unikatni letniki + (25) skupaj - -letniki.uq <- sort(unique(podatki[[1]]$letnik)) -##### SPREMEMBA -#letniki.uq <- letniki.uq[letniki.uq != "-2"] - -if (length(letniki.uq) > 1){ - letniki.uq <- c(letniki.uq, 25) -} - -# prisotnim letnikom pripisemo napise -napisiLetnik.uq <- sapply(letniki.uq, function(x){ - napisiLetnik$napisi[napisiLetnik$id == x] -}) - -####### -#### AGREGIRANA TABELA PO LETNIKIH -#### TABELA 3 -# Df- ju z letniki in njihovimi napisi pripisemo stevilo enot, za -# vse enote in veljavne enote - - -# Funkcija: Vzamemo vektor števil in ga delimo z vsoto tega vektorja, -# Pomnožimo s 100 in zaokrožimo na eno decimalko -odstotki_f <- function(x, digits=1){ - formatC2(sapply(x, function(y){ - y/x[length(x)]*100} - ), - digits = digits, format = "f") - #x <- x[1]/x[length(x)]*100 -} - -# Obdrzimo samo letnike, ki so prisotni v podatkih -# drugace se pojavijo problemi zaradi razlicnih dolzin vektorjev, od dolzine -# prvotnega df-ja. - -#napisiLetnik <- napisiLetnik[c(letniki.uq[-length(letniki.uq)]),] -#napisiLetnik <- na.omit(napisiLetnik) - -# Izklop enot z neveljavnim idprog -#napisiLetnik.Vsi.n_temp <- count(subset(podatki[[1]], podatki[[1]]$letnik > 0), letnik) -#napisiLetnik.Vsi.n_temp <- subset(podatki[[1]], podatki[[1]]$letnik > 0 & -# podatki[[1]]$idprog != -2) - -napisiLetnik.Vsi.n_temp <- subset(podatki[[1]], podatki[[1]]$letnik > 0) -napisiLetnik.Vsi.n_temp <- count(napisiLetnik.Vsi.n_temp, letnik) - - -#### Ce je pri veljavnih enotah kaksen letnik manj, kot pri vseh enotah -# potem tam vrednosti pri 'Vsi_n' in 'Vsi_pct' dolocimo kot '0' -napisiLetnik.Vsi_n_vektor <- rep(0, length(napisiLetnik$id)-1) - -for (i in as.numeric(c(letniki.uq))){ - if (i != 25){ - napisiLetnik.Vsi_n_vektor[i] <- napisiLetnik.Vsi.n_temp$n[napisiLetnik.Vsi.n_temp$letnik == i] - } -} - -# Dodamo sestevek po letnikih -napisiLetnik$Vsi_n <- c(napisiLetnik.Vsi_n_vektor, sum(napisiLetnik.Vsi_n_vektor)) -napisiLetnik$Vsi_pct <- odstotki_f(napisiLetnik$Vsi_n) - -# Prestejemo stevilo veljavnih enot po letniku -napisiLetnik.Veljavni.n_temp <- count(subset(veljavneEnote[[1]], - veljavneEnote[[1]]$letnik > 0), letnik) - -# Izkljucitev enot, ki imajo neveljaven idprog -#napisiLetnik.Veljavni.n_temp <- count(subset(veljavneEnote[[1]], -# veljavneEnote[[1]]$letnik > 0 & -# veljavneEnote[[1]]$idprog != -2), letnik) - - -napisiLetnik.Veljavni_n_vektor <- rep(0, length(napisiLetnik$id)-1) -for (i in as.numeric(c(letniki.uq))){ - if (i != 25){ - napisiLetnik.Veljavni_n_vektor[i] <- napisiLetnik.Veljavni.n_temp$n[napisiLetnik.Veljavni.n_temp$letnik == i] - } -} - -# Tu so odstotki po stolpcih -napisiLetnik$Veljavni_n <- c(napisiLetnik.Veljavni_n_vektor, sum(napisiLetnik.Veljavni_n_vektor)) -napisiLetnik$Veljavni_pct <- odstotki_f(napisiLetnik$Veljavni_n) -napisiLetnik$Zavrnili_n <- napisiLetnik$Vsi_n - napisiLetnik$Veljavni_n -napisiLetnik$Zavrnili_pct <- odstotki_f(napisiLetnik$Zavrnili_n) - - - -# napisi primerni za v tabele -napisiLetnik.uq2 <- sapply(letniki.uq, function(x){ - napisiLetnik$napisiLetnik.tabela[napisiLetnik$id == x] -}) - -# Prisotnim letnikom pripisemo napise (npr. Prvi l, drugi, Skupaj) -napisiLetnik.uq1 <- as.matrix(rep(napisiLetnik.uq, nrow(vprZ)), ncol=1) - - -stID_v <- as.matrix(rep(c(as.numeric(letniki.uq)), nrow(vprZ)), ncol=1) -stMean_v <- as.matrix(rep("0", length(letniki.uq)*nrow(vprZ)), ncol=1) -stMean_v_graf <- as.matrix(rep("0", length(letniki.uq)*nrow(vprZ)), ncol=1) - -iii3 <- sapply(vprZ$kljucnaBeseda, function(x){rep(x,length(letniki.uq))}) -iii3 <- matrix(iii3, ncol=1) -nap <- as.matrix(rep(c(letniki.uq), nrow(vprZ)), ncol=1) -barve1[length(letniki.uq)] <- "#FFE4E1" -bar <- as.matrix(rep(c(barve1[1:length(letniki.uq)]), nrow(vprZ)), ncol=1) -stMeanSk_v <- as.matrix(rep("0", length(letniki.uq)*nrow(vprZ)), ncol=1) -odgSklopR_2 <- as.vector(sapply(odgSklop_R, function(x){rep(x, length(letniki.uq))})) - -vprZsklop2 <- as.vector(sapply(vprZ$sklop, function(x){rep(x, length(letniki.uq))})) - - -odgMeanSkupaj <- as.vector(sapply(odgMean, function(x){rep(x,length(letniki.uq))})) -kratkoIme <- as.vector(sapply(vprZ$kratkoIme, function(x){rep(x,length(letniki.uq))})) - -prazen_n <- as.vector(sapply(odgSt, function(x){rep(x,length(letniki.uq))})) -prazen_min <- as.vector(sapply(odgMin, function(x){rep(x,length(letniki.uq))})) -prazen_max <- as.vector(sapply(odgMax, function(x){rep(x,length(letniki.uq))})) -prazen_sd <- as.vector(sapply(odgSd, function(x){rep(x,length(letniki.uq))})) - -# Dolocimo unikatna imena vrstic, ker drugace javi napako -prazen_df_letnik <- data.frame(kratkoIme, stID_v, napisiLetnik.uq1, prazen_n, prazen_min, prazen_max, prazen_sd, stMean_v, stMean_v_graf, iii3, nap, bar, stMeanSk_v, odgSklopR_2, vprZsklop2, odgMeanSkupaj, row.names = 1:length(kratkoIme), stringsAsFactors = F) - -#prazen_df_letnik <- arrange(prazen_df_letnik, vprZsklop2, desc(odgSklopR_2), desc(odgMeanSkupaj)) - -# Imena dejavnikov shranimo, da lahko poimenujemo posamezne kose, tega -# df, potem ko ga razdelimo glede na dejavnike - -vrstiRedImen <- prazen_df_letnik$kratkoIme[seq(1, length(prazen_df_letnik$kratkoIme), by=length(letniki.uq))] - -prazen_df_letnik <- split(prazen_df_letnik, rep(1:nrow(vprZ),each=length(letniki.uq))) - -for (i in (1:(length(letniki.uq)))){ - ii <- letniki.uq[i] - for (j in 1:length(tabela_p3)){ - colnames(prazen_df_letnik[[j]]) <- c("imeKratko","letnik_v", "napisLetnik", "n", "min", "max", "sd", "stopnjaMean_v", "meanGraf", "iii2", "napis", "barve", "stopnjaMeanSkupaj_v", "odgSklop_R", "vprZ$sklop", "odgMeanSkupaj") - if (length(tabela_p3[[j]]['stopnjaMean_v'][tabela_p3[[j]]['letnik_v']==ii])!= 0){ - prazen_df_letnik[[j]]$stopnjaMean_v[[i]] <- tabela_p3[[j]]['stopnjaMean_v'][tabela_p3[[j]]['letnik_v']==ii] - - } - if (length(graf_p3[[j]]['stopnjaMean_v'][graf_p3[[j]]['letnik_v']==ii])!= 0){ - prazen_df_letnik[[j]]$meanGraf[[i]] <- formatC2(round2(as.numeric(graf_p3[[j]]['stopnjaMean_v'][graf_p3[[j]]['letnik_v']==ii]), digits = 1), digits = 1, format = 'f') - - } - } -} -### Podatke primerne za izris grafov transformiramo v obliko za tabele -### Povprecja, ki so prvotno v enem stoplcu, razdelimo v vec stolpcev -### Odvisno od stevila prisotnih stopenj. -prazen_df_letnik_t <- list() -for (i in (1:length(prazen_df_letnik))){ - for (j in (1:nrow(prazen_df_letnik[[i]]))){ - prazen_df_letnik[[i]][paste0("povp",j)] <- prazen_df_letnik[[i]]$stopnjaMean_v[[j]] - } - # Izlocimo samo eno vrstico - # in potrebne stolpce za izpis tabele - # 15 - idSklopa; 10 - ime; 4:7 - n min max sd, 17... uni, mag... - # Zaradi pomanjkanja prostora min in max v prikazu teh tabel izpustimo - prazen_df_letnik_t[[i]] <- prazen_df_letnik[[i]][1, c(15, 10, 4, 7, 17:(17+length(letniki.uq)-1))] -} - -names(prazen_df_letnik) <- vrstiRedImen -names(prazen_df_letnik_t) <- vrstiRedImen -# data.frame spet zdruzimo v enega -prazen_df_letnik_t <- do.call(rbind, prazen_df_letnik_t) - -# podatke uredimo glede na id sklopa in padajoce povprecje za vse sklope -prazen_df_letnik_t <- arrange(prazen_df_letnik_t, vprZ$sklop, desc(prazen_df_letnik_t[,length(prazen_df_letnik_t)])) - -# Izlocimo stolpec z id-jem sklopa -prazen_df_letnik_t <- prazen_df_letnik_t[,-1] -prazen_df_letnik_t[prazen_df_letnik_t == 0] <- "(.)" - -if(length(letniki.uq) == 1){ - colnames(prazen_df_letnik_t) <- c("\\textbf{Dejavnik}", "n", "sd", napisiLetnik.uq2) -}else if(length(letniki.uq) > 1){ - colnames(prazen_df_letnik_t) <- c("\\textbf{Dejavnik}", "n", "sd", - napisiLetnik.uq2[-length(napisiLetnik.uq2)], "Skupaj") -} - -# V vrstaProg so unikatni programi + 'skupaj' -# Izpis povprecij glede na stopnjo -meanSklop <- list() -for (i in (1:(length(vrstaProg)))){ - ii <- names(vrstaProg)[i] -meanSklop[[i]] <- sapply(prazen_df, function(x){ - if (length(x$stopnjaMean_v[x$stopnjaId_v==ii])!=0){ - x$stopnjaMean_v[x$stopnjaId_v==ii] - }else{x <- NA} - }) -} - -# Izracuni povprecij po letniku -# Manjsim od 4 enot pripisemo NA -# Zadnji so izracuni za Skupaj -napisiLetnik_graf <- list() -meanLetnik <- list() - -# Sestavimo vektorje s povprecji glede na letnike, in skupaj -for (i in 1:5){ - ii <- napisiLetnik.uq[i] - meanLetnik[[i]] <- sapply(prazen_df_letnik, function(x){ - if (length(x$stopnjaMean_v[x$letnik_v==ii])!=0){ - x$stopnjaMean_v[x$letnik_v==ii]} - else{x <- NA}}) - napisiLetnik_graf[[i]] <- ii - -} -#meanLetnik[meanLetnik==0] <- "(.)" - -### Tabela: Povprečne vrednosti za vse dejavnike (po_sklopih_urejena), -### ki je urejena glede na padajoče povprečje sklopov (odgSklop_R, odgSklop_R2) -### in znotraj tega glede na padajoce povprecje dejavnikov -### Pred dejavnike dodamo 'Sklop: ... ' -#skl_Beseda <- paste0("\\textbf{Sklop: ", unique(vprZ$sklopBeseda), "}") - -# Polna imena dejavnikov, ki jih v porocilu ne prikazemo -#dolgoIme2 <- c(vprZ$dolgoIme1, skl_Beseda) -# Okrajsana imena dejavnikov, ki jih prikazemo v porocilu -#dolgoIme3 <- c(vprZ$dolgoIme, skl_Beseda) -dolgoIme3 <- vprZ$dolgoIme -# -#if (length(skl_Beseda) == 8){ -# odgSt2 <- c(odgSt, c("", "", "", "", "", "", "", "")) -# odgMin2 <- c(odgMin, c("", "", "", "", "", "", "", "")) -# odgMax2 <- c(odgMax, c("", "", "", "", "", "", "", "")) - # 'Povprecje' sklopov nastavimo na 10, zato, da je napis 'sklop' pri razvrscanju - # umescen pred napise dejavnikov -# odgMean2 <- c(odgMean, c(10, 10, 10, 10, 10, 10, 10, 10)) -# odgSd2 <- c(odgSd, c("", "", "", "", "", "", "", "")) -# vprZ.Sklop2 <- c(vprZ$sklop, c(1:8)) -#}else if (length(skl_Beseda) == 9){ -# odgSt2 <- c(odgSt, c("", "", "", "", "", "", "", "", "")) -# odgMin2 <- c(odgMin, c("", "", "", "", "", "", "", "", "")) -# odgMax2 <- c(odgMax, c("", "", "", "", "", "", "", "", "")) -# odgMean2 <- c(odgMean, c(10, 10, 10, 10, 10, 10, 10, 10, 10)) -# odgSd2 <- c(odgSd, c("", "", "", "", "", "", "", "", "")) -# vprZ.Sklop2 <- c(vprZ$sklop, c(1:9)) -#} - -# Napise sklopov glede na spremenljivko odgSklop_R2, povezemo s posameznimi dejavniki sklopa -#odgSklop_R2 = c(odgSklop_R, unlist(odgSklop)) - -#d39 <- data.frame(dolgoIme2, -# dolgoIme3, -# odgSt2, -# odgMin2, -# odgMax2, -# odgMean2, -# odgSd2, -# vprZ.Sklop2, -# odgSklop_R2, -# stringsAsFactors = F) - -#poSklopih_urejena <- arrange(d39, desc(odgSklop_R2), vprZ.Sklop2, desc(odgMean2)) -#poSklopih_urejena$odgMean2 <- formatC2(poSklopih_urejena$odgMean2, digits=1, format='f') -# Izbrišemo povprečja (10), ki smo jih uporabili za uvrščanje napisov sklopov -# pred pripadajoče dejavnike -#poSklopih_urejena$odgMean2[poSklopih_urejena$odgMean2 == "10.0"] <- "" - -# Iz podatkovnega okvirja izbrisemo spremenljivke, ki smo jih uporabili za razvrscanje -#poSklopih_urejena <- poSklopih_urejena[,2:7] -#colnames(poSklopih_urejena) <- c("\\textbf{Dejavnik}", "n", "min", "max", "povprečje", "sd") - -# Ta podatkovni okvir sluzi, kot baza tabelam: po_sklopih, po_sklopih_urejena, -# po_sklopih_po_kategorijah -# v vprZ$dolgoIme1 so polna imena dejavnikov, v naslednjem pa okrajšave - -d3 <- data.frame(vprZ$dolgoIme1, - vprZ$dolgoIme, - odgSt, - odgMin, - odgMax, - odgMean, - odgSd, - vprZ$sklop, - odgSklop_R, - stringsAsFactors = FALSE) - -# poSklopih -> vsiDejavniki -poSklopih <- arrange(d3[,c(1, 3, 6, 7)], desc(odgMean)) - -#Po sklopih za graf -poSklopih_graf <- d3[,c(1, 6)] -poSklopih_graf[1] <- vprZ$grafBeseda -poSklopih_graf <- arrange(poSklopih_graf, desc(odgMean)) -poSklopih_graf$odgMean <- round2(poSklopih_graf$odgMean, digits=1) -colnames(poSklopih_graf) <- c("grafBeseda", "odgMean") - -poSklopih$odgSt <- oklepajiVektor_f(as.numeric(unlist(poSklopih[2]))) -poSklopih$odgMean_obarvana <- barvanje_f(poSklopih[3]) -# V d3.2 so povprecja glede na dejavnik urejena po sklopih in padajocem povprecju sklopa -# in padajocem povp dejavnikov -d3.2 <- arrange(d3, desc(odgSklop_R), vprZ$sklop, desc(odgMean)) - -#Za barvanje vrstic -stVprasanj <- as.numeric() -stVprasanj.uQ <- unique(d3.2$vprZ.sklop) -for (i in stVprasanj.uQ){ - stVprasanj <- c(stVprasanj, length(d3.2$odgSt[d3.2$vprZ.sklop == i])) -} - -poSklopih_urejena <- arrange(d3, desc(odgSklop_R), vprZ$sklop, desc(odgMean)) -# Pridobimo unikatne ID-je sklopov, ki jih bomo nato povezali z napisi sklopov -idSklopov <- unique(poSklopih_urejena$vprZ.sklop) -# Napise sklopov uredimo glede na pripadajoce urejene dejavnike -napisiSklopov_addtorow <- sapply(idSklopov, function(x){napisiSklop[x]}) -# Pomembno, da so v tabeli s frekvencno porazdelitvijo odg, napisi sklopov prikazani v eni vrstici -napisiSklopov_addtorow_frekvencna <- paste0("\\multicolumn{11}{l}{\\textbf{", napisiSklopov_addtorow, "}}\\\\ ") -# Pomembno, da so v tabeli, kjer so dejavniki grupirani po sklopih, napisi sklopov -# prikazani v eni vrstici -napisiSklopov_addtorow <- paste0("\\multicolumn{6}{l}{\\textbf{", napisiSklopov_addtorow, "}}\\\\ ") - - -napisiSklopov_addtorow[seq(2,length(napisiSklopov_addtorow), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow[seq(2,length(napisiSklopov_addtorow), by=2)]) -# Pred napise sklopov dodamo črto -napisiSklopov_addtorow[2:length(napisiSklopov_addtorow)] <- paste0(napisiSklopov_addtorow[2:length(napisiSklopov_addtorow)]) - -#napisiSklopov_addtorow[length(napisiSklopov_addtorow)-1] <- paste0("\\hline ", napisiSklopov_#addtorow[length(napisiSklopov_addtorow)-1]) - -napisiSklopov_addtorow_frekvencna[seq(2,length(napisiSklopov_addtorow_frekvencna), by=2)] <- paste0("\\rowcolor[gray]{0.95}", napisiSklopov_addtorow_frekvencna[seq(2,length(napisiSklopov_addtorow_frekvencna), by=2)]) -# Za vrstico z imeni stoplcev pri tabeli s frekvencno porazdelitvijo narisemo crto -napisiSklopov_addtorow_frekvencna[1] <- paste0("\\hline ", napisiSklopov_addtorow_frekvencna[1]) - -# Mesta na katera bomo z addtorow v xtable izpisali sklope -mesta_addtorow <- c(1, cumsum(stVprasanj)[-length(stVprasanj)]) - - -#poSklopih_urejena$odgMean2 <- formatC2(poSklopih_urejena$odgMean2, digits=1, format='f') -# Izbrišemo povprečja (10), ki smo jih uporabili za uvrščanje napisov sklopov -# pred pripadajoče dejavnike -#poSklopih_urejena$odgMean2[poSklopih_urejena$odgMean2 == "10.0"] <- "" - -# Iz podatkovnega okvirja izbrisemo spremenljivke, ki smo jih uporabili za razvrscanje -poSklopih_urejena <- poSklopih_urejena[,2:7] -poSklopih_urejena[2] <- oklepajiVektor_f(as.numeric(unlist(poSklopih_urejena[2]))) -poSklopih_urejena$odgMean <- barvanje_f(poSklopih_urejena[5]) - -colnames(poSklopih_urejena) <- c("\\textbf{Dejavnik}", "n", "min", "max", "povprečje", "sd") - -# Tu sestavimo podatkovni okvir, ki ima dodana povprecja univerze v LJ. -poSklopih_primerjava_UL <- cbind(d3[1:27, 1:9], c(4.0, 3.9, 3.7, - 3.8, 3.8, 3.5, 3.6, - 3.9, 3.9, 4.2, 4.2, - 3.6, 3.6, 3.7, 3.7, 3.7, 3.7, - 3.5, 3.3, 3.4, 3.7, 3.8, - 3.2, 3.2, - 3.5, 3.7, - 3.9)) - -# Nekatera imena dejavnikov nekoliko okrajsamo, da vse pride v eno vrstico -poSklopih_primerjava_UL$vprZ.dolgoIme1[[6]] <- "Dovolj je primernega prostora za individualno učenje (čitalnice, učilnice)." -poSklopih_primerjava_UL$vprZ.dolgoIme1[[24]] <- "Med študijem sem spoznal ustrezno število zunanjih inštitucij." - -# Uredimo glede mediano povprecij sklopa, idSklopa, povprecje -poSklopih_primerjava_UL <- arrange(poSklopih_primerjava_UL, desc(odgSklop_R), vprZ.sklop, - desc(odgMean)) - -stVprasanj_primerjava_UL <- as.numeric() -stVprasanj_primerjava_UL.uQ <- unique(poSklopih_primerjava_UL$vprZ.sklop) -for (i in stVprasanj_primerjava_UL.uQ){ - stVprasanj_primerjava_UL <- c(stVprasanj_primerjava_UL, length(poSklopih_primerjava_UL$odgSt[poSklopih_primerjava_UL$vprZ.sklop == i])) -} - -poSklopih_primerjava_UL <- poSklopih_primerjava_UL[1:27,c(1,2,6, 10)] -# Izracunamo in pripisemo indekse -poSklopih_primerjava_UL[5] <- as.numeric(formatC2(( - round2(unlist(poSklopih_primerjava_UL[3]), digits=1) / unlist(poSklopih_primerjava_UL[4]))*100, digits=0, format = 'f')) - -#poSklopih_primerjava_UL$odgMean <- formatC2(poSklopih_primerjava_UL$odgMean, digits=1, format='f') - -# Za barvanje stolpcev / napisov label grafa z indeksi -poSklopih_primerjava_UL_graf <- poSklopih_primerjava_UL[,-1] -barva_index <- as.character() -for (i in 1:nrow(poSklopih_primerjava_UL_graf)){ - if(poSklopih_primerjava_UL_graf$V5[i] > 120){ - barva_index[i] <- "#006666" - }else if (poSklopih_primerjava_UL_graf$V5[i] <= 120 & - poSklopih_primerjava_UL_graf$V5[i] > 110){ - barva_index[i] <- "#36BF4B" - }else if (poSklopih_primerjava_UL_graf$V5[i] >= 80 & - poSklopih_primerjava_UL_graf$V5[i] < 90){ - barva_index[i] <- "#F58137" - }else if (poSklopih_primerjava_UL_graf$V5[i] < 80){ - barva_index[i] <- "#B6321C" - }else{ - barva_index[i] <- "#000000" - } - -} -poSklopih_primerjava_UL_graf$barva <- barva_index - -# Spodnja koda pride v postev, za line chart, oz. graf, kjer je vsak dejavnik, prikazan loceno # glede na fakulteto in UL -# Npr. Zadovoljstvo s prog. (UL) - 3.5, Zadovoljstvo s prog. (FDV) - 3.5 - - -#poSklopih_primerjava_UL_graf <- poSklopih_primerjava_UL_graf[rep(seq_len(nrow(poSklopih_primerjava_UL_graf)), each=2),] -#poSklopih_primerjava_UL_graf[seq(2,54, 2), 2] <- poSklopih_primerjava_UL_graf[seq(2,54, 2), 3] -#poSklopih_primerjava_UL_graf <- cbind(rep(c(fakulteta, "UL"), 27), poSklopih_primerjava_UL_graf) -#poSklopih_primerjava_UL_graf <- cbind(rep(c(1, 2), 27), poSklopih_primerjava_UL_graf) - -#colnames(poSklopih_primerjava_UL_graf) <- c("ID", "Fakulteta", "dolgoIme", -# "odgMean", "3", "index", "barva") - -colnames(poSklopih_primerjava_UL_graf) <- c("dolgoIme", - "odgMean", "3", "index", "barva") -# Tabelo uredimo glede na indeks -poSklopih_primerjava_UL_graf <- arrange(poSklopih_primerjava_UL_graf, desc(index)) - - -# V tabeli uporabimo daljse napise dejavnikov, zato odstranimo krajse -poSklopih_primerjava_UL <- poSklopih_primerjava_UL[,-2] - -# Obarvamo povprecja -poSklopih_primerjava_UL[2] <- barvanje_f(poSklopih_primerjava_UL[2]) -poSklopih_primerjava_UL[3] <- barvanje_f(poSklopih_primerjava_UL[3]) - -colnames(poSklopih_primerjava_UL) <- c("Dejavnik", fakulteta, "UL", "Indeks") -poSklopih_primerjava_UL_index <- arrange(poSklopih_primerjava_UL, desc(Indeks)) - -# Obarvamo indekse -poSklopih_primerjava_UL_index$Indeks <- barvanje_f_index(poSklopih_primerjava_UL_index$Indeks) - -# Indeksi, ki jih uporabimo pri tekstovnih povzetkih -najboljsi <- poSklopih_primerjava_UL_index$Dejavnik[1] -najboljsi_povp <- poSklopih_primerjava_UL_index[[2]][1] -najboljsi_povp_UL <- poSklopih_primerjava_UL_index[[3]][1] -najboljsi_indeks <- poSklopih_primerjava_UL_index[[4]][1] - -najslabsi <- poSklopih_primerjava_UL_index$Dejavnik[27] -najslabsi_povp <- poSklopih_primerjava_UL_index[[2]][27] -najslabsi_povp_UL <- poSklopih_primerjava_UL_index[[3]][27] -najslabsi_indeks <- poSklopih_primerjava_UL_index[[4]][27] - - -#Zaradi kasnejsega urejanja po velikosti glede na povp. seznam pretvorimo v df. -dfZ <- as.data.frame(sklop_Z, stringsAsFactors = FALSE) -dfZ <- as.data.frame(lapply(dfZ, unlist), stringsAsFactors = FALSE) -#Dodamo stevilo vprasanj glede na sklop -if (dodatniSklop == 1){ - dfZ$stVprasanj <- c(3, 4, 4, 6, 5, 2, 2, 1, 3) -}else{ - dfZ$stVprasanj <- c(3, 4, 4, 6, 5, 2, 2, 1) -} - -#Uredimo po velikosti glede na odgSklop (povp. sklopa) -dfZ <- dfZ[with(dfZ, order(dfZ$odgSklop, decreasing = TRUE)), ] - -###### -###### -#####!!!!!! -#### katere vrstice naj bodo obarvane: -# ker dodamo vrstice Sklop, moramo vsem stevilom vprasanj pristeti +1 -#stVprasanj <- stVprasanj + 1 -d4_R <- stVprasanj - -d4_temp <- 0 -d4_R2 <- as.numeric() -for (i in (1:length(stVprasanj))){ - if (i %% 2 == 0){ - for(j in(1:stVprasanj[i])){ - d4_R2 <- c(d4_R2, j+d4_temp) - } - d4_temp <- d4_temp + stVprasanj[i] - } - else{ - d4_temp <- d4_temp + stVprasanj[i] - } -} - - -#Drugace obarvanje zamakne za eno vrstico -d4_R2 <- d4_R2 - 1 - -#Alternirajoce barvanje vrstic: dolocitev barve in vrstic, ki bodo obarvane -#rws3 <- seq(1, (nrow(d3)-1), by = 2) -#col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) - -#Data frame z arrange iz dplyr uredimo glede na mean narascajoce -#z digits dolocamo st. decimalnih mest po stolpcih -#align povravnava in sirina stolpcev -#add.to.row: alternirajoce baravanje vrstic -#'longtable', za to, da se tabela nadaljuje -#floating = false, mora biti pri longtable drugace lahko vrne opozorilo -@ -\section{Povzetek} -%Anketa o splošnih vidikih študijskega procesa študentov na prvi in drugi stopnji programov \Sexpr{fakulteta} je potekala od julija do konca drugega semestra. Osnovni vprašalnik je vključeval ocene zadovoljstva za 27 dejavnikov študijskega procesa, združenih v osem sklopov. V nadaljevanju povzemamo ključne ugotovitve. Ocene, ki pozitivno ali negativno izstopajo, dodatno obarvane (podrobnosti so v Metodologiji). \\\\ - -Povzemamo glavne ugotovitve ankete, v kateri so študenti prve in druge stopnje \Sexpr{fakulteta} (\Sexpr{celaLetnica_dolga}) ocenjevali zadovoljstvo z dejavniki študijskega procesa. Povprečja dejavnikov, ki na lestvici 1-5 izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji).\\ - - -<>= -# download html -#html <- getURL("http://ul.1ka.si/c/4/Abstrakt/", followlocation = TRUE, .encoding = "utf-8") - -# parse html -#doc = htmlParse(html, asText=TRUE) -#plain.text <- xpathSApply(doc, "//p", xmlValue, encoding ="utf-8") -#text <- paste(plain.text[3:5], collapse = "\n") -#text <- gsub("• ", "\\\\item ", text) -#text <- gsub("%", "\\\\% ", text) -#Avtomatizitanje text-a -#Zamenjamo dogovorjene znacke -#Vsaki štirje \ v gsub za enega v latex-u *pri paste le dva -#text <- gsub("\\[seznam\\]", "\\\\begin{itemize} ", text) -#text <- gsub("\\[\\\\seznam\\]", "\\\\end{itemize} ", text) -#text <- gsub("\\[povprecje1\\]", round2(d3.3[[5]][[1]], digits = 2), text) -#text <- gsub("\\[napis1\\]", d3.3[[1]][[1]] , text) -#text <- gsub("\\[povprecje2\\]", round2(d3.3[[5]][[2]], digits = 2), text) -#text <- gsub("\\[napis2\\]", d3.3[[1]][[2]] , text) -#text <- gsub("\\[povprecje3\\]", round2(d3.3[[5]][[3]], digits = 2), text) -#text <- gsub("\\[napis3\\]", d3.3[[1]][[3]] , text) -#text <- gsub("\\[OD\\]", min(veljavneEnote[[1]]$itime), text) -#text <- gsub("\\[DO\\]", max(veljavneEnote[[1]]$itime) , text) -#text <- gsub("\\[minPovp\\]", round2(d3.3[[5]][[nrow(d3.3)]], digits = 2), text) -#text <- gsub("\\[napisZadnji\\]", d3.3[[1]][[nrow(d3.3)]] , text) -#text <- gsub("\\[splF\\]", round2(d3.3["Q19a", 5], digits = 2), text) - -#Ocene nad 4 -#text <- gsub("Ocene nad 4:", paste0("Ocene nad 4: ", as.character(dfZ$napisiSklop[1])), text) -#text <- paste0(text, "\\\\ Študenti so dobro ocenili: ", "\\begin{itemize} ") -#for (i in 1:length(dfZ$tip[dfZ$tip == 2])){ -# text <- paste0(text, "\\item ", dfZ[,i][dfZ$tip == 2][i]) -#} -#text <- paste0(text," \\end{itemize} ") - -#Uredimo posamezne sklope glede na povprecje (padajoce) -# Nejasno: Zakaj sploh nova spremenljivka, ce ze imamo isti vrstni red v vprZ3? -odgMean1 <- round2(odgMean, digits=1) -odgMean1<- c(sort(odgMean1[1:3], decreasing=TRUE), - sort(odgMean1[4:7], decreasing=TRUE), - sort(odgMean1[8:11], decreasing=TRUE), - sort(odgMean1[12:17], decreasing=TRUE), - sort(odgMean1[18:22], decreasing=TRUE), - sort(odgMean1[23:24], decreasing=TRUE), - sort(odgMean1[25:26], decreasing=TRUE), - odgMean1[27]) - -if (dodatniSklop == 1){ - odgMean1 <- c(odgMean1, sort(odgMean[28:(28+length(napisi_dodatniSklop_priloga)-1)], decreasing=TRUE)) -} - -# Pomembno, da pravilno obarva povprecja -# imena_odgMean1 <- names(odgMean1) -# odgMean1 <- as.numeric(formatC2(odgMean1, digits=1, format ='f')) - -######## -##### -### POVZETEK -####### -########## - -# Splosna struktura: 1) funkcija z argumenti 'stVecjih', 'stManjsih', 'stSledijo', -# 'izhodisce' - -# 2) Sestavimo okvir z urejenimi sklopi GLEDE NA, tipa 1-5 -# Poklicemo funkcijo, ki izpise text za sklope v okviru tipa 1-5 -# tip 1: >4.5; tip2: vecje ali enako 4 in manjse od 4.5; tip 1: <3 - -# Pomoznim podatkom dejavnikov pripisemo povprecja, da jih lahko razvrscamo / klicemo -# po padajocem povprecju znotraj posameznega sklopa - -vprZ3 <- vprZ -vprZ3 <- cbind(vprZ, odgMean) -vprZ3 <- arrange(vprZ3, sklop, desc(odgMean)) -vprZ3$odgMean <- as.numeric(formatC2(vprZ3$odgMean, digits = 1, format = 'f')) - - -# Preveri ali se res ne da enostavneje (primerjava celih stevil) -# Barvanje povprecij dejavnikov (pod 3 je rdeca, pod 4 oranzna, nad 4.5 zelena) -# Zaokrozimo na eno decimalko -# Zanimivo, da ima tezave, glede na prvi lapply, le pri stevilih med 3 in 4 - - -# Drugace problem pri paste0, npr. 4.0 spremeni v 4 -# paste0(formatC2(x, digits=1, format='f')) -# Torej formatC2, moramo uporabiti (tudi) pri paste0 - - -odgMean1 <- lapply(odgMean1, function(x){ - - if(x >= 4.5){ - paste0("\\textcolor[HTML]{006666}{\\textbf{", - formatC2(x, digits=1, format='f'), "}}") - } - #else if (x >= 4){ - # paste0("\\textcolor[HTML]{36BF4B}{\\textbf{", - # formatC2(x, digits=1, format='f'), "}}") - #} - else if (x >= 4){ - paste0("\\textbf{\\textcolor[HTML]{36BF4B}{", - formatC2(x, digits=1, format='f'), "}}") - } - else if (x >= 3.5 & x < 4){ - paste0("", - formatC2(x, digits=1, format='f'), "") - } - else if (x >= 3 & x < 3.5){ - paste0("\\textcolor[HTML]{F58137}{\\textbf{", - formatC2(x, digits=1, format='f'), "}}") - } - else if(x < 3){ - paste0("\\textcolor[HTML]{B6321C}{\\textbf{", - formatC2(x, digits=1, format='f'), "}}") - } - -}) - - -napisiIzhodisce <- list() - -#Za povprečja manjsa od 3 -napisiIzhodisce[[1]] <- c("Kritično je ocenjen dejavnik:", - "Kritično sta ocenjena dejavnika:", - "Kritično so ocenjeni dejavniki:", - "") - -# Za povprečja manjsa od 3.5 in vecja od 3 -napisiIzhodisce[[2]] <- c("Zelo veliko prostora za izboljšave ima dejavnik:", - "Zelo veliko prostora za izboljšave imata dejavnika:", - "Zelo veliko prostora za izboljšave je pri dejavnikih:", - "") - -# Za povprečja manjsa od 4 in vecja od 3.5 -napisiIzhodisce[[3]] <- c("Dobro je ocenjen dejavnik:", - "Dobro sta ocenjena dejavnika:", - "Dobro so ocenjeni naslednji dejavniki:", - "") - -# Za povprečja manjsa od 4.5 in vecja od 4 -napisiIzhodisce[[4]] <- c("Zelo dobro je ocenjen dejavnik:", - "Zelo dobro sta ocenjena dejavnika:", - "Zelo dobro so ocenjeni naslednji dejavniki:", - "") - -#Napisi za povprečja večja od 4.5 -napisiIzhodisce[[5]] <- c("Odlično je ocenjen dejavnik:", - "Odlično sta ocenjena dejavnika:", - "Odlično so ocenjeni naslednji dejavniki:", - "") - - -# Funkcija, ki določi napis in ločilo za izpis 'stSledijo' -# 'stSledijo' so tisti, ki spadajo v ta (izhodiscni) sklop - -# Funkcija, ki določi napis in ločilo za izpis pri tistih sklopih, ki nimajo -# vecjih ali manjsih - -napisLocilo <- function(k){ - if((stSledijo==1 & k == 1) | k == stSledijo){ - locilo <- "." - y <- 1 - } - else if (stSledijo >= 2 & k == stSledijo-1) { - locilo <- " in" - y <- 2 - } - else if ((stSledijo>2 & k!= 1) & k!= stSledijo ){ - locilo <- "," - y <- 3 - } - else if (stSledijo > 2 & k == 1){ - locilo <- "," - y <- 3 - } - return(list(locilo, y)) -} - -# To Do: zamenjaj vrstni red, da bo pri klicanju enako kot tu -# (stVecjih, stSledijo, stManjsih) - -# Funkcija, ki izpise povzetek glede na -# x - stVecjih, x2 - stManjsih, x3 - stSledijo, x4 - izhodisce -# glede na izhodisce dolocimo napise glede na razdaljo povprecja -# od povprecja sklopa -# Izhodisca: > 4.5 = 5; vecje ali enako 4 in manjse od 4.5 = 4;... <3 = 1 - -povzetek_f <- function(x, x2, x3, x4){ - -# ki nam pomaga dolociti napise (npr. neprimerno boljse / slabse, izrazito...) -izhodisce <- x4 - - -# Ce obstaja kaksen dejavnik, ki je vecji od sklopa v katerega je umescen -if (x > 0){ - - #S krepko pisavo izpise ime sklopa - text <- paste0(text, "\\item \\textbf{", dfX[,1][[i]], ":} ") - - # Padajoce urejena povprecja dejavnikov za i-ti sklop v dfX - # V dfX so sklopi izbranega tipa - povp_zaIzpis <- povpSklopi_zaIzpis$odgMean_rounded[povpSklopi_zaIzpis$idSklopov_zaIzpis==dfX[i,2]] - - # Izlocimo samo vecja povprecja od sklopa, da jim lahko dolocimo razdaljo - # od izhodisca - vecji <- povp_zaIzpis[c(1:stVecjih)] - vecji_opis <- list() - razdalja <- list() - - # Vsakemu povprecju doloci razdaljo od izhodisca - # Mozne razdalje so od 3 - 0 - # 3 izraza neprimerno boljse; 0 pa nekoliko boljse - for (ix in 1:length(vecji)){ - - if (vecji[[ix]] > 4.5) { - vecji_opis[[ix]] <- 4 - }else if(vecji[[ix]] > 4 ) { - vecji_opis[[ix]] <- 3 - }else if (vecji[[ix]] > 3.5) { - vecji_opis[[ix]] <- 2 - }else if (vecji[[ix]] > 3) { - vecji_opis[[ix]] <- 1 - } - razdalja[[ix]] <- vecji_opis[[ix]] - izhodisce - - } - - # Dolocimo napise glede na razdaljo - - vecji.napis_tip0 <- c("Nekoliko bolje ") - vecji.napis_tip1 <- c("Precej bolje ") - vecji.napis_tip2 <- c("Izrazito bolje ") - vecji.napis_tip3 <- c("Neprimerno bolje ") - - - st_razdalja_stiri <- length(unlist(razdalja)[razdalja==3]) - - if(st_razdalja_stiri > 0){ - # Dolocimo locila in napis glede na stevilo dejavnikov razdalje 3 - # locilo pripisemo vsakemu dejavniku posebej - # napisiText upostevamo samo pri prvem dejavniku - for (j in (1: st_razdalja_stiri)){ - - if(st_razdalja_stiri==1 | j == st_razdalja_stiri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_stiri==2 | j == st_razdalja_stiri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 3 - # npr. vecji.napis_tip3 = "Neprimerno boljše " - # napisiText = "sta ocenjena dejavnika" - # vprZ3... = Dolgo ime vidika - # odgMean.. = povprecje vidika - - if (j==1){text <- paste0(text, vecji.napis_tip3, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - - if(st_razdalja_tri > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 2 - for (j in (1: st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 2 - if (j==1){ text <- paste0(text, vecji.napis_tip2, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - - if(st_razdalja_dve > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 1 - for (j in (1: st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 1 - if (j==1){ text <- paste0(text, vecji.napis_tip1, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - - st_razdalja_ena <- length(unlist(razdalja)[razdalja == 0]) - - if(st_razdalja_ena > 0){ - #Dolocimo locila in napis glede na stevilo dejavnikov razdalje 0 - for (j in (1: st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - - y <- 2 - } - else if (stVecjih>2 & j!= st_razdalja_stiri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - - y <- 3 - } - - #Zanka izpise napis, dejavnike in njihova povprecja razdalje 0 - # Sprememba - if (j==1){ text <- paste0(text, vecji.napis_tip0, napisiText)} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j],"'} ", - "(",odgMean1[ii][j],")", locilo) - - } - } - -# 2. Sledijo: to so tisti dejavniki, katerih povprecje spada v povprecje sklopa -# Kljub temu imajo vsaj en dejavnik, ki ima povp vecjo od intervala mediane -# kamor je uvrscen sklop. -if (x3 > 0){ - for (k in ((stVecjih+1):(stVecjih+stSledijo))){ - # k- stvecjih - # pomembno, da pravilno doloci locilo - locilo <- napisLocilo(k-stVecjih)[[1]] - - # Dolocimo 'je / sta / so' za napisiIzhodisce - if (stSledijo == 1){ - y2 <- 1 - napisSledijo <- " Sledi " - }else if(stSledijo == 2){ - y2 <- 2 - napisSledijo <- " Sledita " - }else if(stSledijo > 2){ - y2 <- 3 - napisSledijo <- " Sledijo " - ### ???? - }else if(stSledijo+stVecjih == 0){ - y2 <- 4 - } - - if (k == stVecjih+1){text <- paste0(text, napisSledijo)} - #if (k == stVecjih+1){text <- paste0(text, napisSledijo, napisiIzhodisce[[x4]][y2])} - - text <- paste0(text, - " \\textit{'", - vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - } - } -} - -# Izpis povzetka za sklop, katerega dejavniki glede na povprecja v celoti pasejo vanj -else { -text <- paste0(text, "\\item \\textbf{", dfX[,1][i], ":} ") -for (k in (1:(x3))){ -izhodisce <- x4 - # x3 - stevilo dejavnikov, ki pasejo v ta sklop - # izberemo obliko je / sta / so - # glede na stevilo vidikov - - if(x3==1){ - st <- 1 - }else if(x3==2){ - st <- 2 - }else if(x3>2){ - st <- 3 - } - - #if(k==1){text <- paste0(text, napisiIzhodisce[[izhodisce]][st])} - if(k==1){text <- paste0(text)} - - locilo <- napisLocilo(k)[[1]] - x <- napisLocilo(k)[[2]] - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][k],"'} ", - "(",odgMean1[ii][k],")", locilo) - -} -} - -############################################## -# 3. stManjsih -# Glej opis za 1.) stVecjih - -#Ce je v sklopu kaksen dejavnik s povprecjem manjsim od povp. skopa -if (x2>0){ - izhodisce <- x4 - - povp_zaIzpis <- povpSklopi_zaIzpis$odgMean_rounded[povpSklopi_zaIzpis$idSklopov_zaIzpis==dfX[i,2]] - - manjsi <- povp_zaIzpis[c((stVecjih+stSledijo+1):length(povp_zaIzpis))] - manjsi_opis <- list() - razdalja <- list() - - - for (ix in 1:length(manjsi)){ - - if (manjsi[[ix]] <= 4.5 & manjsi[[ix]]>4) { - manjsi_opis[[ix]] <- 5 - }else if(manjsi[[ix]] <= 4 & manjsi[[ix]]>3.5) { - manjsi_opis[[ix]] <- 4 - }else if (manjsi[[ix]] <= 3.5 & manjsi[[ix]]>3) { - manjsi_opis[[ix]] <- 3 - }else if (manjsi[[ix]] <= 3) { - manjsi_opis[[ix]] <- 2 - } - # Pri vecjih dodamo +11 - razdalja[[ix]] <- manjsi_opis[[ix]] - izhodisce - - } - manjsi.napis_tip0 <- c(" Nekoliko slabše ") - manjsi.napis_tip1 <- c(" Precej slabše ") - manjsi.napis_tip2 <- c(" Izrazito slabše ") - manjsi.napis_tip3 <- c(" Neprimerno slabše ") - - - st_razdalja_ena <- length(unlist(razdalja)[razdalja==0]) - - # Ce obstaja vsaj eno povprecje, ki je za eno razdaljo manjse od sklopa - if (st_razdalja_ena > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_ena)){ - - if(st_razdalja_ena==1 | j == st_razdalja_ena){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_ena==2 | j == st_razdalja_ena-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_ena){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip0, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_dve <- length(unlist(razdalja)[razdalja==1]) - if(st_razdalja_dve > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_dve)){ - - if(st_razdalja_dve==1 | j == st_razdalja_dve){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_dve==2 | j == st_razdalja_dve-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_dve){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip1, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==2]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip2, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - - st_razdalja_tri <- length(unlist(razdalja)[razdalja==3]) - if(st_razdalja_tri > 0){ - - #Dolocimo locila in napis glede na stevilo dejavnikov vecjih od 4.5 - for (j in (1:st_razdalja_tri)){ - - if(st_razdalja_tri==1 | j == st_razdalja_tri){ - locilo <- "." - napisiText <- "je ocenjen dejavnik " - y <- 1 - } - else if (st_razdalja_tri==2 | j == st_razdalja_tri-1){ - locilo <- " in" - napisiText <- "sta ocenjena dejavnika " - y <- 2 - } - else if (stManjsih>2 & j!= st_razdalja_tri){ - locilo <- "," - napisiText <- "so ocenjeni dejavniki " - y <- 3 - } - #Zanka izpise napis, dejavnike in njihova povprecja za manjse od 3.5 - if (j==1){ text <- paste0(text, manjsi.napis_tip3, napisiText[j])} - text <- paste0(text, - " \\textit{'", vprZ3$dolgoIme1[vprZ3$sklop == dfX[[i,2]] ][j+stVecjih+stSledijo], - "'} ", - "(",odgMean1[ii][j+stVecjih+stSledijo],")", locilo) - } - } - -} - - return(text) -} - -text <- as.character() - -# Funkcija, ki doloci napise pri n -auto.NapisSklop_f <- function(x=0){ - # Pri tem napisu je struktura nekoliko drugacna - if (x==1){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pri naslednjem sklopu " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "je pri naslednjih dveh sklopih " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "je pri naslednjih sklopih " - } - }else if(x==2){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pozitivno ocenjen naslednji sklop, ki pa ima še precej prostora za izboljšave " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta pozitivno ocenjena naslednja sklopa, ki pa imata še precej prostora za izboljšave " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so pozitivno ocenjeni naslednji sklopi, ki pa imajo še precej prostora za izboljšave " - } # Pri teh napisih ne potrebujemo presledka - }else if (x==5){ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je pri naslednjem sklopu" - }else if (nrow(dfX)==2){ - auto.napis_NS <- "je pri naslednjih dveh sklopih" - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "je pri naslednjih sklopih" - } - }else{ - if (nrow(dfX) == 1){ - auto.napis_NS <- "je ocenjen naslednji sklop " - }else if (nrow(dfX)==2){ - auto.napis_NS <- "sta ocenjena naslednja sklopa " - }else if (nrow(dfX)>=3){ - auto.napis_NS <- "so ocenjeni naslednji sklopi " - } - } - return(auto.napis_NS) -} - -# Sestavimo okvir za vsak tip (1-5) -# Za vse sklope s povprečjem >=4.5 & <5 -# Znotraj dolocimo argumente funkcije povzetek_f -# in jo poklicemo znotraj vsakega tipa -# tipe smo dolocili pri z zanko, ki gre cez sklop_Z (povprecja sklopov) -# *podroben opis samo pri prvem pri ostalih se ponovi - -dfX <- subset(dfZ, dfZ$tip == 1) -if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f() - text <- paste0(text, "Odlično ", auto.napis_NS, - "(mediana dejavnikov je v intervalu 4.5 - 5.): \\begin{itemize}") - - for (i in (1:nrow(dfX)) ){ - # Dolocimo kratkoIme vprasanj v tem sklopu - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - # V tem sklopu ne more biti dejavnikov z vecjim povprecjem od njega - stVecjih <- 0 - - # Povprecje tega sklopa je vecje od 4.5 (tip = 1) - # prestejemo dejavnike, ki imajo sklop enak i-temu elementu dfX-a - # in so manjsi od 4.5 - - # Glede na to, da smo se odlocili, da opisne ocene niso ok, jih izklopimo - # kar pomeni, da povsod pustimo samo stSledijo. - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean <= 4.5]) - stManjsih <- 0 - - stSledijo <- stDejavnikov - stManjsih - - # zadnji argument je izhodisce od katerega v funkciji povzetek_f - # racunamo razdaljo in dolocamo napise za dejavnike, ki imajo povp. - # vecje ali manjse od svojega sklopa - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 5) - - } - text <- paste0(text," \\end{itemize}") -} - -# Izpis texta za ocene med 4 in 4.5 -dfX <- subset(dfZ, dfZ$tip == 2) -if (nrow(dfX) != 0){ - -auto.napis_NS <- auto.NapisSklop_f() -text <- paste0(text, "Zelo dobro ", auto.napis_NS, - "(mediana dejavnikov je v intervalu 4.0 - 4.5): \\begin{itemize}") - -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 4.5]) - stVecjih <- 0 - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean <= 4]) - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 4) - -} - text <- paste0(text," \\end{itemize}") -} - - -#Ocene med 3.5 in 4 -dfX <- subset(dfZ, dfZ$tip == 3) - -if (nrow(dfX) != 0){ - auto.napis_NS <- auto.NapisSklop_f(2) - text <- paste0(text, "V celoti gledano ", auto.napis_NS, "(mediana dejavnikov je v intervalu 3.5 - 4.0): \\begin{itemize}") - # Zanka gre cez posamezne sklope -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] & vprZ3$odgMean > 4]) - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] & vprZ3$odgMean <= 3.5]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 3) -} - -text <- paste0(text," \\end{itemize}") -} - -#if (length(dfZ$tip[dfZ$tip == 3] > 2 )){ -# text <- paste0(text, dfZ$napisiSklop[1]) -#} -#Ocene nad 3 in manj kot 3.5 -dfX <- subset(dfZ, dfZ$tip == 4) -if (nrow(dfX) != 0){ - # 5, zato, ker so tu napisi nekoliko drugacni (ne potrebujemo presledka) - auto.napis_NS <- auto.NapisSklop_f(5) - - text <- paste0(text, "Veliko prostora za izboljšave ", - auto.napis_NS, ", kjer je pozitivno oceno (4 ali 5) podala manj kot polovica študentov", - " (mediana dejavnikov je v intervalu 3.0 - 3.5): \\begin{itemize}") - -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 3.5]) - - #stManjsih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean <= 3]) - stVecjih <- 0 - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] )-stVecjih -stManjsih - - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 2) - -} -text <- paste0(text," \\end{itemize}") -} - -#Ocene pod 3 -dfX <- subset(dfZ, dfZ$tip == 5) -if (nrow(dfX) != 0){ - -auto.napis_NS <- auto.NapisSklop_f() -text <- paste0(text, - "Kritično nizko ", auto.napis_NS, - "(mediana dejavnikov je manjša od 3.): \\begin{itemize}") - -for (i in (1:nrow(dfX)) ){ - ii <- vprZ3$kratkoIme[vprZ3$sklop == dfX[i,2]] - - stDejavnikov <- length(vprZ3$id[vprZ3$sklop == dfX[i,2] ]) - - #stVecjih <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]] - # & vprZ3$odgMean > 3]) - stVecjih <- 0 - - stManjsih <- 0 - stSledijo <- length(vprZ3$kratkoIme[vprZ3$sklop == dfX[[i,2]]] ) -stVecjih - text <- povzetek_f(stVecjih, stManjsih, stSledijo, 1) - -} -text <- paste0(text," \\end{itemize}") -} -text <- paste0(text, "Podrobna primerjava rezultatov z drugimi članicami UL je na povezavi \\url{http://ul.1ka.si}.") - -text <- cat(gsub("\\[BR\\]", "\\\\\\\\", text)) -@ -%\vfill \hyperlink{thesentence}{*Način avtomatskega generiranja povzetka je opisan v prilogi 2.} -\newpage -\tableofcontents -\newpage -\section{Metodologija} -<>= -#html <- getURL("http://ul.1ka.si/c/5/Uvod/", followlocation = TRUE, .encoding = "utf-8") -# parse html -#doc = htmlParse(html, asText=TRUE) -#plain.text <- xpathSApply(doc, "//p", xmlValue, encoding ="utf-8") -#plain.text <- plain.text[3:12] -library(rvest) -page <- read_html("http://ul.1ka.si/c/5/Uvod/") -plain.text <- page %>% html_nodes ("#main p") %>% html_text()%>%as.character() -#plain.text <- page %>% html_nodes ("#main :nth-child(1)") %>% html_text()%>%as.character() - - - -text <- gsub("\\[seznam\\]", "\\\\begin{itemize} ", plain.text) -text <- gsub("\\[\\\\seznam\\]", "\\\\end{itemize} ", text) -text <- gsub("• ", "\\\\item ", text) -text <- gsub("%", "\\\\% ", text) -#plain.text <- gsub("[\r\n]", "", plain.text) -text <- gsub("\\[P\\]", stVrsta.vsi[length(stVrsta.vsi)], text) -text <- gsub("\\[Z\\]", stVrsta.r[length(stVrsta.r)], text) -text <- gsub("\\[I\\]", vsehT1, text) -text <- gsub("\\[br\\]", "\\\\\\\\", text) -#text <- gsub("\\[link\\]", "{\\\\color{blue}{", text) -#text <- gsub("\\[\\\\link\\]", "}}", text) -text <- gsub("\\[bold\\]", "{\\\\textbf{", text) -text <- gsub("\\[\\\\bold\\]", "}}", text) -text <- gsub("\\[link\\]", "{\\\\url{", text) -text <- gsub("\\[\\\\link\\]", "}}", text) -text <- gsub("\\[koren\\]", "$\\\\sqrt{", text) -text <- gsub("\\[\\\\koren\\]", "}$", text) -#text <- gsub("\\[\\\\link\\]", "}}", text) -text <- gsub("\\[rdeca\\]", "\\\\textcolor[HTML]{B6321C}{\\\\textbf{", text) -text <- gsub("\\[\\\\rdeca\\]", "}}", text) -text <- gsub("\\[oranzna\\]", "\\\\textcolor[HTML]{F58137}{\\\\textbf{", text) -text <- gsub("\\[\\\\oranzna\\]", "}}", text) -text <- gsub("\\[zelena\\]", "\\\\textcolor[HTML]{36BF4B}{\\\\textbf{", text) -text <- gsub("\\[\\\\zelena\\]", "}}", text) -text <- gsub("\\[temnoZelena\\]", "\\\\textcolor[HTML]{006666}{\\\\textbf{", text) -text <- gsub("\\[\\\\temnoZelena\\]", "}}", text) -cat(text, "") - -#Odgmean za text povezava z id-ji sklopov -#!!! awer <- odgMean[vprZ$sklop == 2] - -@ -%\vfill -%*Besedilo je zajeto s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/} -\newpage -\section{Sodelovanje študentov glede na program in letnik} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov po študijskih programih, letnikih in stopnjah študija. V koloni "odgovoril" je z oklepaji označeno morebitno nižje število odgovorov (glej poglavje Metodologija), ki zahteva več previdnosti pri interpretacijah. -<>= -# Izpis tabele: Sodelovanje študentov glede na študijski program -#napisiT1 <- c("pristopili", "zavrnili") -#Dodamo multicolumns in črto nad njimi -addtorow <- list() -addtorow$pos <- list(-1, -1, 0) -# \\multicolumn{2}{r|}{\\textbf{zavrnili}} Za r, moramo ponoviti crto (|) iz align -# Drugace se pri multicolumn konca - -# Vse vrstice nad \endhead se ponovijo na vsaki strani -# Pomembno, da ponovi glavo tudi pri naslednjih straneh pri longtable -# /toprule /hline, namesto dvakrat /hline, ker drugace -# longtable izpise samo eno odebeljeno crto - -addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{1}{r|}{\\textbf{stopnja}} & \\multicolumn{2}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Sodelovanje študentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{1}{r|}{\\textbf{stopnja}} & - \\multicolumn{2}{r|}{\\textbf{pristopili}} - & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & & $n_0$ & \\% & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - - -print(xtable(struktura_studijski_program, - align=c("l", "p{8.7cm}", "c|", "c", "c|", "c", "c|", "c", "c|"), - caption = "Sodelovanje študentov glede na študijski program"), - caption.placement="top", - include.rownames = FALSE, - add.to.row = addtorow, - floating = FALSE, - tabular.environment = "longtable", - sanitize.colnames.function = function(x){x}, - sanitize.text.function = function(x){x}, - hline.after = hlines) #aktiviramo dolocene crte - -# Po stolpcih -addtorow <- list() -addtorow$pos <- list(-1, -1, 0) -# \\multicolumn{2}{r|}{\\textbf{zavrnili}} Za r, moramo ponoviti crto (|) iz align -# Drugace se pri multicolumn konca - -# Vse vrstice nad \endhead se ponovijo na vsaki strani -# Pomembno, da ponovi glavo tudi pri naslednjih straneh pri longtable -# /toprule /hline, namesto dvakrat /hline, ker drugace -# longtable izpise samo eno odebeljeno crto - -addtorow$command <- c("\\midrule[0.4pt]\\hline", paste0(paste0('\\textbf{Program} & \\multicolumn{1}{r|}{\\textbf{stopnja}} & \\multicolumn{1}{r|}{\\textbf{pristopili}} & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & \\multicolumn{2}{r|}{\\textbf{zavrnili}}', collapse=''), "\\\\ \\hline"), - "\\hline - \\endfirsthead - \\caption{Struktura študentov glede na sodelovanje po programih - - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{Program} & - \\multicolumn{1}{r|}{\\textbf{stopnja}} & - \\multicolumn{1}{r|}{\\textbf{pristopili}} - & \\multicolumn{2}{r|}{\\textbf{odgovorili}} & - \\multicolumn{2}{r|}{\\textbf{zavrnili}}\\\\ \\hline - & & $n_0$ & n & \\% & r & \\% \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - - -print(xtable(struktura_studijski_program_po_stolpcih, - align=c("l", "p{8.7cm}", "c|", "c|", "c", "c|", "c", "c|"), - caption = "Struktura študentov glede na sodelovanje po programih"), - caption.placement="top", - include.rownames = FALSE, - add.to.row = addtorow, - floating = FALSE, - tabular.environment = "longtable", - sanitize.colnames.function = function(x){x}, - sanitize.text.function = function(x){x}, - hline.after = hlines) #aktiviramo dolocene crte -@ - -<>= -addtorow <- list() -addtorow$pos <- list(-1, -1) -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\textbf{Stopnja} & \\multicolumn{2}{c|}{\\textbf{pristopili}} & \\multicolumn{2}{c}{\\textbf{odgovorili}}& \\multicolumn{2}{c|}{\\textbf{zavrnili}}', collapse=''), "\\\\")) - -print(xtable(struktura_stopnja_po_vrsticah, - digits=c(0,0,0,0,0,0,0,0), - align=c("l", "p{10.2cm}", "c", "c|", rep("c", 3), "c|"), - caption = "Sodelovanje študentov glede na stopnjo programa"), - #sanitize.colnames.function = bold, - caption.placement="top", - add.to.row = addtorow, - include.rownames = FALSE, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - hline.after = c(-1, 0, nrow(struktura_stopnja)-1, nrow(struktura_stopnja))) -# Izpis tabele: Sodelovanje študentov glede na stopnjo programa -addtorow <- list() -addtorow$pos <- list(-1, -1) -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\textbf{Stopnja} & \\multicolumn{1}{c|}{\\textbf{pristopili}} & \\multicolumn{2}{c}{\\textbf{odgovorili}}& \\multicolumn{2}{c|}{\\textbf{zavrnili}}', collapse=''), "\\\\")) - -print(xtable(struktura_stopnja, - digits=c(0,0,0,0,0,0,0), - align=c("l", "p{10.2cm}", "c|", rep("c", 3), "c|"), - caption = "Struktura študentov glede na sodelovanje po stopnjah programov"), - #sanitize.colnames.function = bold, - caption.placement="top", - add.to.row = addtorow, - include.rownames = FALSE, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - hline.after = c(-1, 0, nrow(struktura_stopnja)-1, nrow(struktura_stopnja))) - - - -@ -\newpage - -<>= -# Izpis tabele: Sodelovanje študentov po letniku -addtorow <- list() -addtorow$pos <- list(-1, -1) -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\textbf{Letnik} & \\multicolumn{2}{c|}{\\textbf{pristopili}} & \\multicolumn{2}{c}{\\textbf{odgovorili}}& \\multicolumn{2}{c|}{\\textbf{zavrnili}}', collapse=''), "\\\\")) -# Odstotki po vrsticah -# Iz df-ja izlocimo vrstice primerne za v tabelo 3 (po letniku), in prikazemo samo -# tiste letnike, ki imajo vsaj eno veljavno enoto. -#napisiLetnik_t <- subset(napisiLetnik[-c(2,3)], napisiLetnik[-c(2,3)][,2] != 0) -#colnames(napisiLetnik_t) <- c("", "$n_{0}$", "\\%", "n", "\\%", "r", "\\%") -napisiLetnik_t <- subset(napisiLetnik[-c(2,3)], napisiLetnik[-c(2,3)][,2] != 0) -# Odstranimo Vsi_pct -napisiLetnik_t1 <- napisiLetnik_t[-3] -napisiLetnik_t1[4] <- round2(as.numeric(unlist(napisiLetnik_t1[4])), digits = 0) -napisiLetnik_t1[6] <- round2(as.numeric(unlist(napisiLetnik_t1[6])), digits = 0) - -colnames(napisiLetnik_t1) <- c("", "$n_{0}$", "n", "\\%", "r", "\\%") - -# Vektorja stevil tistih, ki so odgovorili in tistih, ki so sodelovanje zavrnili -# delimo z vektorjem vseh, ki so pristopili -# Sestevek po vrsticah je enak 100 -napisLetnik_t_po_vrsticah <- napisiLetnik_t1 -napisiLetnik_stolpec100 <- rep(100, nrow(napisiLetnik_t1[2])) -napisLetnik_t_po_vrsticah <- cbind(napisLetnik_t_po_vrsticah[1:2], - napisiLetnik_stolpec100, - napisLetnik_t_po_vrsticah[3:length(napisiLetnik_t1)] - ) -napisLetnik_t_po_vrsticah[5] <- round2((napisLetnik_t_po_vrsticah[4] / napisLetnik_t_po_vrsticah[2]) * 100, digits=0) -napisLetnik_t_po_vrsticah[7] <- round2((napisLetnik_t_po_vrsticah[6] / napisLetnik_t_po_vrsticah[2]) * 100, digits=0) - colnames(napisLetnik_t_po_vrsticah) <- c("", "$n_{0}$", "\\%", "n", "\\%", "r", "\\%") - - - # Majhnim n-jem pri odgovorih dodamo oklepaje - napisiLetnik_t1$n <- oklepajiVektor_f(napisiLetnik_t1$n) - napisLetnik_t_po_vrsticah$n <- oklepajiVektor_f(napisLetnik_t_po_vrsticah$n) -print(xtable(napisLetnik_t_po_vrsticah, - digits=c(0,0,0,0,0,0,0,0), - align=c("l", "p{10.2cm}", "c", "c|", rep("c", 3), "c|"), - caption = "Sodelovanje študentov glede na letnik"), - #sanitize.colnames.function = bold, - caption.placement="top", - add.to.row = addtorow, - include.rownames = FALSE, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - hline.after = c(-1, 0, nrow(napisiLetnik_t)-1, nrow(napisiLetnik_t))) - -# Izpis tabele: Sodelovanje študentov po letniku -addtorow <- list() -addtorow$pos <- list(-1, -1) -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\textbf{Letnik} & \\multicolumn{1}{c|}{\\textbf{pristopili}} & \\multicolumn{2}{c}{\\textbf{odgovorili}}& \\multicolumn{2}{c|}{\\textbf{zavrnili}}', collapse=''), "\\\\")) - -# Iz df-ja izlocimo vrstice primerne za v tabelo 3 (po letniku), in prikazemo samo -# tiste letnike, ki imajo vsaj eno veljavno enoto. -#napisiLetnik_t1[nrow(napisiLetnik_t1),c(4,6)] <- formatC2(as.numeric(napisLetnik_t_po_vrsticah[nrow(napisLetnik_t_po_vrsticah),c(4,6)]), digits = 1, format = 'f') -print(xtable(napisiLetnik_t1, - digits=c(0,0,0,0,0,0,0), - align=c("l", "p{10.2cm}", "c|", rep("c", 3), "c|"), - caption = "Struktura študentov glede na sodelovanje po letniku"), - #sanitize.colnames.function = bold, - caption.placement="top", - add.to.row = addtorow, - include.rownames = FALSE, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - hline.after = c(-1, 0, nrow(napisiLetnik_t)-1, nrow(napisiLetnik_t))) - - - - -@ -\newpage - -\section{Analiza dejavnikov in vsebinskih sklopov} -V nadaljevanju so predstavljene podrobne analize po sklopih in dejavnikih. Opisne statistike vključujejo število (n), povprečje in standardni odklon (sd). -<>= -# Izpis tabele: Povprečne vrednosti za vse dejavnike (neurejena), dejavniki nastopajo v istem # vrstnem redu, kot v anketi -rws3 <- seq(1, (nrow(d3)-1), by = 2) -col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -poSklopih_tabela <- poSklopih[,-3] -poSklopih_tabela <- poSklopih_tabela[c(1,2,4)] - -colnames(poSklopih_tabela) <- c("Dejavniki", "n", "povprečje") -print(xtable(poSklopih_tabela, - digits=c(0,0,0,1), - caption = "Opisne statistike za dejavnike, urejene po povprečjih", - align = c("l", "p{12cm}", "c", "c")), - - caption.placement="top", - sanitize.colnames.function = bold, - sanitize.text.function = function(x){x}, - include.rownames = FALSE, - table.placement= ("!ht"), - #add.to.row=list(pos=list(-1), command=c("\\hline"))) - #booktabs = TRUE, - add.to.row = list(pos = list(-1, rws3), - command = c("\\hline","\\rowcolor[gray]{0.95}"))) -cat('\\newpage') -a <- c(3, 3.5, 4, 4.5) -vlines <- data.frame(xint = a, grp = letters[1:4]) -p2 <- ggplot(poSklopih_graf, aes(x=reorder(grafBeseda, odgMean), y=odgMean) ) + - geom_bar(stat="identity", fill="#468fd7")+ - geom_hline(yintercept = c(3), linetype="dotted", colour="#B6321C") + - geom_hline(yintercept = c(3.5), linetype="dotted", colour="#F58137") + - geom_hline(yintercept = c(4, 4.5), linetype="dotted") + - - #geom_hline(data = vlines, aes(yintercept = xint, colour = c("#B6321C", "#F58137", "#000000", - #"#000000")), - # linetype = "dashed", show.legend = FALSE)+ - geom_text(position = position_dodge(0.9), - hjust = 1.5, - color = "white", - #fontface = "bold", - size = 4.2, - label = formatC2(sort(poSklopih_graf$odgMean), - digits=1, format='f'))+ - coord_flip(ylim=c(1,5))+ - xlab("")+ylab("\nPovprečna vrednost")+ - theme_classic()+ - theme(axis.line.x = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.line.y = element_line(colour = 'black', size=0.5, linetype='solid'), - axis.text= element_text(size=11, family="CM Roman"), - axis.title= element_text(size=11, family='CM Roman')) - - #geom_vline(xintercept=c(3, 3.6, 4, 4.5), linetype="dotted") -#print(p2) -ime <- paste0("rezultati/", ID,"/grafi/grafVsehDejavnikov.pdf") -showtext.auto() -ggsave(p2, filename=ime, units="in", device=cairo_pdf ) - -cat(paste0('\\begin{figure}[ht] -\\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\\includegraphics[width=\\maxwidth]{../', ime, '} -\\end{figure}')) - - -vsiDejavniki_povzetek <- arrange(d3[,c(1, 3, 6, 7)], desc(odgMean)) - -# S to funkcijo izpisemo krajsi povzetek -#x - podatki -#y - kritičen, kritična, kritični -#z - meja -#primerjava: 0 - manjse, 1 - vecje ali enako - - -# stevecPovzetkov <- 0 -# -# krajsiPovzetek_f <- function(x,y,z,primerjava, locilaBesede, -# textPred="", textPo="", stevilo_izpis=0){ -# dejavnikiBesede <- c("dejavnik: ", "dejavnika: ", "dejavniki: ") -# x$odgMean <- formatC2(x$odgMean, digits=1, format='f') -# -# if(primerjava == 0){ -# izbraniDejavniki <- x$vprZ.dolgoIme1[x$odgMean < z[1]] -# povp_krajsi <- x$odgMean[x$odgMean < z[1]] -# }else if (primerjava == 2){ -# izbraniDejavniki <- x$vprZ.dolgoIme1[x$odgMean < z[2] & x$odgMean >=z[1]] -# povp_krajsi <- x$odgMean[x$odgMean < z[2] & x$odgMean >=z[1]] -# }else{ -# izbraniDejavniki <- x$vprZ.dolgoIme1[x$odgMean >= z[1]] -# povp_krajsi <- x$odgMean[x$odgMean >= z[1]] -# } -# #Lahko se else if -# if(length(izbraniDejavniki) != 0){ -# -# stevecPovzetkov <- stevecPovzetkov+1 -# if (stevilo_izpis == 0){ -# -# if(length(izbraniDejavniki) == 1){ -# text_krajsiPovzetek <- paste0( y[1], dejavnikiBesede[1], "") -# }else if(length(izbraniDejavniki) == 2){ -# text_krajsiPovzetek <- paste0( y[2], dejavnikiBesede[2], "") -# }else{ -# text_krajsiPovzetek <- paste0( y[3], dejavnikiBesede[3], "") -# } -# #if (stevecPovzetkov != 0){ -# #text_krajsiPovzetek <- paste0("\\\\[0.2cm] ", text_krajsiPovzetek) -# #text_krajsiPovzetek <- paste0("\\\\[0.2cm] ", text_krajsiPovzetek) -# #} -# for(i in (1:length(izbraniDejavniki))){ -# krajsi_vseh <- length(izbraniDejavniki) -# #krajsi_sledijo <- length(izbraniDejavniki) - i -# if(i == krajsi_vseh){ -# locilo <- ". " -# }else if(i== krajsi_vseh - 1){ -# locilo <- " in " -# }else{ -# locilo <- ", " -# } -# text_krajsiPovzetek <- paste0(text_krajsiPovzetek, "'", -# izbraniDejavniki[i], -# "' (", barvanje_f(povp_krajsi[i]), -# ")", locilo) -# -# } -# }else{ -# text_krajsiPovzetek <- paste0( y[1], dejavnikiBesede[1], "") -# krajsi_vseh <- length(izbraniDejavniki) -# #krajsi_sledijo <- length(izbraniDejavniki) - i -# #if(i == krajsi_vseh){ -# # locilo <- ". " -# #}else if(i== krajsi_vseh - 1){ -# # locilo <- " in " -# #}else{ -# # locilo <- ", " -# #} -# text_krajsiPovzetek <- paste0(text_krajsiPovzetek, "'", -# izbraniDejavniki[stevilo_izpis], -# "' (", barvanje_f(povp_krajsi[stevilo_izpis]), -# #")", locilo) -# ").") -# } -# cat(paste0(textPred, text_krajsiPovzetek, textPo, '\\\\ \\\\')) -# } -# -# return(stevecPovzetkov) -# } -# -# -# stevecPovzetkov <- krajsiPovzetek_f(vsiDejavniki_povzetek, c("Kritično nizko je ocenjen ", "Kritično nizko sta ocenjena ", "Kritično nizko so ocenjeni "), 3, 0,c("Je ", "Sta ", "So ")) -# -# stevecPovzetkov <- krajsiPovzetek_f(vsiDejavniki_povzetek, c("Veliko prostora za izboljšave ima ", "Veliko prostora za izboljšave imata ", "Veliko prostora za izboljšave imajo "), c(3,3.5), 2, c("Ima ", "Imata ", "Imajo ")) -# -# stevecPovzetkov <- krajsiPovzetek_f(vsiDejavniki_povzetek, c("Na drugi strani je zelo dobro ocenjen ", "Na drugi strani sta zelo dobro sta ocenjena ", "Na drugi strani so zelo dobro so ocenjeni "), c(4,4.5), 2, c("Je ", "Sta ", "So "), stevilo_izpis=1) -# -# stevecPovzetkov <- krajsiPovzetek_f(vsiDejavniki_povzetek, c("Odlično je ocenjen ", "Odlično sta ocenjena ", "Odlično so ocenjeni "), c(4.5), 1, c("Je ", "Sta ", "So "), stevilo_izpis=1) - - -povzetek_najboljsi <- poSklopih[,3][round2(poSklopih[,3], digits=1) == max(round2(poSklopih[,3], digits=1))] - -stNajboljsih <- length(povzetek_najboljsi) - -povzetek_najslabsi <- poSklopih[,3][round2(poSklopih[,3], digits=1) == min(round2(poSklopih[,3], digits=1))] -stNajslabsih <- length(povzetek_najslabsi) - - - -for(i in (1:length(stNajboljsih))){ - if (stNajboljsih == 1){ - povzetek_kratek <- paste0('Najboljše je ocenjen dejavnik "', poSklopih[i, 1], '" (', - poSklopih[i, 5],')') - }else if (stNajboljsih == 2){ - povzetek_kratek <- paste0('Najboljše sta ocenjena dejavnika "', poSklopih[1, 1], '" (', - poSklopih[1, 5], - ') in "', poSklopih[2, 1], '" (', - poSklopih[2, 5], ')') - }else if (stNajboljsih > 2){ - krajsi_vseh <- stNajboljsih - povzetek_kratek <- ('Najboljše so ocenjeni dejavniki ') - for ( j in 1:stNajboljsih){ - #krajsi_sledijo <- length(izbraniDejavniki) - i - if(j == krajsi_vseh){ - locilo <- ". " - }else if(j== krajsi_vseh - 1){ - locilo <- " in " - }else{ - locilo <- ", " - } - povzetek_kratek <- paste0(povzetek_kratek, '"',poSklopih[j, 1], - '" (', poSklopih[j, 5], - ')', locilo) - - } - - } -} - -cat(paste0(povzetek_kratek, " \\\\ \\\\")) - - -for(i in (1:length(stNajslabsih))){ - if (stNajslabsih == 1){ - povzetek_kratek <- paste0('Najslabše je ocenjen dejavnik "', - poSklopih[nrow(poSklopih), 1], '" (', - poSklopih[nrow(poSklopih), 5], ')') - }else if (stNajslabsih == 2){ - povzetek_kratek <- paste0('Najslabše sta ocenjena dejavnika "', poSklopih[nrow(poSklopih), 1], '" (', - poSklopih[nrow(poSklopih), 5], - ') in "', poSklopih[nrow(poSklopih)-1, 1], '" (', - poSklopih[nrow(poSklopih)-1, 5], ')') - }else if (stNajslabsih > 2){ - krajsi_vseh <- stNajslabsih - povzetek_kratek <- ('Najslabše so ocenjeni dejavniki ') - for ( j in 1:stNajslabsih){ - #krajsi_sledijo <- length(izbraniDejavniki) - i - if(j == krajsi_vseh){ - locilo <- ". " - }else if(j== krajsi_vseh - 1){ - locilo <- " in " - }else{ - locilo <- ", " - } - povzetek_kratek <- paste0(povzetek_kratek, '"', - poSklopih[nrow(poSklopih)-(j-1), 1], - '" (', poSklopih[nrow(poSklopih)-(j-1), 5], - ')', locilo) - - } - - } -} - -cat(povzetek_kratek) -@ - - -<>= -# Izpis tabele: Povprečne vrednosti za vse dejavnike (urejeno glede na mediano povprečij, -# znotraj tega pa po povprečjih dejavnikov) -# Prilagoditev spremenljivke, ki nosi mesta obarvanih vrstic, tako da obarva tudi pripadajoce sklope -#d4_R22 <- as.numeric(sapply(d4_R2, function(x){c(1+x, x)})) - -cat('\\newpage') - -addtorow_poSklopih <- list() -addtorow_poSklopih$pos <- list(-1, 0, 0, - mesta_addtorow[2], - mesta_addtorow[3], - mesta_addtorow[4], - mesta_addtorow[5], - mesta_addtorow[6], - mesta_addtorow[7], - mesta_addtorow[8] - #mesta_addtorow[9], - ) -# Za dodatni sklop -if(length(napisiSklop) == 9){ - addtorow_poSklopih$pos <- c(addtorow_poSklopih$pos, list(mesta_addtorow[9], d4_R2)) -}else if(length(napisiSklop == 8)){ - addtorow_poSklopih$pos <- c(addtorow_poSklopih$pos, list(d4_R2)) -} -addtorow_poSklopih$command <- c("\\hline", "\\hline", napisiSklopov_addtorow, - "\\rowcolor[gray]{0.95}") - -print(xtable(poSklopih_urejena, - digits=c(0,0,0,0,0,1,1), - caption = "Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij dejavnikov znotraj posameznega sklopa", - align = c("l", "p{8.2cm}", "C{1.2cm}", "C{1cm}", - "C{1cm}", "C{2.2cm}", "C{1cm}")), - - caption.placement="top", - sanitize.colnames.function = bold, - #include.colnames = F, - include.rownames = FALSE, - table.placement= ("!ht"), - sanitize.text.function = function(x){x}, - #only.contents = T, - hline.after = c(-1, nrow(poSklopih_urejena)), - #booktabs = TRUE, - add.to.row = addtorow_poSklopih) -@ - -\newpage -%\section{dejavniki študijskega procesa 2014/2015 - frekvenčna porazdelitev} -%Naslednja tabela predstavlja frekvenčno porazdelitev dejavnikov študijskega procesa %\Sexpr{celaLetnica}. Respondenti so za vsak dejavnik izrazili strinjanje na petstopenjski lestvici. \\ - -<>= -########## -# Izpis tabele: 'Frekvenčna porazdelitev enot po kategorijah odgovorov na petstopenjski -# lestvici. -########## - -#odgNapisiP <- read.csv2("PomoznaT2.csv", stringsAsFactors = FALSE) - -#************************************************ - -#V 5 seznamov shrani posamezne odg glede na vprasanje -odgVeljavni2.L <- list() -for (i in 1:5){ - odgVeljavni2.L[i] <- list(as.vector(sapply(odgVeljavni, function(odgVeljavni) length(odgVeljavni[odgVeljavni==i])))) -} - -odgSt <- as.vector(odgSt) -odstVeljavni <- function(n){ - n <- as.vector((n / odgSt)*100) - return (n) -} - -#V 5 seznamov shrani odstotke glede na posamezno vprasanje -odgVeljavni2odst.L <- lapply(odgVeljavni2.L, function(x) odstVeljavni(x)) - -#Odstotke in stevilo repondentov glede na posamezno vprasanje zdruzimo z MAP -odgVeljavni2.Zd <- Map(cbind, odgVeljavni2.L, odgVeljavni2odst.L) - -# Skupni odstotki in stevila enot, ki jih zaradi pomanjkanja prostora ne prikazemo v tabeli -# s frekvencnimi porazdelitvami - -odgVeljavni3.n <- as.numeric() -odgVeljavni3.n.sk <- as.numeric() -odgVeljavni3.pct <- as.numeric() -odgVeljavni3.pct.sk <- as.numeric() - -for (i in (1:length(odgVeljavni))){ - for (j in 1:5){odgVeljavni3.n[j] <- odgVeljavni2.L[[j]][i]} - for (k in 1:5){odgVeljavni3.pct[k] <- odgVeljavni2odst.L[[k]][i]} - odgVeljavni3.n.sk[[i]] <- sum(odgVeljavni3.n) - odgVeljavni3.pct.sk[[i]] <- sum(odgVeljavni3.pct) -} -# Odstrani in dokumentiraj: -#Izpis tabele 4 -#vprZ$sklop in odgSklop_R zaradi razvrscanja glede na desc povp sklopa -#if (length(odgSklop) == 8){ - -# odg1_d4 <- rbind(odgVeljavni2.Zd[[1]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""#), c("", ""), c("", ""), c("", "")) -#odg2_d4 <- rbind(odgVeljavni2.Zd[[2]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg3_d4 <- rbind(odgVeljavni2.Zd[[3]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg4_d4 <- rbind(odgVeljavni2.Zd[[4]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg5_d4 <- rbind(odgVeljavni2.Zd[[5]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) - -#}else if (length(odgSklop) == 9){ -# odg1_d4 <- rbind(odgVeljavni2.Zd[[1]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg2_d4 <- rbind(odgVeljavni2.Zd[[2]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg3_d4 <- rbind(odgVeljavni2.Zd[[3]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg4_d4 <- rbind(odgVeljavni2.Zd[[4]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#odg5_d4 <- rbind(odgVeljavni2.Zd[[5]], c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", ""), c("", "")) -#} - -# Dodatno okrajsana imena dejavnikov -#dolgoIme_d4 <- c(strtrim(vprZ$dolgoIme, 50), skl_Beseda) - -#frekvencna <- data.frame(dolgoIme_d4, -# st1=odg1_d4, -# st2=odg2_d4, -# st3=odg3_d4, -# st4=odg4_d4, -# st5=odg5_d4, - #odgVeljavni3.n.sk, - #odgVeljavni3.pct.sk, -# vprZ.Sklop2, -# odgSklop_R2, -# odgMean2, -# stringsAsFactors = F) - -dolgoIme_d4 <- strtrim(vprZ$dolgoIme, 50) -frekvencna <- data.frame(dolgoIme_d4, - st1=odgVeljavni2.Zd[[1]], - st2=odgVeljavni2.Zd[[2]], - st3=odgVeljavni2.Zd[[3]], - st4=odgVeljavni2.Zd[[4]], - st5=odgVeljavni2.Zd[[5]], - #odgVeljavni3.n.sk, - #odgVeljavni3.pct.sk, - vprZ$sklop, - odgSklop_R, - odgMean, - stringsAsFactors = F) - -frekvencna <- arrange(frekvencna, desc(odgSklop_R), vprZ$sklop, desc(odgMean)) -frekvencna <- frekvencna[,1:11] - -#frekvencna <- arrange(frekvencna, desc(odgSklop_R2), vprZ.Sklop2, desc(odgMean2)) -#frekvencna <- frekvencna[,1:11] -#frekvencna$st1.2 <- formatC2(as.numeric(frekvencna$st1.2), digits=1, format='f') -#frekvencna$st2.2 <- formatC2(as.numeric(frekvencna$st2.2), digits=1, format='f') -#frekvencna$st3.2 <- formatC2(as.numeric(frekvencna$st3.2), digits=1, format='f') -#frekvencna$st4.2 <- formatC2(as.numeric(frekvencna$st4.2), digits=1, format='f') -#frekvencna$st5.2 <- formatC2(as.numeric(frekvencna$st5.2), digits=1, format='f') - -#frekvencna$st1.2[frekvencna$st1.2 == "NA"] <- "" -#frekvencna$st2.2[frekvencna$st2.2 == "NA"] <- "" -#frekvencna$st3.2[frekvencna$st3.2 == "NA"] <- "" -#frekvencna$st4.2[frekvencna$st4.2 == "NA"] <- "" -#frekvencna$st5.2[frekvencna$st5.2 == "NA"] <- "" - - -# Funkcija kateri kot argument podamo kratko ime dejavnika -# Izpise alternirajoce (vsako drugo vrstico) obarvane odprte odgovore -# Tu funkcijo le definramo, prvic jo poklicemo v prilogi 2 -odprtiOdg_f <- function(x, y){ - - #Filter neveljavnih odgovorov - pw1 <- veljavneEnote[[1]][x][veljavneEnote[[1]][x] != "-1: Ni odgovoril" & - veljavneEnote[[1]][x] != "-1" & - veljavneEnote[[1]][x] != "-3: Prekinjeno" & - veljavneEnote[[1]][x] != "-3" & - veljavneEnote[[1]][x] != "/" & - veljavneEnote[[1]][x] != "Ne" & - veljavneEnote[[1]][x] != "¸/" & - veljavneEnote[[1]][x] != "-" & - veljavneEnote[[1]][x] != "ne" & - veljavneEnote[[1]][x] != "#ERROR!" & - veljavneEnote[[1]][x] != ""] - - - - - - # Preveri ali je za izbran dejavnik sploh kaksen odgovor, - # drugace izpise *Za izbrano vprasanje ni odg - - if (length(pw1) != 0){ - # Vkljucimo samo odprte odg., ki so daljsi od 4 znakov - pw1 <- pw1[nchar(pw1)> 4] - # nato se spet lahko zgodi, da ni odgovorov - if (length(pw1) != 0){ - #library(stringi) - #Pomembno za delovanje komentarjev z narekovaji - pw1 <- stri_unescape_unicode(pw1) - pw2 <- sapply(latexTranslate(pw1), function(x){x}) - pw2 <- gsub("", "", pw2) - pw2 <- gsub(" ", "", pw2) - pw2 <- gsub("", "", pw2) - pw2 <- gsub("", "", pw2) - - # Za vsakim (razen za zadnjim) odgovorom doda novo vrstico - # Drugace novo crto v primeru polne strani narise na naslednji strani - # Pred vsakim odg. doda piko (\\tabitem): Izkljuceno - # pw2 <- paste0("\\tabitem ",pw2, "\\\\") - - #pw2 <- c(paste0(pw2[1:(length(pw2)-1)], "\\\\"), pw2[[length(pw2)]]) - pw2 <- data.frame(pw2) - - # Nastavimo alternirajoce barvanje vrstic (ce je dolzina vsaj 2) - addtorow <- list() - - if (nrow(pw2) > 1){ - addtorow$pos <- list(seq(1, (nrow(pw2)-1), by = 2)) - addtorow$command <- c("\\rowcolor[gray]{0.90}") - - }else if (nrow(pw2) == 1){ - # Ce je tocno en odprti odgovor za izbran dejavnik - addtorow$pos <- list(1) - addtorow$command <- c("") - } - # Izbrisemo ime stolpca - colnames(pw2) <- "" - - print(xtable(pw2, align=c("p", "p{\\textwidth}"), - caption = y), - include.rownames = FALSE, - add.to.row = addtorow, - caption.placement = 'top', - tabular.environment = "longtable", - floating = FALSE, - sanitize.text.function = function (x){x}) - }#else{cat("*Na to vprašanje študenti niso podali odgovorov.")} - }#else{cat("*Na to vprašanje študenti niso podali odgovorov.")} -} - - -colnames(frekvencna) <- c("\\textbf{Dejavniki po sklopih}", rep(c("n", "\\%"), 5)) -#Manjkajo labele, oblika, brez decimalk za n... -#labT4 <- c("1 sploh se ne strinjam", "2 se bolj ne strinjam kot strinjam", "3 niti se ne strinjam niti se strinjam", -# "4 se bolj strinjam, kot ne strinjam", "5 popolnoma se strinjam") - labT4 <- c("\\small \\makecell{Sploh\\\\se ne\\\\strinjam\\\\(1)}", - "\\small \\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam\\\\(2)}", - "\\small \\makecell{Niti se ne\\\\strinjam\\\\niti se\\\\strinjam\\\\(3)}", - "\\small \\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam\\\\(4)}", - "\\small \\makecell{Popolnoma\\\\se\\\\strinjam\\\\(5)}") -addtorow <- list() -addtorow$pos <- list(-1, -1, d4_R2) - -#Dodamo multicolumns in črto nad njimi -addtorow$command <- c("\\hline", paste0(paste0('& \\multicolumn{2}{c}{ \\textbf{', labT4, '}}', collapse=''), - -"\\\\ -\\hline -\\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% - -\\endfirsthead - -\\caption{Dejavniki študijskega procesa ", celaLetnica, " - frekvenčna porazdelitev -enot (nadaljevanje)} \\\\ \\hline - -& \\multicolumn{2}{c}{ \\textbf{\\makecell{Sploh\\\\se ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj ne\\\\strinjam kot\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Niti se ne\\\\strinjam,\\\\niti se\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Se bolj\\\\strinjam,\\\\kot ne\\\\strinjam}}}& \\multicolumn{2}{c}{ \\textbf{\\makecell{Popolnoma\\\\se\\\\strinjam}}} \\\\ \\hline - -\\textbf{Dejavniki po sklopih} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% \\\\ \\hline -\\endhead"), - -"\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - -# Novo -addtorow2 <- list() -addtorow2$pos <- list(0, - mesta_addtorow[2], - mesta_addtorow[3], - mesta_addtorow[4], - mesta_addtorow[5], - mesta_addtorow[6], - mesta_addtorow[7], - mesta_addtorow[8]) - # mesta_addtorow[9], - # d4_R2) - -if(length(napisiSklop) == 9){ - addtorow2$pos <- c(addtorow2$pos, list(mesta_addtorow[9], d4_R2)) -}else if(length(napisiSklop == 8)){ - addtorow2$pos <- c(addtorow2$pos, list(d4_R2)) -} - -addtorow2$command <- c(napisiSklopov_addtorow_frekvencna, "\\rowcolor[gray]{0.95}[7.1pt][7.1pt]") - - -# Ce sklop z addtorow2 dodamo na zadnje mesto (27, 28), ga prestavimo na naslednjo stran -# drugace je sklop na eni strani, (njegov)i (dejavnik)i pa na drugi -# Nadalje pa bi cudno izgledalo, ce bi bil samo en dejavnik na naslednji strani, zato -# Podobno naredimo tudi ce je sklop, ki ima tri dejavnike dodan na zadnje mesto. -# Preveri: -#if (27 %in% mesta_addtorow){ -# addtorow2$pos <- c(27, 28, addtorow2$pos) -# addtorow2$command <- c("\\\\", "\\\\", addtorow2$command) -#}else if (28 %in% mesta_addtorow){ -# addtorow2$pos <- c(28, addtorow2$pos) -# addtorow2$command <- c("\\\\ \\\\", addtorow2$command) -#} - -# Preden smo odstranili 'skupaj' -# Dodamo multicolumns in črto nad njimi -#addtorow$command <- c("\\multicolumn{11}{r}{Kategorije odgovorov na lestvici od ena do #pet} \\\\ \\hline \\textbf{Ocena}", paste0(paste0('& \\multicolumn{2}{c}{ \\textbf{', #labT4, '}}', collapse=''),"& \\multicolumn{2}{c}{\\textbf{Skupaj}}\\\\"), "\\rowcolor[gra#y]{0.95}[7.1pt][7.1pt]") -# \\textbf{Dejavniki} & n & \\% & n & \\% & n & \\% & n & \\% & n & \\% \\ -#hlines <- c(0, nrow(frekvencna)) - -cat(paste0('\\begin{longtable}{p{5.5cm}cccccccccc} -\\caption{Dejavniki študijskega procesa ', celaLetnica ,' - frekvenčna porazdelitev enot} \\\\ ')) -cat(c("\\hline", addtorow$command[2])) - -#print(xtable(frekvencna, -# align=c("l", "p{5.5cm}", rep("c", 10)), -# caption = paste0("Dejavniki študijskega procesa ", -# celaLetnica, " - Frekvenčna porazdelitev enot po #kategorijah odgovorov na lestvici od ena do pet."), -# digits=0), -# include.rownames=FALSE, -# include.colnames=F, -# caption.placement = "top", -# sanitize.colnames.function = function(x){x}, -# sanitize.text.function = function (x){x}, -# tabular.environment = 'longtable', -# add.to.row = addtorow, -# floating = FALSE) - -del2 <- print(xtable(frekvencna, - align=c("l", "p{5.5cm}", rep("c", 10)), - caption = paste0("Dejavniki študijskega procesa ", - celaLetnica, " - frekvenčna porazdelitev enot"), - digits=0), - include.rownames=FALSE, - include.colnames=F, - only.contents = T, - #caption.placement = "top", - #sanitize.colnames.function = function(x){x}, - sanitize.text.function = function (x){x}, - #tabular.environment = 'longtable', - add.to.row = addtorow2, - hline.after = NULL - ) - #floating = FALSE) -cat("\\hline \\end{longtable}") - #hline.after = hlines) -@ -\newpage -%\section{Dejavniki študijskega procesa \Sexpr{celaLetnica} - analiza po sklopih} -\section{Podrobna analiza po sklopih} -Dejavniki znotraj sklopov so sistematično analizirani glede na študijsko stopnjo. Polna imena študijskih stopenj so zapisana v legendi grafov. Ocene, ki so v tabelah obdane z oklepaji, so manj natančne (glej tabeli 3 in 5 ter poglavje Metodologija). -<>= -# Izpis tabel: Po sklopih (po študijski stopnji in po letnikih) -# Spremenljivki pripisujemo za vsak sklop najprej prazen_df_t, nato prazen_df_letnik -# V vrstaProg so shranjene stopnje prog. -# length(vrstaProg)-2, zato, da odstejemo prvega in zadnjega (skupaj) -# ki imata drugacno poravnavo -# digits: -# length(vrstaProg)+1, zato, ker poleg povprecij tudi sd zaokrozimo na eno dec. -# sanitize: pomembno, da odebeli glavo - -# z add to row dolocimo multicolumn - -addtorow <- list() -addtorow$pos <- list(-1, -1) -if(length(vrstaProg)==1){ - plus <- 3 - napis <- c("Povprečje") -}else{ - plus <- 2 - napis <- c("Povprečja") -} - -if(length(letniki.uq)==1){ - plus.l <- 3 - napis.l <- c("Povprečje") - -}else{ - plus.l <- 2 - napis.l <- c("Povprečja") -} -addtorow$command <- c("\\hline \\hline", - paste0(paste0('\\multicolumn{', - (length(vrstaProg) + plus), - '}{r}{\\textbf{', napis ,'}}', - collapse=''), "\\\\")) - -addtorowLetnik <- list() -addtorowLetnik$pos <- list(-1, -1) -addtorowLetnik$command <- c("\\hline \\hline", - paste0(paste0('\\multicolumn{', - (length(letniki.uq) + plus.l), - '}{r}{\\textbf{', napis.l ,'}}', - collapse=''), "\\\\")) - -# Dolocimo align glede na stevilo vrstProg in letnikov -poravnava <- as.numeric() -poravnava[1] <- paste0('p{', 14.6 - (1.65 * length(vrstaProg)),'cm}') -poravnava[2] <- paste0('p{', 14.3 - (1.8 * length(letniki.uq)), 'cm}') - -# Dolocimo podatke za tabelo -po_sklopih_po_kategorijah <- prazen_df_t[1:3,] -napis_subsection_po_kategorijah <- "po stopnji študija in po letniku" -if (nrow(po_sklopih_po_kategorijah) != 0){ -#cat(paste0('\\subsection{Obveščanje na fakulteti - ', -#napis_subsection_po_kategorijah, '}')) -cat('\\subsection{Obveščanje na fakulteti}') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0,rep(1, (length(vrstaProg)))), - caption = "Obveščanje na fakulteti - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - table.placement = "ht", - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -# Dolocimo dejavnike in caption za izris grafov -dejavniki <- rbind(prazen_df$Q6a, prazen_df$Q6b, prazen_df$Q6c) - -graf_program_f(dejavniki, "Obveščanje na fakulteti - po stopnji študija", 1) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[1:3,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat("\\clearpage") - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Obveščanje na fakulteti - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - table.placement = "!ht", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q6a, prazen_df_letnik$Q6b, - prazen_df_letnik$Q6c)) -graf_letnik_f(dejavniki1, "Obveščanje na fakulteti - po letniku", 1) - -} -@ -\newpage -%\subsubsection{Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi z obveščanjem (o %študijskem procesu, obštudijski dejavnosti itd.)?} - -<>= -odprtiOdg_f("Q7", "Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi z obveščanjem (o študijskem procesu, obštudijski dejavnosti itd.)?") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[4:7,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -#cat(paste0('\\clearpage -# \\subsection{Prostori, oprema in urnik - ', napis_subsection_po_kategorijah, '}')) -cat('\\clearpage - \\subsection{Prostori, oprema in urnik}') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Prostori, oprema in urnik - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - - -dejavniki <- na.omit(rbind(prazen_df$Q8a, prazen_df$Q8b, prazen_df$Q8c, prazen_df$Q8d)) - -graf_program_f(dejavniki, "Prostori, oprema, urnik - po stopnji študija", 2) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[4:7,] -if (nrow(po_sklopih_po_kategorijah) != 0){ - -cat('\\newpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Prostori, oprema in urnik - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q8a, prazen_df_letnik$Q8b, - prazen_df_letnik$Q8c, prazen_df_letnik$Q8d)) -graf_letnik_f(dejavniki1, "Prostori, oprema, urnik - po letniku", 2) -} - -@ -\newpage -%\subsubsection{Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi s prostori, opremo oz. urnikom?} -<>= - -odprtiOdg_f("Q9", "Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi s prostori, opremo oz. urnikom?") - -@ - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[8:11,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat('\\clearpage - \\subsection{Knjižnica}') -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0,rep(1, ((length(vrstaProg))))), - caption = "Knjižnica - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q10a, prazen_df$Q10b, - prazen_df$Q10c, prazen_df$Q10d)) - -graf_program_f(dejavniki, "Knjižnica - po stopnji študija", 3) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[8:11,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat ('\\clearpage') - - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Knjižnica - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q10a, prazen_df_letnik$Q10b, - prazen_df_letnik$Q10c, prazen_df_letnik$Q10d)) - -graf_letnik_f(dejavniki1, "Knjižnica - po letniku", 3) -} - - -@ - -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede dela knjižnic.} -<>= -odprtiOdg_f("Q11", "Odprti odgovori: Vaši predlogi glede dela knjižnic.") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[12:17,] - -if (nrow(po_sklopih_po_kategorijah) != 0){ -#cat(paste0('\\clearpage -#\\subsection{Mednarodna mobilnost - ', napis_subsection_po_kategorijah, '}')) -cat('\\clearpage - \\subsection{Mednarodna mobilnost}') - -rws3 <- seq(1, (nrow(po_sklopih_po_kategorijah)-1), by = 2) -col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Mednarodna mobilnost - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q12a, prazen_df$Q12b, prazen_df$Q12c, prazen_df$Q12d, - prazen_df$Q12e, prazen_df$Q12f)) -graf_program_f(dejavniki, "Mednarodna mobilnost - po stopnji študija", 4) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[12:17,] - -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat('\\clearpage') - -rws3 <- seq(1, (nrow(po_sklopih_po_kategorijah)-1), by = 2) -col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Mednarodna mobilnost - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- rbind(prazen_df_letnik$Q12a, prazen_df_letnik$Q12b, - prazen_df_letnik$Q12c, prazen_df_letnik$Q12d, - prazen_df_letnik$Q12e, prazen_df_letnik$Q12f) - -graf_letnik_f(dejavniki1, "Mednarodna mobilnost - po letniku", 4) -} -@ -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede mobilnosti.} - -<>= -odprtiOdg_f("Q13", "Odprti odgovori: Vaši predlogi glede mobilnosti.") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[18:22,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -#cat(paste0('\\clearpage -#\\subsection{Svetovalna pomoč študentom - ', napis_subsection_po_kategorijah, '}')) - -cat('\\clearpage -\\subsection{Svetovalna pomoč študentom}') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Svetovalna pomoč študentom - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q14a, prazen_df$Q14b, prazen_df$Q14c, prazen_df$Q14d, prazen_df$Q14e)) -graf_program_f(dejavniki, "Svetovalna pomoč - po stopnji študija", 5) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[18:22,] -if (nrow(po_sklopih_po_kategorijah != 0)){ -cat('\\clearpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Svetovalna pomoč študentom - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q14a, prazen_df_letnik$Q14b, - prazen_df_letnik$Q14c, prazen_df_letnik$Q14d, - prazen_df_letnik$Q14e)) -graf_letnik_f(dejavniki1, "Svetovalna pomoč - po letniku", 5) - -} - - -@ -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede delovanja referata in svetovanja študentom.} - -<>= -odprtiOdg_f("Q15", "Odprti odgovori: Vaši predlogi glede delovanja referata in svetovanja študentom.") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[23:24,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -#cat(paste0('\\clearpage -#\\subsection{Drugi dejavniki študijskega procesa - ', napis_subsection_po_kategorijah, '}')) - -cat('\\clearpage - \\subsection{Drugi dejavniki študijskega procesa}') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Drugi dejavniki študijskega procesa - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q16a, prazen_df$Q16b)) -graf_program_f(dejavniki, "Drugi dejavniki študijskega procesa - po stopnji študija", 6) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[23:24,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat('\\clearpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Drugi dejavniki študijskega procesa - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q16a, prazen_df_letnik$Q16b)) -graf_letnik_f(dejavniki1, "Drugi dejavniki študijskega procesa - po letniku", 6) -} - - -@ - -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede drugih dejavnikov študija kot npr. izbirnih predmetov in povezovanja fakultete/akademije z drugimi inštitucijami.} - -<>= -odprtiOdg_f("Q17", "Odprti odgovori: Vaši predlogi glede drugih dejavnikov študija kot npr. izbirnih predmetov in povezovanja fakultete/akademije z drugimi inštitucijami.") -@ - - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[25:26,] -#po_sklopih_po_kategorijah[is.na(po_sklopih_po_kategorijah)] <- 0 -if(nrow(po_sklopih_po_kategorijah) != 0){ -#cat(paste0('\\newpage -#\\subsection{Študentski svet in obštudijske dejavnosti - ', napis_subsection_po_kategorijah, #'}')) - -cat('\\newpage - \\subsection{Študentski svet in obštudijske dejavnosti}') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Študentski svet in obštudijske dejavnosti - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- na.omit(rbind(prazen_df$Q18a, prazen_df$Q18b)) -graf_program_f(dejavniki, "Študentski svet in obštudijske dejavnosti - po stopnji študija", 7) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[25:26,] -#po_sklopih_po_kategorijah[is.na(po_sklopih_po_kategorijah)] <- 0 -if(nrow(po_sklopih_po_kategorijah) != 0){ -cat('\\newpage') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Študentski svet in obštudijske dejavnosti - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik$Q18a, prazen_df_letnik$Q18b)) -graf_letnik_f(dejavniki1, "Študentski svet in obštudijske dejavnosti - po letniku", 7) -} - -@ -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi za izboljšanje delovanja in aktivnosti študentskega sveta ter izboljšanje obštudijskih dejavnosti.} - -<>= -odprtiOdg_f("Q19", "Odprti odgovori: Vaši predlogi za izboljšanje delovanja in aktivnosti študentskega sveta ter izboljšanje obštudijskih dejavnosti.") -@ - -<>= - -po_sklopih_po_kategorijah <- prazen_df_t[27,] -if (nrow(po_sklopih_po_kategorijah) != 0){ -#cat(paste0('\\clearpage -#\\subsection{Zadovoljstvo s študijem - ', napis_subsection_po_kategorijah, '}')) - -cat('\\clearpage - \\subsection{Zadovoljstvo s študijem}') - -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = "Zadovoljstvo s študijem - po stopnji študija", - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg))-1))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[27,] -if (nrow(po_sklopih_po_kategorijah) != 0){ - print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = "Zadovoljstvo s študijem - po letniku", - align = c("l", poravnava[2], "|c", "c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) -cat('\\clearpage') -} -@ - -%\subsubsection{Odprti odgovori: Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih s študijem, ki bi jih želeli še posebej izpostaviti.} - -<>= -odprtiOdg_f("Q21", "Odprti odgovori: Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih s študijem, ki bi jih želeli še posebej izpostaviti.") -@ - -\newpage -%\subsubsection{Odprti odgovori: Prosimo, naštejte nekaj pomanjkljivosti in predlogov izboljšav, povezanih s študijem; kaj bi želeli pri študiju spremeniti oz. izboljšati.} -<>= -odprtiOdg_f("Q22", "Odprti odgovori: Prosimo, naštejte nekaj pomanjkljivosti in predlogov izboljšav, povezanih s študijem; kaj bi želeli pri študiju spremeniti oz. izboljšati.") -@ - -<>= -# Pomanjkljiva dokumentacija -### SAMO ZA FGG ###### - Q23 - DA / NE -######### SAMO ZA FGG -# Izracuni odgovorov tipa - 4 (Da / Ne) -# Vprasanja tipa 4 - Q23 -if (ID == 3000026){ -vprZ.tip4 <- subset(pomoznaT, pomoznaT$tip==4) -odg.tip4.ls <- list() -odg.tip4.pie_ls <- list() -for (i in 1:(nrow(vprZ.tip4))){ - kratkoIme.tip4 <- vprZ.tip4$kratkoIme[[i]] - dolgoIme.tip4 <- vprZ.tip4$dolgoIme[[i]] - odg.tip4 <- veljavneEnote[[1]][kratkoIme.tip4] - - # Zajamemo in prestejemo samo veljavne odgovore, torej da in ne - odg.Da.len <- length(odg.tip4[odg.tip4==1]) - odg.Ne.len <- length(odg.tip4[odg.tip4==2]) - odg.Sk.len <- odg.Da.len + odg.Ne.len - - # Izracun odstotkov. - odg.Da.pct <- (odg.Da.len / odg.Sk.len) * 100 - odg.Ne.pct <- (odg.Ne.len / odg.Sk.len) * 100 - odg.Sk.pct <- (odg.Da.pct + odg.Ne.pct) - - # Podatke shranjujemo v seznam - odg.tip4.ls[[i]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, odg.Da.len, - odg.Da.pct, odg.Ne.len, odg.Ne.pct, - odg.Sk.len, odg.Sk.pct) - odg.tip4.pie_ls[[i]] <- cbind(kratkoIme.tip4, dolgoIme.tip4, - rbind(odg.Ne.len, odg.Da.len), - rbind(odg.Ne.pct, odg.Da.pct), c("NE", "DA")) -} - -odg.tip4.ls <- do.call(rbind, odg.tip4.ls) -odg.tip4.pie_ls <- do.call(rbind, odg.tip4.pie_ls) - -# Nejasno: -# -11 je umetno stevilo, ki ga pripisemo zaradi zaokrozevanja -odg.tip4.ls[odg.tip4.ls == "NaN"] <- -11 -odg.tip4.ls[odg.tip4.ls == "Inf"] <- -11 -odg.tip4.ls[is.na(odg.tip4.ls)] <- -11 - -odg.tip4.pie_ls[odg.tip4.pie_ls == "NaN"] <- -11 -odg.tip4.pie_ls[odg.tip4.pie_ls == "Inf"] <- -11 -odg.tip4.pie_ls[is.na(odg.tip4.pie_ls)] <- -11 - -# Odstranimo kratko ime in seznam spremenimo v df, ki je bolj primeren -# za izpis tabel z 'xtable' -odg.tip4.df <- data.frame(odg.tip4.ls, stringsAsFactors = F)[,-1] - -rownames(odg.tip4.pie_ls) <- NULL -odg.tip4.pie_df <- data.frame(odg.tip4.pie_ls, stringsAsFactors = F) - - -# 3, 5, 7 -# Pomembno, da pred tem elemente pretvorimo iz stringa v numeric -# Drugace zaokrozevanje ne dela -for (i in c(3,5,7)){ -odg.tip4.df[i] <- sapply(odg.tip4.df[[i]], function(x){formatC2(as.numeric(x), digits=1, format = 'f')}) -} - - -odg.tip4.pie_df[[4]] <- sapply(odg.tip4.pie_df[[4]], function(x){formatC2(as.numeric(x), digits=1, format = 'f')}) -# Odstotkom, ki jih bomo izpisali v piechartu dodamo znak % -odg.tip4.pie_df[[6]] <- paste0(odg.tip4.pie_df[[4]], "%") -# -11 nadomestimo z (.) -odg.tip4.df[odg.tip4.df == "-11.0"] <- "(.)" -colnames(odg.tip4.df) <- c("Dejavnik", "Da", "\\%", "Ne", "\\%", "Skupaj", "\\%") - - - -dat <- odg.tip4.pie_df[c(1,2),] -dat$V4 <- as.numeric(dat$V4) - -if (nrow(dat) != 0 ){ - cat("\\clearpage \\subsection{Ali ste tekom študija imeli izbranega tutorja?}") - ggPie(dat, "Naslov 1") -} - -#### -## Samo za FGG, Q25. - - vprZ.tip5 <- subset(pomoznaT, pomoznaT$tip==5) - odg.tip5_ls.temp <- list() - vsiNapisi.tip5 <- list(c("Nikoli", "Enkrat", "Dvakrat", "Večkrat vsak semester")) - -for (i in 1:nrow(vprZ.tip5)){ - kratkoIme.tip5 <- vprZ.tip5$kratkoIme[i] - dolgoIme.tip5 <- vprZ.tip5$dolgoIme[i] - odg.tip5 <- veljavneEnote[[1]][kratkoIme.tip5] - odg.tip5 <- as.numeric(odg.tip5[odg.tip5>0]) - odg.tip5.sk <- length(odg.tip5) - # Nejasno: opiši - # Za odgovore Q30: ZAKAJ? Pri ostalih izracunavamo po posameznem vprasanju - # Tu jih sestejemo - - mozniOdg.tip5 <- c(1:length(vsiNapisi.tip5[[i]])) - tip5_df <- data.frame(mozniOdg.tip5, vsiNapisi.tip5[[i]], stringsAsFactors = F) - - - odg.tip5.len <- list() - odg.tip5.pct <- list() - - for(j in 1:length(vsiNapisi.tip5[[i]])){ - odg.tip5.len[[j]] <- length(odg.tip5[odg.tip5 == j]) - odg.tip5.pct[[j]] <- formatC2((odg.tip5.len[[j]]/odg.tip5.sk)*100, - digits=1, - format='f') - } - tip5_df$n <- as.numeric(odg.tip5.len) - tip5_df$pct <- as.numeric(odg.tip5.pct) - tip5_df[nrow(tip5_df)+1, ] <- c("", "Skupaj", sum(tip5_df$n), - formatC2(sum(tip5_df$pct), digits = 1, format = "f")) - odg.tip5_ls.temp[[i]] <- tip5_df -} - -odg.tip5_ls <- do.call(rbind, odg.tip5_ls.temp) -odg.tip5_ls[odg.tip5_ls == "NaN"] <- "0.0" - -# Odstranimo prvi stolpec (mozniOdg.tip5) -odg.tip5_ls <- odg.tip5_ls[, -1] -names(odg.tip5_ls) <- c("Dejavniki", "n", "\\%") - -cat("\\subsection{S svojim tutorjem pedagogom sem komuniciral: }") -# Q25 -hlines <- c(-1, -1, 0, nrow(odg.tip5_ls[c(1:5),])-1, nrow(odg.tip5_ls[c(1:5),])) -print(xtable(odg.tip5_ls[c(1:5),], - align=c("p", "p{14cm}", "c", "c"), - digits=c(0,0,0,1), - caption=c("S svojim tutorjem pedagogom sem komuniciral: ")), - caption.placement = "top", - sanitize.colnames.function = function(x){x}, - include.rownames = F, - hline.after = hlines) -} - -if (dodatniSklop == 1){ -po_sklopih_po_kategorijah <- prazen_df_t[c(28:30), ] -if (nrow(po_sklopih_po_kategorijah) != 0){ -cat(paste0("\\clearpage - \\subsection{", dodatniSklop_napis, "}")) -print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1, (length(vrstaProg)))), - caption = paste0(dodatniSklop_napis, - " - po stopnji študija"), - align = c("l", poravnava[1], "|c", "c", "|c", - rep("c", (length(vrstaProg)-1) ))), - caption.placement="top", - add.to.row=addtorow, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki <- rbind(prazen_df[[28]], prazen_df[[29]], prazen_df[[30]]) -graf_program_f(dejavniki, paste0(dodatniSklop_napis, " - po stopnji študija"), 9) -} - -po_sklopih_po_kategorijah <- prazen_df_letnik_t[c(28:30), ] -if (nrow(po_sklopih_po_kategorijah) != 0){ - cat('\\newpage') - print(xtable(po_sklopih_po_kategorijah, - digits=c(0,0,0,0, rep(1,length(napisiLetnik.uq))), - caption = paste0(dodatniSklop_napis, - " - po letniku"), - align = c("l", poravnava[2], "|c","c", "|c", - rep("c", (length(napisiLetnik.uq)-1)))), - caption.placement="top", - add.to.row=addtorowLetnik, - #booktabs = TRUE, - sanitize.text.function = function(x){x}, - sanitize.colnames.function = bold, - include.rownames = FALSE) - -dejavniki1 <- na.omit(rbind(prazen_df_letnik[[28]], prazen_df_letnik[[29]], - prazen_df_letnik[[30]])) -graf_letnik_f(dejavniki1, paste0(dodatniSklop_napis, " - po letniku"), 9) -} -} -@ - -<>= -# Dolocimo dejavnike in caption za izris grafov - Trendi -if (risanjeTrendov == 1){ - if (nrow(dff != 0)){ - - cat(paste0('\\newpage - \\section{Trendi dejavnikov študijskega procesa 20', - min(izracuniTrendov$V2),'/', min(izracuniTrendov$V2)+1, ' - 20', max(izracuniTrendov$V2), '/', max(izracuniTrendov$V2)+1, '}')) - -# Izlocimo leta, ki nimajo povprecij -dff <- subset(dff, dff$povprecje != "NA") - -dejavnikiGraf <- subset(dff, dff$sklop==1) - -# Trendi graf -# x = podatki -# y = caption -# z = stevec (za imena datotek) -# izpis = 1 z *vspace - 6cm -# izpis = 2; brez tega -trendiGraf(dejavnikiGraf, "Zadovoljstvo z dejavniki obveščanja", 1, 2) - - -dejavnikiGraf <- subset(dff, dff$sklop == 2) -trendiGraf(dejavnikiGraf, "zadovoljstvo s prostori, opremo in urniki", 2, 2) - - -dejavnikiGraf <- subset(dff, dff$sklop == 3) -trendiGraf(dejavnikiGraf, "zadovoljstvo z dejavniki knjižnice", 3, 2) - -dejavnikiGraf <- subset(dff, dff$sklop == 4) -trendiGraf(dejavnikiGraf, "zadovoljstvo z dejavniki mednarodne mobilnosti", 4, 2) - - -dejavnikiGraf <- subset(dff, dff$sklop == 5) -trendiGraf(dejavnikiGraf, "zadovoljstvo z dejavniki svetovalne pomoči", 5, 2) - -dejavnikiGraf <- subset(dff, dff$sklop == 6) -trendiGraf(dejavnikiGraf, "zadovoljstvo z drugimi dejavniki študijskega procesa", 6, 2) - -dejavnikiGraf <- subset(dff, dff$sklop == 7) -trendiGraf(dejavnikiGraf, "zadovoljstvo s študentskim svetom in obštudijskimi dejavnostmi", 7, 2) - -# Izpis = 2, samo pri tistih, ki nad sabo nima tudi grafov glede na prog -dejavnikiGraf <- subset(dff, dff$sklop == 8) -trendiGraf(dejavnikiGraf, "splošno zadovoljstvo s študijem", 8, izpis = 2) - -# Preveri ali imamo podatke tudi za dodaten sklop -if (dodatniSklop == 1){ -dejavnikiGraf <- subset(dff, dff$sklop == 9) -trendiGraf(dejavnikiGraf, "splošno zadovoljstvo s programom", 9, 2) -}else{cat("\\newpage")} -} -} -@ - -\newpage -%\section{Priloga 1 - Analize po programih} -\section{Analize dejavnikov po programih} -V nadaljevanju so znotraj sklopov analizirana povprečja posameznih dejavnikov po programih. Manj natančne ocene so pri velikosti vzorca (n) označene z enim ali dvema oklepajema in je zato potrebna večja previdnost pri interpretacijah, tako kot je opisano v poglavju Metodologija. - -<>= -########## -##Tabele v prilogi. -##Stopnja, povp, n, glede na program in dolocena vprasanja - -#programiV2 -################### -# Enote razvrstimo glede na programe -odg.GP <- list() -for (i in (1:length(tip_programa_veljavni$idprog_uq))){ -odg.GP[i] <- list(filter(veljavneEnote[[1]][-length(veljavneEnote[[1]])], idprog == tip_programa_veljavni$idprog_uq[[i]])) -} -# s subset - -#veljavneEnote[[1]][veljavneEnote[[1]]$program == tip_programa$idprog_uq[[i]]] -#Veljavni odg. glede na program - -# Veljavni odgovori za enote razvrščene po programu -odgGPV <- vector(mode="list", length = length(odg.GP)) -for (i in (1:length(odg.GP))){ - for (j in (1:length(vprZ$kratkoIme))){ - jj <- vprZ$kratkoIme[j] - odgGPV[[i]][jj] <- subset(odg.GP[[i]][jj], odg.GP[[i]][jj] > 0) - } -} - -odgGPV <- lapply(odgGPV, function(x){lapply(x, function(y){as.numeric(y)})}) - - -# Podatke moramo najprej spremeniti v numeric, ta funkcija nam pri majhnem številu #odgovorov na posamezni program in vprasanje (2), izpise rezultate v napacni obliki -# in nadaljnji izracuni ne delujejo - -#odgGPV <- lapply(odgGPV, function(x){sapply(x, function(y){as.numeric(y)})}) - -sy.mean <- lapply(odgGPV, function(x) sapply(x, mean)) - - - -sy.length <- lapply(odgGPV, function(x) sapply(x, function(x) length(x))) -#sy.sd <- lapply(odgGPV, function(x) sapply(x, sd)) - -### Izračuni za skupaj #se nadaljuje v f_tabele priloga - -skupaj.mean <- lapply(odgVeljavni, mean) -skupaj.length <- lapply(odgVeljavni, length) - -#skupaj.sd <- lapply(odgVeljavni, sd) - - -#opisneNapisi <- c("povprečje", "n", "std. odklon") -f_tabelePriloga <- function(n){ - a2 <- formatC2(sapply(sy.mean, function(x){return (x[n]) }), - digits = 1, format="f") - - # Barvanje povprecij - if(length(n)>1){ - for (i in 1:nrow(a2)){ - a2[i,] <- barvanje_f(a2[i,]) - } - }else{ - a2 <- barvanje_f(a2) - } - - - b2 <- sapply(sy.length, function(x){return (x[n]) }) - if(length(n)>1){ - b3 <- sapply(b2[1,], function(x){if(x < 5) { - x <- paste0('((',x,'))')} - else if(x < 10){ - x <- paste0('(',x,')')} - else{return(x)}}) - } - - if (length(n)==1) { - b3 <- sapply(b2, function(x){if(x < 5) { - x <- paste0('((',x,'))')} - else if(x < 10){ - x <- paste0('(',x,')')} - else{return(x)}}) - } - #b3 <- data.frame(b3, ncol = (length(b3)) - #c2 <- sapply(sy.sd, function(x){return (x[n]) }) - - z <- list() - koncni <- list() - - #S to zanko boldamo povprecja zadnje vrstice - #in zaokrozimo s formatC2, ker round2 namesto npr. 4.0 izpise 4 - #zaokrozevanje v xtable zaradi boldanja ne dela - - if(length(n) > 1){ - for (i in(1:length(n))){ - z[i] <- list(c(a2[i,], as.vector(gsub(" ", "", barvanje_f(skupaj.mean[[n[[i]]]]))))) - } - z <- c(list(c(b3, sum(b2[1,]))), z) - } - - if(length(n) == 1) { - for (i in(1:length(n))){ - z <- list(c(a2, as.vector(gsub(" ", "", barvanje_f(skupaj.mean[[n[[i]]]]))))) - } - z <- c(list(c(b3, sum(b2))), z) - } - - zx <- z - zx <- sapply(z, unlist) - - # Vrsticam, ki imajo manj kot 3 enote ne izpisemo povprecij - - for(i in 1:nrow(zx)){ - if(zx[i,1]=="((2))" | zx[i,1]=="((1))" | zx[i,1]=="((0))"){ - zx[i,2:(2+length(n)-1)] <- "." - } - } - # Neveljavnim izracunom pripisemo vrednost (.) - zx[zx == "NaN" | zx == "NA" | zx== "Na" | zx =="Inf"] <- "(.)" - - return(zx) -} - -# Zaradi izgleda omejimo dolzino imena programa na 55 mest -programiV1 <- c(strtrim(tip_programa_veljavni$naziv, 55), "Skupaj") -# Kraticam dodamo vrednost "(.)", ki jo izpisemo vrstici "Skupaj" -# V novejsih razlicicah namesto "(.)", pripisemo "", torej prazno vrednost - -kratica_veljavni <- c(tip_programa_veljavni$kratica, "") -z <- f_tabelePriloga(c("Q6a", "Q6b", "Q6c")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4]) - -#Narise crto pred skupaj -rw1 <- c(-1, nrow(tabele_priloga)-1, 0) -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Pravočasnost\\\\informacij}}&\\rot{\\shortstack[l]{Spletna\\\\stran}} & \\rot{\\shortstack[l]{Brezžično\\\\omrežje}} \\\\ \\hline \\endfirsthead - \\caption{Obveščanje - po programih - \\textit{nadaljevanje}} \\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Pravočasnost\\\\informacij}}&\\rot{\\shortstack[l]{Spletna\\\\stran}} & \\rot{\\shortstack[l]{Brezžično\\\\omrežje}} \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - - -print(xtable(tabele_priloga, caption="Obveščanje - po programih", - align=c("pp{10.4cm}cc|ccc")), - caption.placement = "top", - #booktabs = TRUE, - table.placement= ("!ht"), - include.colnames = FALSE, - tabular.environment = "longtable", - floating = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage -<>= -z <- f_tabelePriloga(c("Q8a", "Q8b", "Q8c", "Q8d")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Prostori}} & \\rot{\\shortstack[l]{Oprema}} & \\rot{\\shortstack[l]{Prostor za \\\\ ind. učenje}} & \\rot{\\shortstack[l]{Razpored ur}} \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Prostori}} & \\rot{\\shortstack[l]{Oprema}} & \\rot{\\shortstack[l]{Prostor za \\\\ ind. učenje}} & \\rot{\\shortstack[l]{Razpored ur}} \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Prostori, oprema, urnik - po programih", - align=c("pp{9.7cm}cc|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -@ -\clearpage - -<>= - -z <- f_tabelePriloga(c("Q10a", "Q10b", "Q10c", "Q10d")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Obseg\\\\literature}} & \\rot{\\shortstack[l]{Dostopnost\\\\literature}} & \\rot{\\shortstack[l]{Svetovanje\\\\ pri iskanju}} & \\rot{\\shortstack[l]{Odnos\\\\osebja}} - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Obseg\\\\literature}} & \\rot{\\shortstack[l]{Dostopnost\\\\literature}} & \\rot{\\shortstack[l]{Svetovanje pri\\\\iskanju lit.}} & \\rot{\\shortstack[l]{Odnos\\\\osebja}} - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Knjižnica - po programih", - align=c("pp{8.8cm}cc|cccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - - -<>= - -z <- f_tabelePriloga(c("Q12a", "Q12b", "Q12c", "Q12d", "Q12e", "Q12f")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5], z[,6], z[,7]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Informacije o\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Zanimive možnosti\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Fakulteta/akad.\\\\spodbuja izmen.}} & \\rot{\\shortstack[l]{Opravljanje obv.\\\\predm. v tujini}} & \\rot{\\shortstack[l]{Priznavanje ECTS}} & \\rot{\\shortstack[l]{Strok. podp.\\\\medn. mob.}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Informacije o\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Zanimive možnosti\\\\medn. izmen.}} & \\rot{\\shortstack[l]{Fakulteta/akad.\\\\spodbuja izmen.}} & \\rot{\\shortstack[l]{Opravljanje obv.\\\\predm. v tujini}} & \\rot{\\shortstack[l]{Priznavanje ECTS}} & \\rot{\\shortstack[l]{Strok. podp.\\\\medn. mob.}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Mednarodna mobilnost - po programih", - align=c("pp{7cm}cc|cccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - -<>= - -z <- f_tabelePriloga(c("Q14a", "Q14b", "Q14c", "Q14d", "Q14e")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4], z[,5], z[,6]) -colnames(tabele_priloga) <- c("program", "", vprZ$dolgoIme[[18]], vprZ$dolgoIme[[19]], vprZ$dolgoIme[[20]], vprZ$dolgoIme[[21]], vprZ$dolgoIme[[22]]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Tutorstvo}} & \\rot{\\shortstack[l]{Karierno\\\\svetovanje}} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost in\\\\učinkovitost ref.}} & \\rot{\\shortstack[l]{Ustrezen odnos\\\\osebja}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Tutorstvo}} & \\rot{\\shortstack[l]{Karierno\\\\svetovanje}} & \\rot{\\shortstack[l]{Uradne ure\\\\štud. ref.}} & \\rot{\\shortstack[l]{Odzivnost in\\\\učinkovitost ref.}} & \\rot{\\shortstack[l]{Ustrezen odnos\\\\osebja}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Svetovalna pomoč - po programih", - align=c("pp{8cm}cc|ccccc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - -<>= - - -z <- f_tabelePriloga(c("Q16a", "Q16b")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3]) -colnames(tabele_priloga) <- c("program", "", vprZ$dolgoIme[[23]], vprZ$dolgoIme[[24]]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Izbirni predmeti\\\\drugje na UL}} & \\rot{\\shortstack[l]{Spoznavanje\\\\zunanjih inšt.}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Izbirni predmeti\\\\drugje na UL}} & \\rot{\\shortstack[l]{Spoznavanje\\\\zunanjih inšt.}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, caption="Drugi dejavniki študijskega procesa - po programih", - align=c("pp{10.8cm}cc|cc")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -@ -\clearpage -<>= - -z <- f_tabelePriloga(c("Q18a", "Q18b")) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Dobra izbira\\\\športnih akt.}} & \\rot{\\shortstack[l]{Zadovoljstvo s\\\\štud. svetom}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Dobra izbira\\\\športnih akt.}} & \\rot{\\shortstack[l]{Zadovoljstvo s\\\\štud. svetom}} - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") - -print(xtable(tabele_priloga, - caption="Študentski svet in obštudijske dejavnosti - po programih", - align=c("pp{10.8cm}cc|cc")), - - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -@ -\clearpage - -<>= - -z <- f_tabelePriloga("Q20a") -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", "\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Zadovoljstvo\\\\s študijem}} - - \\\\ \\hline \\endfirsthead - \\caption{Struktura respondentov - glede na študijski program - \\textit{nadaljevanje}}\\\\ - \\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{Zadovoljstvo\\\\s študijem}} - - \\\\ \\hline - \\endhead \\hline - \\textit{Tabela se nadaljuje na naslednji strani} - \\endfoot - \\endlastfoot ") -print(xtable(tabele_priloga, caption="Zadovoljstvo s študijem - po programih", - align=c("pp{12cm}cc|c")), - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) - -@ -\clearpage -<>= -if (dodatniSklop == 1){ -z <- f_tabelePriloga(vprZ$kratkoIme[28:30]) -tabele_priloga <- data.frame(programiV1, kratica_veljavni, z[,1], z[,2], z[,3], z[,4]) - -com1 <- c("\\toprule[0.4pt]", "\\hline ", paste0("\\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[1], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[2], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[3], "}} - -\\\\ \\hline \\endfirsthead -\\caption{Struktura respondentov glede na študijski program - \\textit{nadaljevanje}}\\\\ -\\midrule[0.4pt]\\hline \\textbf{\\makecell[l]{Program}} & \\makecell{stopnja} & \\makecell{n} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[1], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[2], "}} & \\rot{\\shortstack[l]{", napisi_dodatniSklop_priloga[3], "}} - \\\\ \\hline \\endhead \\hline -\\textit{Tabela se nadaljuje na naslednji strani} -\\endfoot -\\endlastfoot ")) - -print(xtable(tabele_priloga, - caption="Zadovoljstvo s programom - po programih", - align=c("pp{8.8cm}cc|ccc")), - - caption.placement = "top", - #booktabs = TRUE, - #table.placement= ("!ht"), ne dela pri LT - tabular.environment = "longtable", - floating = FALSE, - include.colnames = FALSE, - include.rownames = FALSE, - add.to.row = list(pos = as.list(rw1), command = com1), - sanitize.text.function = function(x){x}) -} -@ -% \newpage -% \section{Primerjava s povprečnimi vrednostmi Univerze v Ljubljani} -% -% Ocene dejavnikov lahko primerjamo s povprečjem članic UL, kjer je (zaenkrat) v analizo vključenih 23 od skupno 26 članic UL; manjkajo EF, FE in FRI. Vse članice imajo v izračunu povprečja enako težo, neodvisno od števila študentov. \\ -% -% Pri tem velja upoštevati, da zadovoljstvo študentov lahko določajo – poleg prizadevnosti osebja ter kvalitete procesov na fakulteti – tudi zunanji razlogi, na katere fakulteta nima vpliva. V prvi vrsti je to specifičen profil študentov (zaradi vpisnih pogojev, narave študija, motivacije ipd.), ki so zato lahko apriorno bolj ali manj kritični. Obstajajo pa tudi drugi potencialni zunanji razlogi, kot npr. prostorska stiska ali izredni dogodki. -% -% -% <>= -% d4_R <- stVprasanj_primerjava_UL -% -% d4_temp <- 0 -% d4_R2 <- as.numeric() -% for (i in (1:length(stVprasanj_primerjava_UL))){ -% if (i %% 2 == 0){ -% for(j in(1:stVprasanj_primerjava_UL[i])){ -% d4_R2 <- c(d4_R2, j+d4_temp) -% } -% d4_temp <- d4_temp + stVprasanj_primerjava_UL[i] -% } -% else{ -% d4_temp <- d4_temp + stVprasanj_primerjava_UL[i] -% } -% } -% -% -% #Drugace obarvanje zamakne za eno vrstico -% d4_R2 <- d4_R2 - 1 -% -% addtorow3 <- list() -% addtorow3$pos <- c(-1,list(d4_R2)) -% addtorow3$command <- c("\\hline", "\\rowcolor[gray]{0.95}") -% print(xtable(poSklopih_primerjava_UL[,-4], -% digits=c(0,0,0,0), -% caption = paste0("Primerjava ocen ", fakulteta, " ter povprečij UL -% (sortirano po sklopih dejavnikov)"), -% align = c("l", "p{15cm}", "c", "c")), -% caption.placement="top", -% sanitize.colnames.function = bold, -% sanitize.text.function = function(x){x}, -% include.rownames = FALSE, -% table.placement= ("!ht"), -% add.to.row=addtorow3) -% @ -% \newpage -% Za interpratacijo so lahko informativne tudi relativne razlike glede na povprečni nivo UL. V ta namen je izračunan Indeks, ki izraža razmerje med povprečjem FDV in UL (FDV/UL×100). Vrednost nad 100 pomeni, da je obravnavani dejavnik na članici ugoden in obratno. -% -% <>= -% -% rws3 <- seq(1, (nrow(poSklopih_primerjava_UL_index)-1), by = 2) -% print(xtable(poSklopih_primerjava_UL_index, -% digits=c(0,0,0,0,0), -% caption = paste0("Indeks dejavnikov na ", fakulteta, -% " glede na povprečje UL (sortirano po velikosti indeksa)"), -% align = c("l", "p{13cm}", "c", "c", "c")), -% caption.placement="top", -% sanitize.colnames.function = bold, -% sanitize.text.function = function(x){x}, -% include.rownames = FALSE, -% table.placement= ("!ht"), -% add.to.row = list(pos = list(-1, rws3), -% command = c("\\hline","\\rowcolor[gray]{0.95}"))) -% -% -% @ -% Izračunano razmerje (indeks) pokaže, da je na \Sexpr{fakulteta} relativno najboljše ocenjen dejavnik '\Sexpr{najboljsi}' (\Sexpr{najboljsi_povp}), kjer je indeks \Sexpr{najboljsi_indeks}. \\ \\ Relativno - glede na povprečje UL - je na \Sexpr{fakulteta} najbolj kritičen dejavnik '\Sexpr{najslabsi}' (\Sexpr{najslabsi_povp}), kjer indeks znaša samo \Sexpr{najslabsi_indeks}. -% -% <>= -% -% #cat(paste(sort(pw1))) -% #rws3<- seq(1, (length(pw1)), by = 2) -% #col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -% -% #print(xtable(data.frame(sort(pw1)), align = c("L{0cm}", "L{14cm}"), -% # caption = "Odprti odgovori - pomankljivost in predlogi izboljšav"), tabular.environment = #'longtable', -% # floating = FALSE, include.rownames = FALSE, include.colnames = FALSE, caption.placement = "top") -% -% -% #poSklopih_primerjava_UL_graf <- poSklopih_primerjava_UL_graf[seq(1,54,2),] -% nivojiFaktorjev <- factor(poSklopih_primerjava_UL_graf$barva) -% poSklopih_primerjava_UL_graf$dolgoIme <- as.character(poSklopih_primerjava_UL_graf$dolgoIme) -% #Then turn it back into an ordered factor -% poSklopih_primerjava_UL_graf$dolgoIme <- factor(poSklopih_primerjava_UL_graf$dolgoIme, levels=rev(unique(poSklopih_primerjava_UL_graf$dolgoIme))) -% -% # Poizkus pripisovanja skale, saj je v primeru najvecjega indeksa manjsega od 120, -% # in navpicni crti pri vrednosti 120, ta vrednost na pol odrezana -% # opusceno -% #limita_index <- 125 -% #if(max(poSklopih_primerjava_UL_graf$index)>125){ -% # limita_index <- 130 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>130){ -% # limita_index <- 140 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>140){ -% # limita_index <- 150 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>150){ -% # limita_index <- 160 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>160){ -% # limita_index <- 170 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>170){ -% # limita_index <- 180 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>180){ -% # limita_index <- 190 -% #} -% # Zaokrozi na naslednjo desetico. -% limita_index <- round2(max(poSklopih_primerjava_UL_graf$index)+5,-1) -% -% # Veliko komentarjev, zaradi moznih variacij (barve stolpcev, glede na vrednost), dva stolpca # - loceno trenutna fakulteta, UNI, -% # za vsako povprecje dejavnikov -% -% izpis <- ggplot(poSklopih_primerjava_UL_graf, -% aes(x=dolgoIme,#y=odgMean, -% y= index, #group=nivojiFaktorjev, color = nivojiFaktorjev, -% fill=rev(nivojiFaktorjev), -% #label = formatC2(poSklopih_primerjava_UL_graf$odgMean, digits=1, format='f')))+ -% label = poSklopih_primerjava_UL_graf$index))+ -% #geom_line()+ -% #geom_point()+ -% #scale_color_manual(values=c("#468fd7"))+#, "#CD2626"))+ -% -% geom_bar(stat="identity", position="dodge", fill="#c7ddf3")+ #Pozicija value label-ov -% #geom_hline(yintercept = c(80), linetype="dotted", colour="#B6321C") + -% #geom_hline(yintercept = c(90), linetype="dotted", colour="#F58137") + -% #geom_hline(yintercept = c(110), linetype="dotted", colour="#36BF4B") + -% #geom_hline(yintercept = c(120), linetype="dotted", colour="#006666") + -% -% #geom_hline(yintercept = c(80), linetype="dotted", colour="#3872ac") + -% #geom_hline(yintercept = c(90), linetype="dotted", colour="#3872ac") + -% geom_hline(yintercept = c(100), linetype="dotted", colour="#3872ac") + -% #geom_hline(yintercept = c(120), linetype="dotted", colour="#3872ac") + -% #geom_hline(yintercept = c(4, 4.5), linetype="dotted", colour="#D9E2E1") + -% geom_text(position = position_dodge(0.9), -% hjust = 1.5, -% color = rev(poSklopih_primerjava_UL_graf$barva), -% #color = barva_font, -% fontface = "bold", -% size = 3.1)+ -% scale_y_continuous(expand=c(0,0), -% limits=c(0, 130), -% oob = rescale_none) + -% #scale_fill_manual(breaks=rev(nivojiFaktorjev), -% # values= rev(unique(poSklopih_primerjava_UL_graf$barva)), -% # guide=FALSE)+ -% coord_flip()+ -% -% #scale_fill_manual(name = "", breaks=rev(nivojiFaktorjev), -% # values= c("#D9E2E1", "#468fd7"), -% # labels= poSklopih_primerjava_UL_graf$Fakulteta)+ -% xlab("")+ylab("\nIndeks")+ -% theme_classic()+ -% #theme(aspect.ratio= asp.ratio)+ -% -% theme( -% axis.title=element_text(size=11, -% family='CM Roman'), -% axis.line.x = element_line(colour = 'black', size=0.4, -% linetype='solid'), -% axis.line.y = element_line(colour = 'black', size=0.4, -% linetype='solid'))#, -% #legend.title = element_blank()) -% ime <- paste0("rezultati/", ID, "/grafi/primerjava_z_UL.pdf") -% ggsave(izpis, filename=ime, units="in", height=9, width=7, device=cairo_pdf) -% cat(paste0(' -% \\begin{figure}[ht] -% %\\vspace*{-1cm} -% \\caption{Razmerje (indeks) povprečij dejavnikov na ', fakulteta, ' glede na povprečja UL (sortirano po velikosti indeksa)} -% \\includegraphics[width=\\maxwidth]{../',ime, '} -% \\end{figure}')) -% @ -\end{document} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.aux b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.aux deleted file mode 100644 index 2885fe72a..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.aux +++ /dev/null @@ -1,195 +0,0 @@ -\relax -\providecommand\hyper@newdestlabel[2]{} -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\providecommand\HyField@AuxAddToCoFields[2]{} -\@writefile{toc}{\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1}} -\@writefile{toc}{\contentsline {section}{\numberline {2.}Metodologija}{3}{section.0.2}} -\gdef \LT@i {\LT@entry - {1}{259.53888pt}\LT@entry - {1}{47.07825pt}\LT@entry - {5}{28.42497pt}\LT@entry - {5}{28.82497pt}\LT@entry - {5}{28.42497pt}\LT@entry - {1}{31.21283pt}\LT@entry - {5}{22.94998pt}\LT@entry - {1}{24.90562pt}} -\gdef \LT@ii {\LT@entry - {1}{259.53888pt}\LT@entry - {1}{47.07825pt}\LT@entry - {1}{54.99464pt}\LT@entry - {5}{28.42497pt}\LT@entry - {1}{31.21283pt}\LT@entry - {5}{22.94998pt}\LT@entry - {5}{28.82497pt}} -\@writefile{toc}{\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov glede na program in letnik}{6}{section.0.3}} -\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na \IeC {\v s}tudijski program\relax }}{6}{table.0.1}} -\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Struktura \IeC {\v s}tudentov glede na sodelovanje po programih\relax }}{6}{table.0.2}} -\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na stopnjo programa\relax }}{6}{table.caption.3}} -\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Struktura \IeC {\v s}tudentov glede na sodelovanje po stopnjah programov\relax }}{7}{table.caption.4}} -\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces Sodelovanje \IeC {\v s}tudentov glede na letnik\relax }}{7}{table.caption.5}} -\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces Struktura \IeC {\v s}tudentov glede na sodelovanje po letniku\relax }}{7}{table.caption.6}} -\@writefile{toc}{\contentsline {section}{\numberline {4.}Analiza dejavnikov in vsebinskih sklopov}{8}{section.0.4}} -\@writefile{lot}{\contentsline {table}{\numberline {7}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{8}{table.caption.7}} -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Opisne statistike za dejavnike, urejene po povpre\IeC {\v c}jih\relax }}{9}{figure.caption.8}} -\@writefile{lot}{\contentsline {table}{\numberline {8}{\ignorespaces Opisne statistike za dejavnike, urejene po sklopih glede na mediano povpre\IeC {\v c}ij dejavnikov znotraj posameznega sklopa\relax }}{10}{table.caption.9}} -\gdef \LT@iii {\LT@entry - {1}{168.49014pt}\LT@entry - {3}{22.94998pt}\LT@entry - {2}{29.19218pt}\LT@entry - {3}{22.94998pt}\LT@entry - {2}{46.97493pt}\LT@entry - {4}{22.94998pt}\LT@entry - {2}{32.23613pt}\LT@entry - {3}{28.42497pt}\LT@entry - {2}{26.45468pt}\LT@entry - {3}{28.42497pt}\LT@entry - {2}{36.28801pt}} -\@writefile{lot}{\contentsline {table}{\numberline {9}{\ignorespaces Dejavniki \IeC {\v s}tudijskega procesa 2016/2017 - frekven\IeC {\v c}na porazdelitev enot\relax }}{11}{table.0.9}} -\@writefile{toc}{\contentsline {section}{\numberline {5.}Podrobna analiza po sklopih}{12}{section.0.5}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Obve\IeC {\v s}\IeC {\v c}anje na fakulteti}{12}{subsection.0.5.1}} -\@writefile{lot}{\contentsline {table}{\numberline {10}{\ignorespaces Obve\IeC {\v s}\IeC {\v c}anje na fakulteti - po stopnji \IeC {\v s}tudija\relax }}{12}{table.caption.10}} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Obve\IeC {\v s}\IeC {\v c}anje na fakulteti - po stopnji \IeC {\v s}tudija\relax }}{12}{figure.caption.11}} -\@writefile{lot}{\contentsline {table}{\numberline {11}{\ignorespaces Obve\IeC {\v s}\IeC {\v c}anje na fakulteti - po letniku\relax }}{13}{table.caption.12}} -\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Obve\IeC {\v s}\IeC {\v c}anje na fakulteti - po letniku\relax }}{13}{figure.caption.13}} -\gdef \LT@iv {\LT@entry - {1}{524.14963pt}} -\@writefile{lot}{\contentsline {table}{\numberline {12}{\ignorespaces Odprti odgovori: Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi z obve\IeC {\v s}\IeC {\v c}anjem (o \IeC {\v s}tudijskem procesu, ob\IeC {\v s}tudijski dejavnosti itd.)?\relax }}{14}{table.0.12}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Prostori, oprema in urnik}{16}{subsection.0.5.2}} -\@writefile{lot}{\contentsline {table}{\numberline {13}{\ignorespaces Prostori, oprema in urnik - po stopnji \IeC {\v s}tudija\relax }}{16}{table.caption.14}} -\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Prostori, oprema, urnik - po stopnji \IeC {\v s}tudija\relax }}{16}{figure.caption.15}} -\@writefile{lot}{\contentsline {table}{\numberline {14}{\ignorespaces Prostori, oprema in urnik - po letniku\relax }}{17}{table.caption.16}} -\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Prostori, oprema, urnik - po letniku\relax }}{17}{figure.caption.17}} -\@writefile{lot}{\contentsline {table}{\numberline {15}{\ignorespaces Odprti odgovori: Bi nam \IeC {\v z}eleli sporo\IeC {\v c}iti \IeC {\v s}e kaj v zvezi s prostori, opremo oz. urnikom?\relax }}{18}{table.0.15}} -\gdef \LT@v {\LT@entry - {1}{524.14963pt}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.3}Knji\IeC {\v z}nica}{21}{subsection.0.5.3}} -\@writefile{lot}{\contentsline {table}{\numberline {16}{\ignorespaces Knji\IeC {\v z}nica - po stopnji \IeC {\v s}tudija\relax }}{21}{table.caption.18}} -\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Knji\IeC {\v z}nica - po stopnji \IeC {\v s}tudija\relax }}{21}{figure.caption.19}} -\@writefile{lot}{\contentsline {table}{\numberline {17}{\ignorespaces Knji\IeC {\v z}nica - po letniku\relax }}{22}{table.caption.20}} -\@writefile{lof}{\contentsline {figure}{\numberline {7}{\ignorespaces Knji\IeC {\v z}nica - po letniku\relax }}{22}{figure.caption.21}} -\gdef \LT@vi {\LT@entry - {1}{524.14963pt}} -\@writefile{lot}{\contentsline {table}{\numberline {18}{\ignorespaces Odprti odgovori: Va\IeC {\v s}i predlogi glede dela knji\IeC {\v z}nic.\relax }}{23}{table.0.18}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.4}Mednarodna mobilnost}{24}{subsection.0.5.4}} -\@writefile{lot}{\contentsline {table}{\numberline {19}{\ignorespaces Mednarodna mobilnost - po stopnji \IeC {\v s}tudija\relax }}{24}{table.caption.22}} -\@writefile{lof}{\contentsline {figure}{\numberline {8}{\ignorespaces Mednarodna mobilnost - po stopnji \IeC {\v s}tudija\relax }}{24}{figure.caption.23}} -\@writefile{lot}{\contentsline {table}{\numberline {20}{\ignorespaces Mednarodna mobilnost - po letniku\relax }}{25}{table.caption.24}} -\@writefile{lof}{\contentsline {figure}{\numberline {9}{\ignorespaces Mednarodna mobilnost - po letniku\relax }}{25}{figure.caption.25}} -\gdef \LT@vii {\LT@entry - {1}{524.14963pt}} -\@writefile{lot}{\contentsline {table}{\numberline {21}{\ignorespaces Odprti odgovori: Va\IeC {\v s}i predlogi glede mobilnosti.\relax }}{26}{table.0.21}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.5}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{27}{subsection.0.5.5}} -\@writefile{lot}{\contentsline {table}{\numberline {22}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - po stopnji \IeC {\v s}tudija\relax }}{27}{table.caption.26}} -\@writefile{lof}{\contentsline {figure}{\numberline {10}{\ignorespaces Svetovalna pomo\IeC {\v c} - po stopnji \IeC {\v s}tudija\relax }}{27}{figure.caption.27}} -\@writefile{lot}{\contentsline {table}{\numberline {23}{\ignorespaces Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom - po letniku\relax }}{28}{table.caption.28}} -\@writefile{lof}{\contentsline {figure}{\numberline {11}{\ignorespaces Svetovalna pomo\IeC {\v c} - po letniku\relax }}{28}{figure.caption.29}} -\gdef \LT@viii {\LT@entry - {1}{524.14963pt}} -\@writefile{lot}{\contentsline {table}{\numberline {24}{\ignorespaces Odprti odgovori: Va\IeC {\v s}i predlogi glede delovanja referata in svetovanja \IeC {\v s}tudentom.\relax }}{29}{table.0.24}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.6}Drugi dejavniki \IeC {\v s}tudijskega procesa}{30}{subsection.0.5.6}} -\@writefile{lot}{\contentsline {table}{\numberline {25}{\ignorespaces Drugi dejavniki \IeC {\v s}tudijskega procesa - po stopnji \IeC {\v s}tudija\relax }}{30}{table.caption.30}} -\@writefile{lof}{\contentsline {figure}{\numberline {12}{\ignorespaces Drugi dejavniki \IeC {\v s}tudijskega procesa - po stopnji \IeC {\v s}tudija\relax }}{30}{figure.caption.31}} -\@writefile{lot}{\contentsline {table}{\numberline {26}{\ignorespaces Drugi dejavniki \IeC {\v s}tudijskega procesa - po letniku\relax }}{31}{table.caption.32}} -\@writefile{lof}{\contentsline {figure}{\numberline {13}{\ignorespaces Drugi dejavniki \IeC {\v s}tudijskega procesa - po letniku\relax }}{31}{figure.caption.33}} -\gdef \LT@ix {\LT@entry - {1}{524.14963pt}} -\@writefile{lot}{\contentsline {table}{\numberline {27}{\ignorespaces Odprti odgovori: Va\IeC {\v s}i predlogi glede drugih dejavnikov \IeC {\v s}tudija kot npr. izbirnih predmetov in povezovanja fakultete/akademije z drugimi in\IeC {\v s}titucijami.\relax }}{32}{table.0.27}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.7}\IeC {\v S}tudentski svet in ob\IeC {\v s}tudijske dejavnosti}{33}{subsection.0.5.7}} -\@writefile{lot}{\contentsline {table}{\numberline {28}{\ignorespaces \IeC {\v S}tudentski svet in ob\IeC {\v s}tudijske dejavnosti - po stopnji \IeC {\v s}tudija\relax }}{33}{table.caption.34}} -\@writefile{lof}{\contentsline {figure}{\numberline {14}{\ignorespaces \IeC {\v S}tudentski svet in ob\IeC {\v s}tudijske dejavnosti - po stopnji \IeC {\v s}tudija\relax }}{33}{figure.caption.35}} -\@writefile{lot}{\contentsline {table}{\numberline {29}{\ignorespaces \IeC {\v S}tudentski svet in ob\IeC {\v s}tudijske dejavnosti - po letniku\relax }}{34}{table.caption.36}} -\@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces \IeC {\v S}tudentski svet in ob\IeC {\v s}tudijske dejavnosti - po letniku\relax }}{34}{figure.caption.37}} -\gdef \LT@x {\LT@entry - {1}{524.14963pt}} -\@writefile{lot}{\contentsline {table}{\numberline {30}{\ignorespaces Odprti odgovori: Va\IeC {\v s}i predlogi za izbolj\IeC {\v s}anje delovanja in aktivnosti \IeC {\v s}tudentskega sveta ter izbolj\IeC {\v s}anje ob\IeC {\v s}tudijskih dejavnosti.\relax }}{35}{table.0.30}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.8}Zadovoljstvo s \IeC {\v s}tudijem}{36}{subsection.0.5.8}} -\@writefile{lot}{\contentsline {table}{\numberline {31}{\ignorespaces Zadovoljstvo s \IeC {\v s}tudijem - po stopnji \IeC {\v s}tudija\relax }}{36}{table.caption.38}} -\@writefile{lot}{\contentsline {table}{\numberline {32}{\ignorespaces Zadovoljstvo s \IeC {\v s}tudijem - po letniku\relax }}{36}{table.caption.39}} -\gdef \LT@xi {\LT@entry - {1}{524.14963pt}} -\@writefile{lot}{\contentsline {table}{\numberline {33}{\ignorespaces Odprti odgovori: Prosimo, na\IeC {\v s}tejte nekaj najbolj pozitivnih opa\IeC {\v z}anj, povezanih s \IeC {\v s}tudijem, ki bi jih \IeC {\v z}eleli \IeC {\v s}e posebej izpostaviti.\relax }}{37}{table.0.33}} -\@writefile{lot}{\contentsline {table}{\numberline {34}{\ignorespaces Odprti odgovori: Prosimo, na\IeC {\v s}tejte nekaj pomanjkljivosti in predlogov izbolj\IeC {\v s}av, povezanih s \IeC {\v s}tudijem; kaj bi \IeC {\v z}eleli pri \IeC {\v s}tudiju spremeniti oz. izbolj\IeC {\v s}ati.\relax }}{39}{table.0.34}} -\gdef \LT@xii {\LT@entry - {1}{524.14963pt}} -\gdef \LT@xiii {\LT@entry - {1}{307.90848pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{31.0906pt}\LT@entry - {1}{32.32797pt}} -\@writefile{toc}{\contentsline {section}{\numberline {6.}Analize dejavnikov po programih}{42}{section.0.6}} -\@writefile{lot}{\contentsline {table}{\numberline {35}{\ignorespaces Obve\IeC {\v s}\IeC {\v c}anje - po programih\relax }}{42}{table.0.35}} -\gdef \LT@xiv {\LT@entry - {1}{287.99164pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {5}{25.68747pt}\LT@entry - {5}{25.68747pt}\LT@entry - {1}{32.03229pt}\LT@entry - {5}{25.68747pt}} -\@writefile{lot}{\contentsline {table}{\numberline {36}{\ignorespaces Prostori, oprema, urnik - po programih\relax }}{43}{table.0.36}} -\gdef \LT@xv {\LT@entry - {1}{262.38434pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.03229pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{32.32797pt}} -\@writefile{lot}{\contentsline {table}{\numberline {37}{\ignorespaces Knji\IeC {\v z}nica - po programih\relax }}{44}{table.0.37}} -\gdef \LT@xvi {\LT@entry - {1}{211.16928pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{34.58914pt}\LT@entry - {5}{25.68747pt}\LT@entry - {1}{32.32797pt}} -\@writefile{lot}{\contentsline {table}{\numberline {38}{\ignorespaces Mednarodna mobilnost - po programih\relax }}{45}{table.0.38}} -\gdef \LT@xvii {\LT@entry - {1}{239.62204pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {5}{25.68747pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{30.0668pt}\LT@entry - {1}{32.32797pt}} -\@writefile{lot}{\contentsline {table}{\numberline {39}{\ignorespaces Svetovalna pomo\IeC {\v c} - po programih\relax }}{46}{table.0.39}} -\gdef \LT@xviii {\LT@entry - {1}{319.28984pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {1}{34.58914pt}\LT@entry - {1}{34.58914pt}} -\@writefile{lot}{\contentsline {table}{\numberline {40}{\ignorespaces Drugi dejavniki \IeC {\v s}tudijskega procesa - po programih\relax }}{47}{table.0.40}} -\gdef \LT@xix {\LT@entry - {1}{319.28984pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {1}{32.32797pt}\LT@entry - {1}{32.32797pt}} -\@writefile{lot}{\contentsline {table}{\numberline {41}{\ignorespaces \IeC {\v S}tudentski svet in ob\IeC {\v s}tudijske dejavnosti - po programih\relax }}{48}{table.0.41}} -\gdef \LT@xx {\LT@entry - {1}{353.43306pt}\LT@entry - {1}{43.63411pt}\LT@entry - {5}{28.82497pt}\LT@entry - {1}{34.58914pt}} -\@writefile{lot}{\contentsline {table}{\numberline {42}{\ignorespaces Zadovoljstvo s \IeC {\v s}tudijem - po programih\relax }}{49}{table.0.42}} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.out b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.out deleted file mode 100644 index efcdff96b..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.out +++ /dev/null @@ -1,6 +0,0 @@ -\BOOKMARK [1][-]{section.0.1}{Povzetek}{}% 1 -\BOOKMARK [1][-]{section.0.2}{Metodologija}{}% 2 -\BOOKMARK [1][-]{section.0.3}{Sodelovanje \235tudentov glede na program in letnik}{}% 3 -\BOOKMARK [1][-]{section.0.4}{Analiza dejavnikov in vsebinskih sklopov}{}% 4 -\BOOKMARK [1][-]{section.0.5}{Podrobna analiza po sklopih}{}% 5 -\BOOKMARK [1][-]{section.0.6}{Analize dejavnikov po programih}{}% 6 diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.pdf b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.pdf deleted file mode 100644 index 81b537848..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.pdf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.tex b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.tex deleted file mode 100644 index d1d08b793..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.tex +++ /dev/null @@ -1,1733 +0,0 @@ -\documentclass[11pt,a4paper]{report}\usepackage[]{graphicx}\usepackage[]{color} -%% maxwidth is the original width if it is less than linewidth -%% otherwise use linewidth (to make sure the graphics do not exceed the margin) -\makeatletter -\def\maxwidth{ % - \ifdim\Gin@nat@width>\linewidth - \linewidth - \else - \Gin@nat@width - \fi -} -\makeatother - -\definecolor{fgcolor}{rgb}{0.345, 0.345, 0.345} -\newcommand{\hlnum}[1]{\textcolor[rgb]{0.686,0.059,0.569}{#1}}% -\newcommand{\hlstr}[1]{\textcolor[rgb]{0.192,0.494,0.8}{#1}}% -\newcommand{\hlcom}[1]{\textcolor[rgb]{0.678,0.584,0.686}{\textit{#1}}}% -\newcommand{\hlopt}[1]{\textcolor[rgb]{0,0,0}{#1}}% -\newcommand{\hlstd}[1]{\textcolor[rgb]{0.345,0.345,0.345}{#1}}% -\newcommand{\hlkwa}[1]{\textcolor[rgb]{0.161,0.373,0.58}{\textbf{#1}}}% -\newcommand{\hlkwb}[1]{\textcolor[rgb]{0.69,0.353,0.396}{#1}}% -\newcommand{\hlkwc}[1]{\textcolor[rgb]{0.333,0.667,0.333}{#1}}% -\newcommand{\hlkwd}[1]{\textcolor[rgb]{0.737,0.353,0.396}{\textbf{#1}}}% -\let\hlipl\hlkwb - -\usepackage{framed} -\makeatletter -\newenvironment{kframe}{% - \def\at@end@of@kframe{}% - \ifinner\ifhmode% - \def\at@end@of@kframe{\end{minipage}}% - \begin{minipage}{\columnwidth}% - \fi\fi% - \def\FrameCommand##1{\hskip\@totalleftmargin \hskip-\fboxsep - \colorbox{shadecolor}{##1}\hskip-\fboxsep - % There is no \\@totalrightmargin, so: - \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}% - \MakeFramed {\advance\hsize-\width - \@totalleftmargin\z@ \linewidth\hsize - \@setminipage}}% - {\par\unskip\endMakeFramed% - \at@end@of@kframe} -\makeatother - -\definecolor{shadecolor}{rgb}{.97, .97, .97} -\definecolor{messagecolor}{rgb}{0, 0, 0} -\definecolor{warningcolor}{rgb}{1, 0, 1} -\definecolor{errorcolor}{rgb}{1, 0, 0} -\newenvironment{knitrout}{}{} % an empty environment to be redefined in TeX - -\usepackage{alltt} -\newcommand*\rot{\rotatebox{90}} -%\zmanjša robove dokumenta -\usepackage[cm]{fullpage} -%\za lomljenje dolgih vrstic -\usepackage{makecell} -% za oznacevanje elementov v tabeli (odprti odg) kot seznam -\newcommand{\tabitem}{~~\llap{\textbullet}~~} -%Odstrani odstavke (zamike) -\setlength{\parindent}{0pt} -%rotiranje imen stolpcev -\usepackage{rotating} -%Tikz -\usepackage{preview} -\usepackage{pgf} -%slovenski napisi -\usepackage{../sloven2e} -\usepackage{booktabs} -\usepackage{longtable} -% pomembno, da so vsi naslovi tabel poravnani z levo stranjo tabele -% velja za longtable -\setlength{\LTleft}{0pt} -\usepackage[utf8]{inputenc} -%\ drugace vrne error najbrz zaradi gsuba pri odprtih odg. -\DeclareUnicodeCharacter{00A0}{ } -%povsod isti razmik -%\usepackage{setspace} -% Pomembno, da pravilno zlomi url v dve vrstici -\usepackage{url} -%Hiperlink tabele -\usepackage{color} %May be necessary if you want to color links -\usepackage{hyperref} -%\usepackage[breaklinks=true]{hyperref} -\usepackage{times} -\hypersetup{ - colorlinks=true, %set true if you want colored links - linktoc=all, %set to all if you want both sections and subsections linked - linkcolor=black, - %linkcolor=blue, %choose some color if you want links to stand out - urlcolor = blue -} - -\usepackage{colortbl, xcolor} -%\ Za poravnavo napisa z levo stranjo tabele -\usepackage{caption} \captionsetup[table]{singlelinecheck=false} -\usepackage{caption} \captionsetup[figure]{singlelinecheck=false} -%\ Nejasno: kje so apostrofi? -%\ Za apostrofe pri napisu pod drugo t. -\usepackage[T1]{fontenc} -%\Spremeni barvo, napis, slog napisa tabele -%\definecolor{poglavja}{HTML}{5D92CD} -%\usepackage[font={color=ocre},figurename=Fig.,labelfont={bf}]{caption} -%\usepackage[font={color=ocre,bf}]{caption} - -% Za "posebne "poravnave tabel -\usepackage{array} -\newcolumntype{L}[1]{>{\raggedright\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{C}[1]{>{\centering\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{R}[1]{>{\raggedleft\let\newline\\ -\arraybackslash\hspace{0pt}}m{#1}} -\newcolumntype{P}[1]{>{\raggedright\tabularxbackslash}p{#1}} - -% Za piko pri sekcijah -\renewcommand\thesection{\arabic{section}.} -\renewcommand\thesubsection{\thesection\arabic{subsection}} - -%\author{} -%\logotip univerze -\usepackage{graphicx} -\graphicspath{ {../logo/} } -%\ za custom glavo / nogo -%\usepackage{fancyhdr} -%\pagestyle{fancy} -%\fancyhf{} -% izbrise crto pod headerjem -%\renewcommand{\headrulewidth}{0pt} -%\lfoot{Metodologija je zajeta s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/}} -%\ dev.off(), ce se v porocilu pojavljajo dodatni grafi - - - - - - -%\title{Zadovoljstvo študentov fakulteta s študijem celaLetnica} -%\title{{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2cm] EVALVACIJSKO POROČILO ZA PROGRAME I IN II STOPNJE \\[0.2cm]}}} \textup{\LARGE \textbf{ime.fakultete} \\[0.2in] {\color{red} \textbf{Splošni vidiki študijskega procesa}}} \\[0.5in] {\normalsize Študijsko leto celaLetnica \\[0.5in] Pripombe, komentarje, vprašanja sporočite na \\ \url{http://1ka.si/set} }} -\usepackage{fancyhdr} -\pagestyle{fancyplain} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{Zdravstvena fakulteta}}% \hfill {{\nouppercase{\leftmark}}}} -\fancyfoot[L]{\small{Pripombe, komentarje, vprašanja sporočite na \url{http://1ka.si/set}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} -\setcounter{tocdepth}{1} -\IfFileExists{upquote.sty}{\usepackage{upquote}}{} -\begin{document} - \begin{titlepage} - \begin{center} - -\begin{figure}[t] -\vspace*{0.2cm} -\includegraphics[width=7.5cm]{logo_ZF} -\centering -\vspace*{3.5cm} -\end{figure} -{\textsc{ {\Large ŠTUDENTSKE ANKETE UNIVERZE V LJUBLJANI\\[0.2cm] EVALVACIJSKO POROČILO ZA PROGRAME I IN II STOPNJE \\[0.3in]}}} -\textup{\LARGE \textbf{Zdravstvena fakulteta} \\[0.3in] {\color{red} \textbf{Splošni vidiki študijskega procesa}}} \\[0.5in] -{\large Študijsko leto 2016/2017 \\[1.5in] - -Pripombe, komentarje, vprašanja sporočite na \\[0.3in] \url{http://1ka.si/set} } -\vfill - {\large Ljubljana, \today} -\end{center} -\end{titlepage} - - - - - - - - -\section{Povzetek} -%Anketa o splošnih vidikih študijskega procesa študentov na prvi in drugi stopnji programov fakulteta je potekala od julija do konca drugega semestra. Osnovni vprašalnik je vključeval ocene zadovoljstva za 27 dejavnikov študijskega procesa, združenih v osem sklopov. V nadaljevanju povzemamo ključne ugotovitve. Ocene, ki pozitivno ali negativno izstopajo, dodatno obarvane (podrobnosti so v Metodologiji). \\\\ - -Povzemamo glavne ugotovitve ankete, v kateri so študenti prve in druge stopnje ZF (2016/2017) ocenjevali zadovoljstvo z dejavniki študijskega procesa. Povprečja dejavnikov, ki na lestvici 1-5 izraziteje izstopajo, pozitivno ali negativno, so dodatno obarvana (podrobnosti so v Metodologiji).\\ - - -Zelo dobro je ocenjen naslednji sklop (mediana dejavnikov je v intervalu 4.0 - 4.5): \begin{itemize}\item \textbf{Knjižnica:} \textit{'Osebje knjižnice ima ustrezen odnos do uporabnika.'} (\textbf{\textcolor[HTML]{36BF4B}{4.4}}), \textit{'Osebje knjižnice mi zna ustrezno svetovati pri iskanju literature.'} (\textbf{\textcolor[HTML]{36BF4B}{4.3}}), \textit{'Dostopnost literature je ustrezna.'} (3.8) in \textit{'Obseg literature je ustrezen.'} (3.7). \end{itemize}V celoti gledano so pozitivno ocenjeni naslednji sklopi, ki pa imajo še precej prostora za izboljšave (mediana dejavnikov je v intervalu 3.5 - 4.0): \begin{itemize}\item \textbf{Prostori, oprema in urnik:} \textit{'Prostori za predavanja, vaje in druge oblike pedagoškega dela so ustrezni.'} (\textbf{\textcolor[HTML]{36BF4B}{4.1}}), \textit{'Oprema za predavanja, vaje in druge oblike pedagoškega dela je ustrezna.'} (3.9), \textit{'Dovolj je primernega prostora za individualno učenje (čitalnice, učilnice, seminarji itd.).'} (3.6) in \textit{'Razpored ur za predavanja, vaje in druge oblike dela mi ustreza.'} (\textcolor[HTML]{B6321C}{\textbf{2.8}}).\item \textbf{Mednarodna mobilnost:} \textit{'Priznavanje v tujini opravljenih obveznosti (ECTS) je ustrezno.'} (3.9), \textit{'Strokovna podpora mednarodni mobilnosti je ustrezna.'} (3.9), \textit{'Spodbuja in podpira se izmenjavo.'} (3.8), \textit{'Imam možnost opravljanja obveznih predmetov v tujini.'} (3.7), \textit{'Na voljo imamo dovolj informacij o možnih mednarodnih izmenjavah.'} (3.7) in \textit{'Na voljo je dovolj zanimivih možnosti za mednarodno izmenjavo.'} (3.7).\item \textbf{Zadovoljstvo s študijem:} \textit{'V splošnem sem s študijem zadovoljen.'} (3.7). \end{itemize}Veliko prostora za izboljšave je pri naslednjih sklopih, kjer je pozitivno oceno (4 ali 5) podala manj kot polovica študentov (mediana dejavnikov je v intervalu 3.0 - 3.5): \begin{itemize}\item \textbf{Obveščanje na fakulteti:} \textit{'Spletna stran vsebuje vse informacije, ki jih kot študent potrebujem.'} (3.8), \textit{'Informacije o študijskem procesu sem dobil/a pravočasno.'} (3.5) in \textit{'Z brezžičnim omrežjem sem zadovoljen/zadovoljna.'} (\textcolor[HTML]{F58137}{\textbf{3.0}}).\item \textbf{Študentski svet in obštudijske dejavnosti:} \textit{'Z delovanjem študentskega sveta sem zadovoljen.'} (3.6) in \textit{'V okviru študija mi je omogočena dobra izbira športnih aktivnosti.'} (\textcolor[HTML]{F58137}{\textbf{3.3}}).\item \textbf{Svetovalna pomoč študentom:} \textit{'Če potrebujem tutorja, vem, na koga se lahko obrnem.'} (3.5), \textit{'Osebje študentskega referata ima ustrezen odnos do študentov.'} (\textcolor[HTML]{F58137}{\textbf{3.4}}), \textit{'Vem, na koga se lahko obrnem za karierno svetovanje.'} (\textcolor[HTML]{F58137}{\textbf{3.2}}), \textit{'Osebje študentskega referata je odzivno in učinkovito.'} (\textcolor[HTML]{F58137}{\textbf{3.2}}) in \textit{'Uradne ure študentskega referata so primerne.'} (\textcolor[HTML]{F58137}{\textbf{3.2}}).\item \textbf{Drugi dejavniki študijskega procesa:} \textit{'Med študijem sem spoznal ustrezno število zunanjih inštitucij (z ekskurzijami, vabljenjem zunanjih izvajalcev na seminarje itd.).'} (\textcolor[HTML]{F58137}{\textbf{3.2}}) in \textit{'Ponujeni so mi bili primerni izbirni predmeti z drugih fakultet/akademij UL.'} (\textcolor[HTML]{F58137}{\textbf{3.1}}). \end{itemize}Podrobna primerjava rezultatov z drugimi članicami UL je na povezavi \url{http://ul.1ka.si}. -%\vfill \hyperlink{thesentence}{*Način avtomatskega generiranja povzetka je opisan v prilogi 2.} -\newpage -\tableofcontents -\newpage -\section{Metodologija} - -   - V okviru projekta Kakovost – Univerza v Ljubljani (KUL) je bila v letih 2013 in 2014 izvedena prenova študentskih anket, s študijskim letom 2014/2015 pa  je v veljavo stopil nov Pravilnik o študentskih anketah. Pravilnik ureja izvajanje šestih študentskih anket na vseh članicah Univerze v Ljubljani (podrobnosti so na {\url{http://ul.1ka.si/splosna}}). Ankete se izvajajo za predmete in pedagoge na vseh treh stopnjah, na prvih dveh stopnjah pa se izvaja tudi posebna anketa o splošnih vidikih študijskega procesa. Po pilotni izvedbi 2014/2015 na dveh članicah (FDV, FGG) je bilo vseh šest anket v študijskem letu 2015/2016 izvedenih na celotni UL. \\ -   - Anketa o splošnih vidikih študijskega procesa se zaradi razmeroma majhnega števila ciljnih podskupin in večjega števila vprašanj izvaja le na vzorcu študentov. S tem se pomembno zmanjšuje obremenjevanje študentov z anketami in potencialno veča udeležba v tistih anketah, v katere so povabljeni. Osnovno izhodišče je, da vsak študent anketo o splošnih vidikih študijskega procesa načeloma izpolni le enkrat v času študija na določeni stopnji. Vzorčenje je zato izvedeno na naslednji način:  - \begin{itemize} - \item vsakemu študentu se s posebnim slučajnim algoritmom dodeli t.i. “HASH” koda, ki je enolična preslikava identifikacijske številke, - \item zadnja dva znaka »HASH« kode se pretvorita v dvomestno število, tako da vsi študenti enakomerno porazdeljeno zastopajo vrednosti od 0 do 99, - \item glede na dolžino let trajanja študija (brez dodatnega leta) se študente razdeli v 1, 2, 3, 4 oziroma 5 skupin in s tem so v vsakem letniku študija študenti enakomerno (in tudi slučajno) porazdeljeni v skupine, - \item vsako leto se anketira študente ene skupine (npr. študente štiriletnega programa, ki so v skupini s številko od 0-25, prvo leto, naslednje leto skupino s številkami od 26-50 itd.). - \end{itemize} - Študenti, ki študirajo sproti in iz letnika v letnik napredujejo redno, bodo na ta način anketo dobili natančno enkrat v času študija na določeni (dodiplomski ali magistrski) stopnji. V primeru, da študij traja  eno leto, anketo prejmejo vsi študenti. Ponavljalci, ki so formalno vpisani v en letnik dvakrat, lahko zaradi načina vzorčenja dobijo anketo dvakrat, enkrat npr. v prvem letniku, nato pa še v zadnjem. Lahko pa ponavljalec anketo dobi tudi samo enkrat (npr. če je bil v izvedbo vključen šele v 3. letniku štiriletnega programa). Možno je  tudi, da študent ravno tisto leto, ko bi bil vključen, pavzira in ga sistem preskoči. Navedeni primeri so razmeroma redki, zato lahko v grobem ocenimo, da je npr. v primeru bolonjskega sistema 3+2 v anketo vključena tretjina študentov prve stopnje in polovica študentov druge stopnje. Z drugimi besedami: vzorec je narejen tako, da je vsako leto na določeni stopnji študija (prva ali druga oziroma dodiplomska ali podiplomska) v anketo vključeno približno toliko študentov, kolikor  je vpisanih v eni generaciji oziroma v enem letniku. Opisani pristop k izbiri vzorca se lahko po potrebi tudi dodatno prilagodi, posebej v primeru majhnih fakultet, kjer so vzorci lahko premajhni. \\ - Študenti, ki so bili izbrani v anketo, so morali sodelovati ali pa so morali (z enim klikom) izrecno zavrniti sodelovanje. V nasprotnem primeru se niso mogli prijaviti na izpite oziroma se niso mogli vpisati v višji letnik. \\ - Anketa je dostopna na naslovu {\url{http://ul.1ka.si/splosna}} in vsebuje osem sklopov s skupno 25 vprašanji. Sklopi so naslednji: - \begin{itemize} - \item Obveščanje na fakulteti - \item Prostori, oprema in urnik - \item Knjižnica - \item Mednarodna mobilnost - \item Svetovalna pomoč - \item Drugi vidiki študijskega procesa - \item Študentski svet in obštudijske dejavnosti - \item Zadovoljstvo s študijem - \end{itemize} - - Poleg zgoraj navedenih splošnih sklopov pa lahko posamezna članica (fakulteta) doda še svoja specifična vprašanja oziroma dodatne sklope.  \\ - Vsak od sklopov vsebuje praviloma med 3 in 5 trditev, ki so jih študenti ocenjevali na lestvici od »sploh se ne strinjam« do »popolnoma se strinjam«. Navedene kategorije so bile naknadno oštevilčene od 1 do 5. Oceni 1 in 2 sta torej negativni, oceni 4 in 5 pozitivni, ocena 3 pa je nevtralna (niti-niti). Poleg tega je vsak sklop vseboval še odprto vprašanje, kjer so študenti lahko pojasnili svoje mnenje. Pri tem so vse navedbe študentov vključene v poročilo tako, kot so bile zapisane v anketi, torej brez cenzure in jezikovnih posegov.  \\ - Ker je pri nekaterih programih število anketirancev nizko, so ti podatki zgolj informativne narave in iz njih ne moremo  sklepati na populacijo. V tabelah so zato: - \begin{itemize} - \item ocene, kjer je število enot manjše od 10, označene z enojnim oklepajem, npr. (7); - \item ocene, kjer je število enot manjše od 5, označene z dvema oklepajema, npr. ((4)); - \item ocene, kjer je število enot manjše od 3, niso izpisane, ampak je navedena pika ("."), kar pomeni da gre za neničelno oceno, ki pa je preveč nenatančna. - \end{itemize} - Navedeno minimalno število enot (3), kjer je ocena še objavljena, je zaradi manjše občutljivosti podatkov oziroma manjšega problema zasebnosti odgovorov tokrat nekoliko nižje kot pri ocenjevanju predmetov in pedagogov, kjer so za objavo ocene potrebne vsaj 4 enote. Dodati velja, da gre v obeh primerih za določeno metodološko skrajnost, ki je upravičena predvsem zato, ker imamo opravka s celotno populacijo oziroma z vzorcem, ki predstavlja zelo velik del populacije. Pri vzorcih iz velike populacije je namreč običajna meja za objavo ocene 10 enot. Tudi sicer so pri tej anketi zaradi splošne narave vprašanj bistveno manjša tveganja in posledice razkritja identitete. \\ - Zaradi množice števil, ki so prikazane v poročilu, so za lažje pregledovanje - in tudi za doseganje enotnejšega pristopa k interpratacijam - izrazito visoke in izrazito nizke vrednosti povprečij dodatno obarvane. Pri tem se upošteva narava ocenjevanja tovrstnih splošnih dejavnikov, kjer je nivo ocen bistveno nižji (povprečja so v grobem namreč okoli 3.7) kot v primeru ocenjevanja specifičnih komponent posameznih predmetov in pedagogov v anketi pred in po izpitih, kjer so povprečja okoli 4.2. Na tej osnovi so tokrat obarvane naslednje mejne vrednosti: - \begin{itemize} - \item ocene \textcolor[HTML]{B6321C}{\textbf{1.0 - 2.9}} pomenijo izredno nizke vrednosti, saj je v takem primeru več študentov podalo negativno oceno kot pa pozitivno, kar pomeni, da pri obravnavanem dejavniku obstaja nesporen in zelo resen problem; - \item ocene \textcolor[HTML]{F58137}{\textbf{3.0 - 3.4}} pomenijo razmeroma nizko vrednost, saj to običajno pomeni, da je študentov, ki so dali pozitivno oceno (4 ali 5), manj kot polovica  (večina študentov torej ni zmogla pozitivne ocene, 4 ali 5), kar je vsekakor problematično; - \item ocene {\textbf{3.5 - 3.9}}  predstavljajo glavnino vseh ocen in so načeloma sicer pozitivne, vendar obstaja znaten prostor za izboljšave, saj je v takem primeru odličnih ocen (5) običajno še vedno manj kot pa ocen, ki niso bile pozitivne (1, 2 in 3); - \item ocena \textcolor[HTML]{36BF4B}{\textbf{4.0 - 4.4}} pomenijo, da je dosežen osnovni nivo odličnosti, saj se meja 4.0 pogosto uporablja kot mejnik odličnosti in praviloma pomeni, da je odličnih ocen (5) več kot pa ocen, ki niso bile pozitivne (1, 2 in 3); - \item ocena \textcolor[HTML]{006666}{\textbf{4.5 - 5.0}}  označuje višji nivo odličnosti, kjer ocene odlično (5) predstavljajo večino vseh ocen. - \end{itemize} - Podobno so v Poglavju 7 pri večjih (10\%  ali 20\% razlike od povprečja UL) odstopanjih od povprečne vrednosti  UL v odgovarjajočih indeksih obarvani odmiki  navzdol (pod \textcolor[HTML]{F58137}{\textbf{90}} in pod \textcolor[HTML]{B6321C}{\textbf{80}}) oziroma navzgor (nad \textcolor[HTML]{36BF4B}{\textbf{110}} in nad \textcolor[HTML]{006666}{\textbf{120}}). \\ - Anketa je sicer potekala od začetka drugega semestra (februar) do konca študijskega leta (september). \\ - K anketi je pristopilo 447 študentov prve in druge stopnje, od teh jih je 11 zavrnilo sodelovanje. Anketo je torej izpolnjevalo 436 študentov. \\ - Dodati velja, da je bila poleg 447 študentov, ki so tako ali drugače pristopili k anketi, z zgoraj opisanim algoritmom vzorčenja vključena tudi skupina študentov, ki se na anketo ni odzvala. V prvi vrsti gre za fiktivno vpisane študente oziroma za "de facto" pavzerje, ki se v celem študijskem letu niso prijavili na noben izpit, niti se konec študijskega leta niso vpisali v naslednji letnik. Posledično zato tudi niso prejeli nobenega opomnika za sodelovanje v anketi. \\ - Pri interpretacijah povprečij velja upoštevati še naslednje: - \begin{itemize} - \item običajni (tveganje 0.05) interval zaupanja je v primeru  dvoletnih, triletnih in štiriletnih programov v grobem širok okoli ±1.5/$\sqrt{n}$; v primeru povprečja 4.0 ter n=100 imamo torej 4.0±0.15, v primeru n=10 pa 4.0±0.45; - \item v primeru enoletnih programov je v anketo vključena celotna generacija, zato imamo populacijske ocene in statistično sklepanja (intervali zaupanja, preverjanje domnev ipd.) načeloma ni potrebno; kljub temu pa tudi v takem primeru ostaja določeno variiranje ocen zaradi merske napake; intervalu zaupanja pa so v takem primeru dodatno  - najmanj za faktor dva - ožji (glej Interpretacija študentskih ocen na {\url{http://ul.1ka.si/metodologija}}); v primeru 4.0, n=100 imamo zato kvečjemu širino 4.0±0.07; - \item če želimo primerjati dve različni in neodvisni skupini študentov (npr. drugi in tretji letnik ali oceni določenega predmeta v dveh letih), ki sta približno enake velikosti, potem so statistično značilne razlike za faktor 1.4 širše od zgoraj opisanih intervalov zaupanja;  v primeru intervala zaupanja 4.0±0.15, je statistično značilna razlika 0.2 (npr. 4.0 - 4,2); - \item če želimo pri danem vzorcu ali podskupini med seboj primerjati zgolj določene dejavnike (npr. odnos osebja v knjižnici in odnos v študentskem referatu), potem so (v primeru dvo, tro in štiriletnih programov) statistično značilne razlike pri istih enotah (odvisni vzorci) običajno ožje še najmanj za faktor dva; v primeru povprečja okoli 4.0 ter n=100 je torej statistično značilna že razlika med komponentama v obsegu 0.1 (npr. 4.0 - 4.1). - \end{itemize} - Seveda pa poleg vzorčne napake lahko nastopajo tudi drugi viri anketnih napak, npr. napaka zaradi neodgovora in merska napaka, vendar zaenkrat ni indicev, da bi zavzemale večji obseg.\\ - V ostalem velja smiselno upoštevati splošna metodološka pojasnila ter ostala specifična priporočila študentskih anket ({\url{http://ul.1ka.si/metodologija}}). -   -   -%\vfill -%*Besedilo je zajeto s spletne strani: \url{http://ul.1ka.si/c/5/Uvod/} -\newpage -\section{Sodelovanje študentov glede na program in letnik} -V nadaljevanju je podrobno predstavljen pregled sodelovanja študentov po študijskih programih, letnikih in stopnjah študija. V koloni "odgovoril" je z oklepaji označeno morebitno nižje število odgovorov (glej poglavje Metodologija), ki zahteva več previdnosti pri interpretacijah. -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:27 2017 -\begin{longtable}{p{8.7cm}c|cc|cc|cc|} -\caption{Sodelovanje študentov glede na študijski program} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{1}{r|}{\textbf{stopnja}} & \multicolumn{2}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & & $n_0$ & \% & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Sodelovanje študentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{1}{r|}{\textbf{stopnja}} & - \multicolumn{2}{r|}{\textbf{pristopili}} - & \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & & $n_0$ & \% & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Babištvo & Vis. & 33 & 100 & 32 & 97 & 1 & 3 \\ - Delovna terapija & Vis. & 51 & 100 & 50 & 98 & 1 & 2 \\ - Fizioterapija & Vis. & 65 & 100 & 62 & 95 & 3 & 5 \\ - Fizioterapija & Mag. & 11 & 100 & 11 & 100 & 0 & 0 \\ - Laboratorijska zobna protetika & Vis. & 30 & 100 & 28 & 93 & 2 & 7 \\ - Ortotika in protetika & Vis. & 23 & 100 & 22 & 96 & 1 & 4 \\ - Radiološka tehnologija & Mag. & 13 & 100 & 13 & 100 & 0 & 0 \\ - Radiološka tehnologija & Vis. & 41 & 100 & 40 & 98 & 1 & 2 \\ - Sanitarno inženirstvo & Mag. & 17 & 100 & 16 & 94 & 1 & 6 \\ - Sanitarno inženirstvo & Uni. & 31 & 100 & 31 & 100 & 0 & 0 \\ - Zdravstvena nega & Vis. & 118 & 100 & 118 & 100 & 0 & 0 \\ - Zdravstvena nega & Mag. & 14 & 100 & 13 & 93 & 1 & 7 \\ - \hline -Skupaj & & 447 & 100 & 436 & 98 & 11 & 2 \\ - \hline -\end{longtable} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:27 2017 -\begin{longtable}{p{8.7cm}c|c|cc|cc|} -\caption{Struktura študentov glede na sodelovanje po programih} \\ - \midrule[0.4pt]\hline \textbf{Program} & \multicolumn{1}{r|}{\textbf{stopnja}} & \multicolumn{1}{r|}{\textbf{pristopili}} & \multicolumn{2}{r|}{\textbf{odgovorili}} & \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline & & $n_0$ & n & \% & r & \% \\ - \hline - \endfirsthead - \caption{Struktura študentov glede na sodelovanje po programih - - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{Program} & - \multicolumn{1}{r|}{\textbf{stopnja}} & - \multicolumn{1}{r|}{\textbf{pristopili}} - & \multicolumn{2}{r|}{\textbf{odgovorili}} & - \multicolumn{2}{r|}{\textbf{zavrnili}}\\ \hline - & & $n_0$ & n & \% & r & \% \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot Babištvo & Vis. & 33 & 32 & 7 & 1 & 9 \\ - Delovna terapija & Vis. & 51 & 50 & 11 & 1 & 9 \\ - Fizioterapija & Vis. & 65 & 62 & 14 & 3 & 27 \\ - Fizioterapija & Mag. & 11 & 11 & 3 & 0 & 0 \\ - Laboratorijska zobna protetika & Vis. & 30 & 28 & 6 & 2 & 18 \\ - Ortotika in protetika & Vis. & 23 & 22 & 5 & 1 & 9 \\ - Radiološka tehnologija & Mag. & 13 & 13 & 3 & 0 & 0 \\ - Radiološka tehnologija & Vis. & 41 & 40 & 9 & 1 & 9 \\ - Sanitarno inženirstvo & Mag. & 17 & 16 & 4 & 1 & 9 \\ - Sanitarno inženirstvo & Uni. & 31 & 31 & 7 & 0 & 0 \\ - Zdravstvena nega & Vis. & 118 & 118 & 27 & 0 & 0 \\ - Zdravstvena nega & Mag. & 14 & 13 & 3 & 1 & 9 \\ - \hline -Skupaj & & 447 & 436 & 100 & 11 & 100 \\ - \hline -\end{longtable} - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:27 2017 -\begin{table}[ht] -\centering -\caption{Sodelovanje študentov glede na stopnjo programa} -\begin{tabular}{p{10.2cm}cc|cccc|} - \hline \hline \textbf{Stopnja} & \multicolumn{2}{c|}{\textbf{pristopili}} & \multicolumn{2}{c}{\textbf{odgovorili}}& \multicolumn{2}{c|}{\textbf{zavrnili}}\\ \hline - & $n_{0}$ & \% & n & \% & r & \% \\ - \hline -Univerzitetni & 31 & 100 & 31 & 100 & 0 & 0 \\ - Magistrski & 55 & 100 & 53 & 96 & 2 & 4 \\ - Visokošolski & 361 & 100 & 352 & 98 & 9 & 2 \\ - \hline -Skupaj & 447 & 100 & 436 & 98 & 11 & 2 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:27 2017 -\begin{table}[ht] -\centering -\caption{Struktura študentov glede na sodelovanje po stopnjah programov} -\begin{tabular}{p{10.2cm}c|cccc|} - \hline \hline \textbf{Stopnja} & \multicolumn{1}{c|}{\textbf{pristopili}} & \multicolumn{2}{c}{\textbf{odgovorili}}& \multicolumn{2}{c|}{\textbf{zavrnili}}\\ \hline - & $n_{0}$ & n & \% & r & \% \\ - \hline -Univerzitetni & 31 & 31 & 7 & 0 & 0 \\ - Magistrski & 55 & 53 & 12 & 2 & 18 \\ - Visokošolski & 361 & 352 & 81 & 9 & 82 \\ - \hline -Skupaj & 447 & 436 & 100 & 11 & 100 \\ - \hline -\end{tabular} -\end{table} - -\newpage - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:27 2017 -\begin{table}[ht] -\centering -\caption{Sodelovanje študentov glede na letnik} -\begin{tabular}{p{10.2cm}cc|cccc|} - \hline \hline \textbf{Letnik} & \multicolumn{2}{c|}{\textbf{pristopili}} & \multicolumn{2}{c}{\textbf{odgovorili}}& \multicolumn{2}{c|}{\textbf{zavrnili}}\\ \hline - & $n_{0}$ & \% & n & \% & r & \% \\ - \hline -Prvi letnik & 195 & 100 & 191 & 98 & 4 & 2 \\ - Drugi letnik & 134 & 100 & 131 & 98 & 3 & 2 \\ - Tretji letnik & 111 & 100 & 107 & 96 & 4 & 4 \\ - Četrti letnik & 7 & 100 & (7) & 100 & 0 & 0 \\ - \hline -Skupaj & 447 & 100 & 436 & 98 & 11 & 2 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:27 2017 -\begin{table}[ht] -\centering -\caption{Struktura študentov glede na sodelovanje po letniku} -\begin{tabular}{p{10.2cm}c|cccc|} - \hline \hline \textbf{Letnik} & \multicolumn{1}{c|}{\textbf{pristopili}} & \multicolumn{2}{c}{\textbf{odgovorili}}& \multicolumn{2}{c|}{\textbf{zavrnili}}\\ \hline - & $n_{0}$ & n & \% & r & \% \\ - \hline -Prvi letnik & 195 & 191 & 44 & 4 & 36 \\ - Drugi letnik & 134 & 131 & 30 & 3 & 27 \\ - Tretji letnik & 111 & 107 & 25 & 4 & 36 \\ - Četrti letnik & 7 & (7) & 2 & 0 & 0 \\ - \hline -Skupaj & 447 & 436 & 100 & 11 & 100 \\ - \hline -\end{tabular} -\end{table} - -\newpage - -\section{Analiza dejavnikov in vsebinskih sklopov} -V nadaljevanju so predstavljene podrobne analize po sklopih in dejavnikih. Opisne statistike vključujejo število (n), povprečje in standardni odklon (sd). -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:27 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\begin{tabular}{p{12cm}cc} - \hline \hline -\bfseries{Dejavniki} & \bfseries{n} & \bfseries{povprečje} \\ - \hline -Osebje knjižnice ima ustrezen odnos do uporabnika. & 313 & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - \rowcolor[gray]{0.95}Osebje knjižnice mi zna ustrezno svetovati pri iskanju literature. & 304 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} \\ - Prostori za predavanja, vaje in druge oblike pedagoškega dela so ustrezni. & 345 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - \rowcolor[gray]{0.95}Oprema za predavanja, vaje in druge oblike pedagoškega dela je ustrezna. & 343 & 3.9 \\ - Priznavanje v tujini opravljenih obveznosti (ECTS) je ustrezno. & 180 & 3.9 \\ - \rowcolor[gray]{0.95}Strokovna podpora mednarodni mobilnosti je ustrezna. & 208 & 3.9 \\ - Dostopnost literature je ustrezna. & 332 & 3.8 \\ - \rowcolor[gray]{0.95}Spletna stran vsebuje vse informacije, ki jih kot študent potrebujem. & 344 & 3.8 \\ - Spodbuja in podpira se izmenjavo. & 284 & 3.8 \\ - \rowcolor[gray]{0.95}Imam možnost opravljanja obveznih predmetov v tujini. & 194 & 3.7 \\ - Na voljo imamo dovolj informacij o možnih mednarodnih izmenjavah. & 293 & 3.7 \\ - \rowcolor[gray]{0.95}Obseg literature je ustrezen. & 329 & 3.7 \\ - Na voljo je dovolj zanimivih možnosti za mednarodno izmenjavo. & 280 & 3.7 \\ - \rowcolor[gray]{0.95}V splošnem sem s študijem zadovoljen. & 340 & 3.7 \\ - Dovolj je primernega prostora za individualno učenje (čitalnice, učilnice, seminarji itd.). & 337 & 3.6 \\ - \rowcolor[gray]{0.95}Z delovanjem študentskega sveta sem zadovoljen. & 243 & 3.6 \\ - Če potrebujem tutorja, vem, na koga se lahko obrnem. & 320 & 3.5 \\ - \rowcolor[gray]{0.95}Informacije o študijskem procesu sem dobil/a pravočasno. & 348 & 3.5 \\ - Osebje študentskega referata ima ustrezen odnos do študentov. & 335 & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - \rowcolor[gray]{0.95}V okviru študija mi je omogočena dobra izbira športnih aktivnosti. & 274 & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Vem, na koga se lahko obrnem za karierno svetovanje. & 295 & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - \rowcolor[gray]{0.95}Osebje študentskega referata je odzivno in učinkovito. & 337 & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Uradne ure študentskega referata so primerne. & 339 & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - \rowcolor[gray]{0.95}Med študijem sem spoznal ustrezno število zunanjih inštitucij (z ekskurzijami, vabljenjem zunanjih izvajalcev na seminarje itd.). & 301 & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Ponujeni so mi bili primerni izbirni predmeti z drugih fakultet/akademij UL. & 269 & \textbf{\textcolor[HTML]{F58137}{3.1}} \\ - \rowcolor[gray]{0.95}Z brezžičnim omrežjem sem zadovoljen/zadovoljna. & 326 & \textbf{\textcolor[HTML]{F58137}{3.0}} \\ - Razpored ur za predavanja, vaje in druge oblike dela mi ustreza. & 340 & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - \hline -\end{tabular} -\end{table} -\newpage\begin{figure}[ht] -\caption{Opisne statistike za dejavnike, urejene po povprečjih} -\includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/grafVsehDejavnikov.pdf} -\end{figure}Najboljše je ocenjen dejavnik "Osebje knjižnice ima ustrezen odnos do uporabnika." (\textbf{\textcolor[HTML]{36BF4B}{4.4}}) \\ \\Najslabše je ocenjen dejavnik "Razpored ur za predavanja, vaje in druge oblike dela mi ustreza." (\textbf{\textcolor[HTML]{B6321C}{2.8}}) - - -\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:28 2017 -\begin{table}[!ht] -\centering -\caption{Opisne statistike za dejavnike, urejene po sklopih glede na mediano povprečij dejavnikov znotraj posameznega sklopa} -\begin{tabular}{p{8.2cm}C{1.2cm}C{1cm}C{1cm}C{2.2cm}C{1cm}} - \hline \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{min} & \bfseries{max} & \bfseries{povprečje} & \bfseries{sd} \\ - \hline \multicolumn{6}{l}{\textbf{Knjižnica}}\\ Odnos do uporabnika & 313 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & 0.8 \\ - Svetovanje pri iskanju lit. & 304 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & 0.9 \\ - Dostopnost literature & 332 & 1 & 5 & 3.8 & 1.0 \\ - Obseg literature & 329 & 1 & 5 & 3.7 & 1.1 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Prostori, oprema in urnik}}\\ \rowcolor[gray]{0.95}Ustreznost prostorov & 345 & 1 & 5 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 0.9 \\ - \rowcolor[gray]{0.95}Ustreznost opreme & 343 & 1 & 5 & 3.9 & 1.0 \\ - \rowcolor[gray]{0.95}Prostor za ind. učenje & 337 & 1 & 5 & 3.6 & 1.3 \\ - \rowcolor[gray]{0.95}Razpored ur & 340 & 1 & 5 & \textbf{\textcolor[HTML]{B6321C}{2.8}} & 1.2 \\ - \multicolumn{6}{l}{\textbf{Mednarodna mobilnost}}\\ Ustreznost priznavanja ECTS & 180 & 1 & 5 & 3.9 & 1.1 \\ - Strok. podpora medn. mobil. & 208 & 1 & 5 & 3.9 & 1.2 \\ - Fakulteta spodbuja izmen. & 284 & 1 & 5 & 3.8 & 1.2 \\ - Opravljanje obv. predm. v tujini & 194 & 1 & 5 & 3.7 & 1.2 \\ - Info. o mednarodni izmenjavi & 293 & 1 & 5 & 3.7 & 1.2 \\ - Možnosti za medn. izmen. & 280 & 1 & 5 & 3.7 & 1.2 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Zadovoljstvo s študijem}}\\ \rowcolor[gray]{0.95}Splošno zadovoljstvo s študijem & 340 & 1 & 5 & 3.7 & 1.0 \\ - \multicolumn{6}{l}{\textbf{Obveščanje na fakulteti}}\\ Spletna stran & 344 & 1 & 5 & 3.8 & 1.0 \\ - Pravočasnost inf. & 348 & 1 & 5 & 3.5 & 1.1 \\ - Brezžično omrežje & 326 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.0}} & 1.4 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Študentski svet in obštudijske dejavnosti}}\\ \rowcolor[gray]{0.95}Zadovoljstvo s štud. svetom & 243 & 1 & 5 & 3.6 & 1.2 \\ - \rowcolor[gray]{0.95}Dobra izbira športnih aktivnosti & 274 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.3}} & 1.4 \\ - \multicolumn{6}{l}{\textbf{Svetovalna pomoč študentom}}\\ Tutorstvo & 320 & 1 & 5 & 3.5 & 1.4 \\ - Ustrezen odnos osebja & 335 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 1.3 \\ - Karierno svetovanje & 295 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.2}} & 1.3 \\ - Odzivnost in učinkovitost ref. & 337 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.2}} & 1.3 \\ - Uradne ure študentskega ref. & 339 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.2}} & 1.3 \\ - \rowcolor[gray]{0.95}\multicolumn{6}{l}{\textbf{Drugi dejavniki študijskega procesa}}\\ \rowcolor[gray]{0.95}Spoznavanje zunanjih inštitucij & 301 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.2}} & 1.3 \\ - \rowcolor[gray]{0.95}Izbirni predmeti drugje na UL & 269 & 1 & 5 & \textbf{\textcolor[HTML]{F58137}{3.1}} & 1.4 \\ - \hline -\end{tabular} -\end{table} - - -\newpage -%\section{dejavniki študijskega procesa 2014/2015 - frekvenčna porazdelitev} -%Naslednja tabela predstavlja frekvenčno porazdelitev dejavnikov študijskega procesa %celaLetnica. Respondenti so za vsak dejavnik izrazili strinjanje na petstopenjski lestvici. \\ - -\begin{longtable}{p{5.5cm}cccccccccc} -\caption{Dejavniki študijskega procesa 2016/2017 - frekvenčna porazdelitev enot} \\ \hline & \multicolumn{2}{c}{ \textbf{\small \makecell{Sploh\\se ne\\strinjam\\(1)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj ne\\strinjam kot\\strinjam\\(2)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Niti se ne\\strinjam\\niti se\\strinjam\\(3)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Se bolj\\strinjam,\\kot ne\\strinjam\\(4)}}}& \multicolumn{2}{c}{ \textbf{\small \makecell{Popolnoma\\se\\strinjam\\(5)}}}\\ -\hline -\textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% - -\endfirsthead - -\caption{Dejavniki študijskega procesa 2016/2017 - frekvenčna porazdelitev -enot (nadaljevanje)} \\ \hline - -& \multicolumn{2}{c}{ \textbf{\makecell{Sploh\\se ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj ne\\strinjam kot\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Niti se ne\\strinjam,\\niti se\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Se bolj\\strinjam,\\kot ne\\strinjam}}}& \multicolumn{2}{c}{ \textbf{\makecell{Popolnoma\\se\\strinjam}}} \\ \hline - -\textbf{Dejavniki po sklopih} & n & \% & n & \% & n & \% & n & \% & n & \% \\ \hline -\endhead% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:28 2017 - \hline \multicolumn{11}{l}{\textbf{Knjižnica}}\\ Odnos do uporabnika & 3 & 1 & 10 & 3 & 26 & 8 & 102 & 33 & 172 & 55 \\ - Svetovanje pri iskanju lit. & 5 & 2 & 8 & 3 & 32 & 11 & 104 & 34 & 155 & 51 \\ - Dostopnost literature & 9 & 3 & 35 & 11 & 54 & 16 & 139 & 42 & 95 & 29 \\ - Obseg literature & 16 & 5 & 30 & 9 & 67 & 20 & 142 & 43 & 74 & 22 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Prostori, oprema in urnik}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost prostorov & 3 & 1 & 26 & 8 & 48 & 14 & 140 & 41 & 128 & 37 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Ustreznost opreme & 2 & 1 & 35 & 10 & 51 & 15 & 150 & 44 & 105 & 31 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Prostor za ind. učenje & 28 & 8 & 45 & 13 & 55 & 16 & 102 & 30 & 107 & 32 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Razpored ur & 61 & 18 & 87 & 26 & 91 & 27 & 66 & 19 & 35 & 10 \\ - \multicolumn{11}{l}{\textbf{Mednarodna mobilnost}}\\ Ustreznost priznavanja ECTS & 11 & 6 & 6 & 3 & 40 & 22 & 58 & 32 & 65 & 36 \\ - Strok. podpora medn. mobil. & 15 & 7 & 9 & 4 & 40 & 19 & 68 & 33 & 76 & 37 \\ - Fakulteta spodbuja izmen. & 18 & 6 & 28 & 10 & 55 & 19 & 84 & 30 & 99 & 35 \\ - Opravljanje obv. predm. v tujini & 14 & 7 & 16 & 8 & 40 & 21 & 59 & 30 & 65 & 34 \\ - Info. o mednarodni izmenjavi & 18 & 6 & 36 & 12 & 50 & 17 & 97 & 33 & 92 & 31 \\ - Možnosti za medn. izmen. & 18 & 6 & 31 & 11 & 62 & 22 & 85 & 30 & 84 & 30 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Zadovoljstvo s študijem}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Splošno zadovoljstvo s študijem & 11 & 3 & 45 & 13 & 63 & 19 & 153 & 45 & 68 & 20 \\ - \multicolumn{11}{l}{\textbf{Obveščanje na fakulteti}}\\ Spletna stran & 9 & 3 & 37 & 11 & 58 & 17 & 150 & 44 & 90 & 26 \\ - Pravočasnost inf. & 21 & 6 & 42 & 12 & 83 & 24 & 135 & 39 & 67 & 19 \\ - Brezžično omrežje & 56 & 17 & 82 & 25 & 46 & 14 & 85 & 26 & 57 & 17 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Študentski svet in obštudijske dejavnosti}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Zadovoljstvo s štud. svetom & 18 & 7 & 21 & 9 & 62 & 26 & 74 & 30 & 68 & 28 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Dobra izbira športnih aktivnosti & 47 & 17 & 30 & 11 & 55 & 20 & 71 & 26 & 71 & 26 \\ - \multicolumn{11}{l}{\textbf{Svetovalna pomoč študentom}}\\ Tutorstvo & 38 & 12 & 42 & 13 & 51 & 16 & 88 & 28 & 101 & 32 \\ - Ustrezen odnos osebja & 33 & 10 & 55 & 16 & 70 & 21 & 94 & 28 & 83 & 25 \\ - Karierno svetovanje & 40 & 14 & 51 & 17 & 67 & 23 & 75 & 25 & 62 & 21 \\ - Odzivnost in učinkovitost ref. & 43 & 13 & 64 & 19 & 77 & 23 & 82 & 24 & 71 & 21 \\ - Uradne ure študentskega ref. & 43 & 13 & 61 & 18 & 79 & 23 & 97 & 29 & 59 & 17 \\ - \rowcolor[gray]{0.95}\multicolumn{11}{l}{\textbf{Drugi dejavniki študijskega procesa}}\\ \rowcolor[gray]{0.95}[7.1pt][7.1pt]Spoznavanje zunanjih inštitucij & 42 & 14 & 55 & 18 & 71 & 24 & 74 & 25 & 59 & 20 \\ - \rowcolor[gray]{0.95}[7.1pt][7.1pt]Izbirni predmeti drugje na UL & 49 & 18 & 43 & 16 & 58 & 22 & 58 & 22 & 61 & 23 \\ - \hline \end{longtable} -\newpage -%\section{Dejavniki študijskega procesa celaLetnica - analiza po sklopih} -\section{Podrobna analiza po sklopih} -Dejavniki znotraj sklopov so sistematično analizirani glede na študijsko stopnjo. Polna imena študijskih stopenj so zapisana v legendi grafov. Ocene, ki so v tabelah obdane z oklepaji, so manj natančne (glej tabeli 3 in 5 ter poglavje Metodologija). -\subsection{Obveščanje na fakulteti}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:28 2017 -\begin{table}[ht] -\centering -\caption{Obveščanje na fakulteti - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Spletna stran & 344 & 1.0 & 3.9 & 3.9 & 3.8 & 3.8 \\ - Pravočasnost inf. & 348 & 1.1 & 3.8 & 3.6 & \textbf{\textcolor[HTML]{F58137}{3.5}} & 3.5 \\ - Brezžično omrežje & 326 & 1.4 & \textbf{\textcolor[HTML]{B6321C}{2.3}} & \textbf{\textcolor[HTML]{B6321C}{3.0}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.0}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Obveščanje na fakulteti - po stopnji študija} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/izpis1.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:28 2017 -\begin{table}[!ht] -\centering -\caption{Obveščanje na fakulteti - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Spletna stran & 344 & 1.0 & 3.9 & 3.8 & 3.8 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.8 \\ - Pravočasnost inf. & 348 & 1.1 & 3.7 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.5}} & 3.7 & 3.5 \\ - Brezžično omrežje & 326 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{B6321C}{2.0}} & \textbf{\textcolor[HTML]{F58137}{3.0}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Obveščanje na fakulteti - po letniku} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/povprecjaSklopLetnik1.pdf} - \centering - \end{figure} -\newpage -%\subsubsection{Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi z obveščanjem (o %študijskem procesu, obštudijski dejavnosti itd.)?} - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:29 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi z obveščanjem (o študijskem procesu, obštudijski dejavnosti itd.)?} \\ - \hline - \\ - \hline -Brezžično omrežje v novem delu prvega nadstropja ne deluje. \\ - \rowcolor[gray]{0.90}....... \\ - V P18 in nekaterih predavalnicah ne dela. \\ - \rowcolor[gray]{0.90}Bilo je ogromno napak v urniku (prekrivanje, prepozno obvescanje), na kar smo morali opozarjati sami. \\ - Več informacij na spletno stran... O predmetih, predmetnemu gradivu, pricakovanjih, ocenjenjevanju itd. Dober primer je EF UL. Potem manjka se mogoce kaksno brezplacno izobrazevanje. Vsa, kar jih nudi fakulteta so placljiva... \\ - \rowcolor[gray]{0.90}Euduram - ne dela nikoli, ne vem zakaj ga sploh imamo, če ga nikoli ni. \\ - Brezžično omrežje ni dosegljivo v vsaki predavalnici \\ - \rowcolor[gray]{0.90}Referat informacije ne sporoci pravocasno ali jih oa sploh ne \\ - Wifi ne deluje v vseh predavalnicah, kar je moteče. \\ - \rowcolor[gray]{0.90}Razpisane vaje bi lahko bile vsaj 14dni prej ne pa de izvemo dan pred zacetkom. \\ - Študentje bi potrebovali malo večjo podporo od vodilnih na fakulteti. Nekateri profesorji ne znajo komunicirati s študenti in jim nuditi podpore pri napredovanju. \\ - \rowcolor[gray]{0.90}Veckrat je bila zmeda med studenti, ker nismo bili pravocasno obvesceni. Vsaj en tedn prej, bi morali studenti biti obvesceni glede informacij o izpitu oz. katerikolih drugih obveznostih. \\ - Splošna organiziranost je po mojih dosedanjih izkušnjah zelo slaba. Nedopustno je spreminjanje časa izpita dva dni pred le-tem, razpotegnjenost predavanj čez cel dan, to, da se predavanja in vaje izvajajo po segmentih tako, da so imamo študentje cel mesec po 2 uri predavanj na dan, potem pa je v naslednjem mesecu to seveda potrebno nadoknaditi in imamo obveznosti od osmih zjutraj do sedmih zvečer. \\ - \rowcolor[gray]{0.90}Pri predstavitvenemu zborniku, bi lahko bili obveščeni o sestavljenih predmetih (izpitih) že prej. \\ - Ostanite taki, kot ste :) \\ - \rowcolor[gray]{0.90}Katastrofalen urnik, ki onemogoča življenje poleg življenja na fakulteti. \\ - bolj sprotno vnašanje podatkov v indekse, urnike. \\ - \rowcolor[gray]{0.90}pravočasno obveščanje! \\ - Lahko bi bilo več obveščanja ( tudi preko emaila) o obštudijskih dejavnostih in izmenjavah, saj je v mojem letniku večina študentov izvedela, da se je bilo mogoče prijaviti na izmenjavo šele, ko so bile prijave že zdavnaj mimo. \\ - \rowcolor[gray]{0.90}urniki in učilnice so kar zamešani in včasih prepozno obveščanje študentov \\ - Referat se mora bolj organizirati, veckrat letos smo imeli probleme s probleme z nepravocasnim obvescanjem s strani referata \\ - \rowcolor[gray]{0.90}Če nam v zadnjem hipu odpade predavanje, bi nam lahko poslali sms sporočilo, če zanje že plačujemo. V prvem semestru je bil urnih zelo neurejen, vanj so bila vpisana predavanja ostalih smeri in ne naše, nekatera predavanja niso bila vpisana, nekatera so se med seboj prekrivala,. \\ - Hitrejše obveščanje. \\ - \rowcolor[gray]{0.90}Obveščanje o nenadnih spremembah urnika bi lahko boljše. Sporočali bi lahko preko sms sporočil. \\ - Katastrofa od organizacije, organizatorji ne razumejo, da bi človek rad malo naprej planiral glede prakse in vaj. Nezaslišano se mi zdi, da smo za vaje izvedeli 3 dni prej ! obveščeni bi morali biti vsaj en mesec prej. tudi to da se lahko odjaviš od izpita 4 dni prej, se mi zdi 'sfaleno' lahko bi spremenili na npr 2 dni prej. \\ - \rowcolor[gray]{0.90}Večina informacij je pravočasnih, vendar se pa zgodi, da se včasih številka predavalnice v kateri poteka izpit/predavanje spremeni tik pred izvebo. To je zelo neprimerno in moteče za študente. \\ - Wifi ne dela v prtlicju, niti tretjem nadstropju in se kje \\ - \rowcolor[gray]{0.90}Šolsko leto 2016/2017 je bilo veliko bolj organizirano predvsem glede vaj, saj so bile od začetka vpisane v urnik. Brezžično omrežje na fakulteti ne obstaja - eduroam ne deluje pravilno in sploh ni signala po celotni fakulteti. \\ - Da veliko informacij dobimo (pre)pozno. \\ - \rowcolor[gray]{0.90}Pravočasno obveščanje o spremembah na urniku je zelo pomankljivo. \\ - Letos sem zelo razočarana z dogovori med profesorji, referatom in nami študenti.... prvič kličemo kot razred v referat, da nam dve profesorci, nista še vpisali oceno iz kliničnih ali laboratorijskih vaj... in pol mormo kao mi obvestit profesorje?! V redu, ampak to je bolj naloga referata kot nas.... \\ - \rowcolor[gray]{0.90}Včasih bi lahko kakšno stvar, ki se tiče urnikov sporočili prej kot le nekaj ur. Profesor, ki je bil predstavnik našega letnika nas ni spodbujal in ni bil na voljo, kadar smo ga mi potrebovali. \\ - Zelo slaba organizacija z obveščanjem. Na razpolago imamo obveščanje preko sms in bi ga lahko koristili, za obveščanje o izteku rokov za prijavo na izpite in vaje. Posledično, ker na določene vaje se treba prijaviti in na določenih sploh ni možna prijava pride vedno do komplikacij. Implementirati bi bilo potrebno obveščanje o poteku roka za prijavo za izpite in vaje ali pa bi rok (3 dni prej) skrajšal. \\ - \rowcolor[gray]{0.90}velikokrat se urniki niso ujemali z dejanskim urnikom, nekateri profesorji niso bili obveščeni o spremembah in je tako prišlo do problemov z izostankom iz določenih predavanj oz. vaj, nekatere spremembe so bile velikokrat sporočene eno uro pred predavanjem ali pa sploh niso bile sporočene. \\ - \hline -\hline -\end{longtable} - - - -\clearpage - \subsection{Prostori, oprema in urnik}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:29 2017 -\begin{table}[ht] -\centering -\caption{Prostori, oprema in urnik - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Ustreznost opreme & 343 & 1.0 & 3.9 & 3.6 & 4.0 & 3.9 \\ - Prostor za ind. učenje & 337 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & 3.8 & 3.6 \\ - Razpored ur & 340 & 1.2 & \textbf{\textcolor[HTML]{B6321C}{2.6}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - Ustreznost prostorov & 345 & 0.9 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Prostori, oprema, urnik - po stopnji študija} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/izpis2.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:29 2017 -\begin{table}[ht] -\centering -\caption{Prostori, oprema in urnik - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Ustreznost opreme & 343 & 1.0 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.8 & 3.6 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.9 \\ - Prostor za ind. učenje & 337 & 1.3 & 3.8 & 3.7 & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} & 3.6 \\ - Razpored ur & 340 & 1.2 & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{B6321C}{2.1}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - Ustreznost prostorov & 345 & 0.9 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & 4.0 & 3.9 & 3.6 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Prostori, oprema, urnik - po letniku} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/povprecjaSklopLetnik2.pdf} - \centering - \end{figure} -\newpage -%\subsubsection{Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi s prostori, opremo oz. urnikom?} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:30 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Bi nam želeli sporočiti še kaj v zvezi s prostori, opremo oz. urnikom?} \\ - \hline - \\ - \hline -Urnik vsak dan do 20.30 ni nikakor študentu prijazen. \\ - \rowcolor[gray]{0.90}..... \\ - Super pripomočki pri vajah iz Funkcionalne anatomije \\ - \rowcolor[gray]{0.90}Bilo bi boljše, če bi študij potekal v dopoldanskem času. \\ - Za urnik vem, da imate tezko delo in razumem vas. Kar bi bilo smiselno urediti se je usklajenost izvajanja predmeta in vaj in potem opravljanja izpita. Predmet, ki se izvaja v oktobru in novembru, vaje aprila ali maja in potem izpit v juniju ni mogoce najbolj optimalna izbira. \\ - \rowcolor[gray]{0.90}Nujno - prostor za skupinsko delo!! klopi na hodniku bi lahko bilo več, prav tako miz, vtičnic za prenosnike, saj ne moreš med prostim časom narediti skoraj nič, da o eduramu ne govorimo... \\ - Urnik od 8ih zjutraj do cca 8ih zvecer ni normalen \\ - \rowcolor[gray]{0.90}Če imamo redavanja že oktobra, da se tudi vaje izvede takoj po predavanjih da imamo možnost prijave izpita! \\ - Predavalnice so hladne. \\ - \rowcolor[gray]{0.90}Študenti so preobremenjeni glede urnika, dopoldne vaje, popoldne (do zvečer) predavanja, časa za samostojno delo in učenje enostavno ni \\ - urnik je zagotovo preveč natrpan in zelo naporen za študente, ki tudi delajo, preveč obveznosti \\ - \rowcolor[gray]{0.90}Predavanja so večinoma ravno v času kosila. \\ - Urnik bi lahko bil bolj fiksen,spreminja se dnevno vse povrsti. Petki popoldne do vecera se mi ne zdijo smiselni,saj eni pridemo v LJ od dalec in velikokrat cakamo cel dan da docakamo predavanje ob 17-19ih \\ - \rowcolor[gray]{0.90}Urnik popravijo 2 dni pred vajami! V nekem momentu so razpisane obvezne vaje za 5. skupino, v drugem momentu pa na tiho spremenijo v 4. skupino. Uglavnem, nesposobni! \\ - Urnik bi želela, da se izvaja v dopoldanskem ali popoldanskem času da lahko prilagodimo službo. Služba se težko prilagaja študentom ob delu \\ - \rowcolor[gray]{0.90}Urnik ni študentom prijazen, praksa je v izpitnem obdobju ... kar je proti pravilom!! \\ - Pri matematiki v prvem semestru je bila stalno na voljo le učilnica s cca. 60 sedeži, vaje pa so bile razpisane za dve smeri: FT in radiološka tehnologija, kar je skupaj skoraj še enkrat več ljudi, kot je na voljo sedežev. Ker so vaje obvezne smo bili primorani sedeti na okenskih policah, na tleh pri strani, na tleh pred tablo in tako zdržati 2 šolski uri. Kako naj od takega načina podajanja snovi študent karkoli odnese? \\ - \rowcolor[gray]{0.90}Urnik ni stalen, niti javen. Poleg tega ne omogoča vpogleda nazaj, saj sproti briše ure. Predavalnica 424 nima ustreznega prezračevanja (hitro postane slab zrak, včasih smrdi). Programska oprema na računalnikih ni posodobljena. \\ - Urnik se je prevečkrat spremenil, obveščeni smo bili manj kot dan prej. V prihodnje bi bilo dobro, da bi urnik ostal enak vsaj za tekoči teden. \\ - \rowcolor[gray]{0.90}Predavanja in vaje razpršene čez cel dan. Vmes čakamo, ponavadi pa ni časa niti za kosilo. Večkrat smo začeli ob 8.00 in končali ob 20.00 \\ - boljši računalniki v računalniških učilnicah, več računalniških učilnic \\ - \rowcolor[gray]{0.90}Urnik imamo vsak teden drugačen zato študentje ne moremo opravljati rednih študentskih del ali trenirati kakšnega športa, hoditi na vadbe, krožke... Saj so ti vsak teden na isti dan in ob istih urah, predavanja pa se včasih prekrivajo s temi termini, včasih jih sploh ni na tisti dan, včasih so dopoldan, spet drugič popoldan... Skratka vsak teden drugače. Poleg tega nam urniki včasih ne dopuščajo da bi si privoščili normalno kosilo saj med predavanji praktično ni odmorov, predavanja pa trajajo skoraj cel dan. Tako smo vezani na čokoladice iz avtomata in na sendviče, kar se mi ne zdi prav, saj smo navsezadnje Zdravstvena fakulteta in (naj bi) spodbujali zdrav življenjski slog, ki ga pa kot študentje ne moremo živeti, vsaj ne kar se tiče prehrane. Če pa že imamo eno uro odmora pa to tudi ni dovolj da pridemo do neke restavracije, naročimo, pojemo in hitro pridemo nazaj na faks, tako da bi bilo dobro če bi imeli možnost zaužiti kakšen topel obrok na fakulteti - da bi imeli menzo, saj smo navsezadnje, ponavljam, Zdravstvena fakulteta. \\ - Bolj bi mi ustrezalo, da bi imeli pol semestra samo predavanja, pol semestra pa samo prakse. \\ - \rowcolor[gray]{0.90}Veckrat se je zgodilo, da smo bili v ucilnici, kjer ni bilo dovolj lrostora za vse, ocitno je tudi pri usklajevanju tega potrebna vecja stopnja organiziranosti. Prav tako je bil urnik na case nehuman, vcasih smo bili na fakulteti tudi od 8.00 do 20.00, v drugem semestru smo imeli vecinoma pouk popoldan, kar mi ni odgovarjalo \\ - Prostori so bili pogosto pre majhni, ni bilo dovolj miz za vse študente, predvsem pa na seminarskih vajah pogosto ni bilo dovolj računalnikov, zato je nekaj študentov med vajami "gledalo v zrak", nato pa smo morali naloge narediti doma. Tudi razpored ni bil takšen, kot smo ga pričakovali, saj se izvajalci zavedajo, da je večina študentov, vpisanih na naš program (magistrski študij FT) že zaposlena (drugega ni za pričakovati, saj delovna mesta za magistre sploh še ne obstajajo), kljub temu pa smo veliko predavanj in vaj začenjali že ob 14.40, v prvem semestru pa tudi ob 13h. Če je študij zasnovan kot popldanski z namenom, da ga lahko obiskujemo tudi zaposleni, naj se obveznosti začenjajo ob primerni uri ali pa naj izvajalci pokažejo nekaj več razumevanja do zamujanja \\ - \rowcolor[gray]{0.90}Slaba organizacija. \\ - Prostori za predavanja so bili včasih premajhni, zaradi česar je primanjkovalo stolov ali miz. V računalniških učilnicah pa ni bilo dovolj računalnikov za zahtevano samostojno delo. Bolj bi mi ustrezala predavanja v dopoldanskem času, vendar vem da zaradi velikega števila zaposlenih to ni mogoče. \\ - \rowcolor[gray]{0.90}Super bi bilo, če bi bile obvezne vaje v 3 letniku vse na koncu študiijskega leta, saj bi s tem študentje, ki živimo v študentskih domov lahko se čim prej izpisali iz domov, ter šli domov. Sama (in veliko mojih sošolcev), si želi vaje opravljat v domačem okolju, torej bomo v času vaj (november, december, januar) bivali doma, vendar bomo kljub temu morali plačevat študentski dom. \\ - Prostora za učenje med/po predavanjih včasih malo primanjkuje. \\ - \rowcolor[gray]{0.90}Razpored urnike bi bil lahko veliko boljsi. Se posebej me je zmotilo to, da smo imeli v 2.semestru predavanja in izpit iz patologije ki je del predmeta v 1.semestru, pa tudi vaje iz biofizike so bile sele v 2.semestru ceprav bi jih z lahkoto opravljali v 1.ko smo imeli veliko vec casa \\ - urnik prevec natrpan in se ni casa za uciti \\ - \rowcolor[gray]{0.90}urnik ni vredu ker so med predavanji več urne pavze in tisti, ki se vsak dan vozimo v ljubljano nam to ne ustreza ker nevemo kaj bi počeli med tri, šteri ali pa še več urno pavzo. \\ - urnik je sestavljen za osebo, ki živi in diha SAMO za to fakulteto, za človeka, ki ima hobije ali pa želi zaslužit kakšen cent za študij, je sila neugoden urnik. Na nobeni drugi fakulteti študentje ne 'visijo' na faksu do 9h zvečer, in imajo po možnosti naslednji dan ob 7h vaje, prakso. Izpiti bi morali biti dopoldne, ne pa ob 5h popoldne! \\ - \rowcolor[gray]{0.90}Urnik je zelo naporen in včasih onemogoča sprotno učenje, saj sm cel dan na faksu in potem moramo še doma narediti nujne stvari, zato hitimo in niso narejene kvalitetno. Nato postanemo psihično obremenjeni in nismo zadovoljni ter prihaja do mnogih težav - obup. \\ - Urnik je totalno zanic, veliko nas je vozacev, v ponedeljek nam dajo ob 7 zjutraj, v petek pa sele ob 3 popoldne, vcasih sploh ni casa za kosilo, vcasih imas vmes 2 ure da neves ali bi sel domov ali ne \\ - \rowcolor[gray]{0.90}Lahko bi uredili prostore za učenje izven knjižnice, saj vedno ni dostopa do knjižnice. Računalniška oprema je obupna. Na večih lokacijah računanlniki sploh ne delujejo. \\ - Pri nekaterih je prevec ur za to kar je treba naredit. Obseg urnikov bki se lahko zelo zmanjsal ce bi bolje izkoristili cas dela. \\ - \rowcolor[gray]{0.90}Razpisane vaje v času izpitnega obdobja??!! \\ - Smer za babištvo nima zadostne in kvalitetne opreme, vsaj kar se tiče kabinetnih vaj. Veliko denarja plačamo pri vpisnini za material, v kabinetu pa imamo lutko ženske, ki ji odpadajo noge, ni primerna za učenje/simulacijo poroda. Potrebovali bi simulatorje poroda, vaginalnih pregledov, ukrepanja ob distociji, medenični... Urnik je v 1. in 2. letniku zelo natrpan, v 3. letniku pa se sprosti. Ne zdi se mi prav, da za vse izzvemo zadnji moment, predvsem za razporede praks/vaj. \\ - \rowcolor[gray]{0.90}Urnik magistrskega študija se začne prezgodaj, glede na to, da večina tistih, ki opravljajo ta program, dela. \\ - Urnik je v drugi polovici leta prevec poln. V prvi polovici leta pa so samo predavanja. Ce bi bila kaksna moznost, da se vaje izvaja tudi v prvi polovici, bi bil studentom studij veliko lazji in manj naporen. \\ - \rowcolor[gray]{0.90}Urnik je težko usklajevati z drugimi obveznostmi, saj ni stalen in se spreminja tedensko, včasih tudi dnevno. \\ - Glede na to, da sem bila vpisana na redni podiplomski študij sem pričakovala, da se bo več ali manj aktivnosti izvajalo v dopoldanskem času. Izvajalo se je večinoma v popoldanskem. To smo uskladili z drugimi dolžnostmi, ki jih je imel vsak posameznik. Vendar pa, ko so bile razpisane vaje, so bile le te razpisane na proste dneve, namesto, da bi jih združili na dan, ko smo imeli predavanja. Marsikateri dan smo se vozači iz oddaljenih krajev vozili na vaje v Ljubljano pa če so le te trajale zgolj eno uro ali pa, da smo morali le oddčitati rezultate. \\ - \rowcolor[gray]{0.90}Veliko lažje bi bilo, če se urnik ne bi spreminjal vsak teden, ampak bi bil fiksen vsaj za en semester. \\ - Lahko bi bilo več prilagajanja izrednemu študiju, kar se tiče urnika. \\ - \rowcolor[gray]{0.90}skoraj nobeden računalnik na fakulteti ne deluje, zelo stari, neposodobljeni, premalo stolov ob računalnikih \\ - Urniki so prenaatrpani, od jutra do večera smo na faksu. Velikokrat ni niti časa za kosilo, saj so kakšne vaje na drugi lokaciji in še na naslednje predavanje ne prideš pravočasno. \\ - \rowcolor[gray]{0.90}Urniki bi bili lahko bolj študentu prijazno narejeni. \\ - Urnik dopoldanskih vaj na kliinikah in inštitutih se ne ujema s predavanji.... smo imeli primer ko smo imeli vmes 20min pavze, a res in študentje bi se mogoče v času kosila radi najedli ali pa mpgoče celo prišli do faxa in zelo moteča so predavanja ki trajajo skoraj do osme ure, vmes pa npr 5 ur nimaš kaj delat.... nismo vsi iz ljubljane in nimamo vsi šttudentskega doma 10 min stran od fakultete.... \\ - \rowcolor[gray]{0.90}Med izpitnim obdobjem poteka praktično vse (kolokviji, predavanja, vaje, praksa) in se je zaradi pomanjkanja časa zelo težko pripraviti na izpite, sploh tistim ki ne stanujemo v Ljubljani. \\ - Urnik bi lahko spreminjali le en teden prej ne pa en dan prej. \\ - \rowcolor[gray]{0.90}Večkrat se je zgodilo da nas je bilo na vajah več, kot je računalnikov v učilnici. Za vaje ki potekajo na računalnikih je to nesprejemljivo. \\ - Želela bi stalen urnik, da bi lažje načrtovala svoj prosti čas in obštudijske dejavnosti. \\ - \rowcolor[gray]{0.90}vaje in izpiti iz prvega semestra se vlečejo še v drugi semester, ko bi morale biti vse obveznosti iz prvega semestra že zaključene \\ - Urnik je bil prejšnje leto boljši kot letos. Je bilo malo zmede na začetku, vendar smo se potem vsi navadili. \\ - \rowcolor[gray]{0.90}Urnik je včasih bil povsem nesmiseln. Najprej predavanja na fakulteti in potem brez pavze ali z 5 minutno pavzo na Soči. Nemogoče za izvesti. Na srečo zaradi tega nismo imeli problemov s profesorji, saj se je dalo vse normalno dogovoriti. Pogram OP je z vajami zanemarjen, predvsem v 1. in 3. letniku. Zdi se mi, da sem dobila premalo praktičnega znanja o ortotiki. \\ - Urnik se preveč spreminja iz dneva v dan, velikokrat tudi iz ure v uro. Velikokrat nismo pravočasno obveščeni ko odpadejo predavanja. \\ - \rowcolor[gray]{0.90}Naj se urnik drži čimbolj skupaj. \\ - \hline -\hline -\end{longtable} - - -\clearpage - \subsection{Knjižnica}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:30 2017 -\begin{table}[ht] -\centering -\caption{Knjižnica - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Dostopnost literature & 332 & 1.0 & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & 3.8 & 3.8 \\ - Obseg literature & 329 & 1.1 & 3.8 & 3.8 & 3.7 & 3.7 \\ - Odnos do uporabnika & 313 & 0.8 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{006666}{4.6}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - Svetovanje pri iskanju lit. & 304 & 0.9 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Knjižnica - po stopnji študija} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/izpis3.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:30 2017 -\begin{table}[ht] -\centering -\caption{Knjižnica - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Dostopnost literature & 332 & 1.0 & 3.9 & 3.7 & 3.9 & 3.8 & 3.8 \\ - Obseg literature & 329 & 1.1 & 3.8 & 3.6 & 3.7 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & 3.7 \\ - Odnos do uporabnika & 313 & 0.8 & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - Svetovanje pri iskanju lit. & 304 & 0.9 & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Knjižnica - po letniku} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/povprecjaSklopLetnik3.pdf} - \centering - \end{figure} - -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede dela knjižnic.} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:30 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Vaši predlogi glede dela knjižnic.} \\ - \hline - \\ - \hline -................. \\ - \rowcolor[gray]{0.90}Mogoce odprtost knjiznice tudi ob sobotah? Izredni smo tudi tiste dni v knjiznici. \\ - Redko najdeš na fakulteti tim, ki je tako prijazen in ustrežljiv kot knjižničarke. Res VSA POHVALA. Všeč mi je, da je urejen sistem za rezervacijo preko sistema COBISS, kar pride zelo prav, ko čakaš na kakšno knjigo. \\ - \rowcolor[gray]{0.90}1 izvod vsakega gradiva za izposojo samo v čitalnico. \\ - Za izpit obvezna literatura je v knjiznici na voljo v parih izvodih.v celi LJ je bilo na voljo 8 knjig nas pa je v letniku priblizno 80 \\ - \rowcolor[gray]{0.90}Daljši odpiralni čas \\ - Vzpostavitev eduroam / druge brezžične povezave do interneta. \\ - \rowcolor[gray]{0.90}Več knjig, posebej del za čitalnico. \\ - Veliko obveznih knjig, ki smo jih potrebovali za študij, ni bilo dostopnih v knjižnici, ali pa premalo izvodov. (1 izvod, a najmanj 60 študentov) \\ - \rowcolor[gray]{0.90}same pohvale \\ - Vse je kul \\ - \rowcolor[gray]{0.90}Moti me, da imajo nekateri profesorji rezervirane knjige čez celo študijsko leto in niso dostopne študentom. \\ - Nimam \\ - \rowcolor[gray]{0.90}Osebje knjižnice je super. Vedno bodo pomagali pri iskanju ustrezne literature če boš vprašal za pomoč. So zelo uvidevni in so mi enkrat celo poslali sporočilo o dodatnem gradivu na mail. \\ - Za moj program dejansko koristne literature ni. Večino koristne literature je v angleščini, naša knjižnica pa premore samo slovesnko, katera pa iskreno, ni zelo koristna, saj so v tej samo osnove. \\ - \hline -\hline -\end{longtable} - - - -\clearpage - \subsection{Mednarodna mobilnost}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:30 2017 -\begin{table}[ht] -\centering -\caption{Mednarodna mobilnost - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Ustreznost priznavanja ECTS & 180 & 1.1 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.9 & 3.9 \\ - Strok. podpora medn. mobil. & 208 & 1.2 & 3.6 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.8 & 3.9 \\ - Fakulteta spodbuja izmen. & 284 & 1.2 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.9 & 3.8 & 3.8 \\ - Info. o mednarodni izmenjavi & 293 & 1.2 & \textbf{\textcolor[HTML]{F58137}{3.3}} & 3.9 & 3.7 & 3.7 \\ - Možnosti za medn. izmen. & 280 & 1.2 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.6 & 3.7 & 3.7 \\ - Opravljanje obv. predm. v tujini & 194 & 1.2 & 3.5 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.7 & 3.7 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Mednarodna mobilnost - po stopnji študija} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/izpis4.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:31 2017 -\begin{table}[ht] -\centering -\caption{Mednarodna mobilnost - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Ustreznost priznavanja ECTS & 180 & 1.1 & 3.9 & 3.9 & 3.9 & 3.5 & 3.9 \\ - Strok. podpora medn. mobil. & 208 & 1.2 & 3.9 & 4.0 & 3.8 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.9 \\ - Fakulteta spodbuja izmen. & 284 & 1.2 & 3.9 & 3.7 & 3.6 & \textbf{\textcolor[HTML]{F58137}{3.3}} & 3.8 \\ - Info. o mednarodni izmenjavi & 293 & 1.2 & 3.7 & 3.7 & 3.8 & \textbf{\textcolor[HTML]{F58137}{3.0}} & 3.7 \\ - Možnosti za medn. izmen. & 280 & 1.2 & 3.7 & 3.7 & 3.7 & \textbf{\textcolor[HTML]{B6321C}{2.7}} & 3.7 \\ - Opravljanje obv. predm. v tujini & 194 & 1.2 & 3.8 & 3.8 & 3.6 & \textbf{\textcolor[HTML]{F58137}{3.0}} & 3.7 \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Mednarodna mobilnost - po letniku} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/povprecjaSklopLetnik4.pdf} - \centering - \end{figure} -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede mobilnosti.} - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:31 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Vaši predlogi glede mobilnosti.} \\ - \hline - \\ - \hline -................... \\ - \rowcolor[gray]{0.90}Super bi bilo, če bi za podiplomski študij podpisali več pogodb, saj je na tej stopnji super, da vidiš raziskovanje v tujini. Drugače pa pohvale vodji za mednarodno izmenvajo - zelo prijazna in profesionalna. \\ - Zdravstvena fakulteta je edina članica Univerze v Ljubljani ki ni razpisala mesta za tujce na drugi stopnji. Toliko o tem kako fakulteta podpira mednarodno izobraževanje \\ - \rowcolor[gray]{0.90}Premalo informacij glede izmenjav, opravljanja prakse na tujih univerzah, tako študentje dobimo vtis, da odhod na izmenjavo s strani fakultete ni zaželen, še več, na prvem razrednem sestanku smo slišali, da je čas za izmenjavo mogoče edino v dodatnem letu, saj obveznosti Zf ne bo priznala. Je sploh smisel, da se pretvarjate z "možnostmi mednarodne mobilnosti" če ta ni zaželjena? \\ - Nihče nam ni nič omenjal glede izmenjav, tako da nekateri sploh ne vedo nič o njih, kako to poteka, kaj to sploh je. Vse smo se morali sami pozanimati, tudi obvestila, da se je možno prijaviti na izmenjavo, ni opazil skoraj nihče. \\ - \rowcolor[gray]{0.90}Sola podpira izmenjavo in je ne.. Le v malem stevilu jo \\ - Več možnosti za opravljanje Erasmus+ prakse. \\ - \rowcolor[gray]{0.90}Več držav za izmenjavo \\ - Pohvale glede izmenjav in potem tudi priznavanja obveznosti! \\ - \rowcolor[gray]{0.90}Da prifesorji so bolj jasni z možnostmi o izmenjavi in točkah, ki jih je možno pridobit drugje, ne da ne vejo točno kako in kaj \\ - Da se ti prizna več opravljenih vaj in predmetov v tujini, da se študente začne spodbujati po pridobivanju znanja v tujini. Želim si, da bi odšla na izmenjavo vendar se mi študij zaradi nepriznavanja vaj in predmetov podaljša za eno leto. \\ - \rowcolor[gray]{0.90}Nimam \\ - V prvem letniku sanitarnega inženirstva nismo pridobili informacij o mednarodnih izmenjavah. \\ - \hline -\hline -\end{longtable} - - - -\clearpage -\subsection{Svetovalna pomoč študentom}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:31 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Tutorstvo & 320 & 1.4 & \textbf{\textcolor[HTML]{B6321C}{2.7}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & 3.6 & 3.5 \\ - Ustrezen odnos osebja & 335 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.3}} & 3.7 & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Karierno svetovanje & 295 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Uradne ure študentskega ref. & 339 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Odzivnost in učinkovitost ref. & 337 & 1.3 & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč - po stopnji študija} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/izpis5.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:32 2017 -\begin{table}[ht] -\centering -\caption{Svetovalna pomoč študentom - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Tutorstvo & 320 & 1.4 & 3.8 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{B6321C}{2.4}} & 3.5 \\ - Ustrezen odnos osebja & 335 & 1.3 & 3.5 & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Karierno svetovanje & 295 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{2.5}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Uradne ure študentskega ref. & 339 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Odzivnost in učinkovitost ref. & 337 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{B6321C}{2.4}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Svetovalna pomoč - po letniku} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/povprecjaSklopLetnik5.pdf} - \centering - \end{figure} -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede delovanja referata in svetovanja študentom.} - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:32 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Vaši predlogi glede delovanja referata in svetovanja študentom.} \\ - \hline - \\ - \hline -...................... \\ - \rowcolor[gray]{0.90}Referat bi moral imeti več uradnih ur. \\ - Se opravicujem za slabe ocene pri delovanju referata, ampak... Referat ni niti en dan na voljo v dopoldanskem casu. Na e-maile dostikrat ne dobimo odogovora. \\ - \rowcolor[gray]{0.90}REFERAT: urniki in delo referata - KATASTROFA!! Nedosegljivi oz. se ves čas zgovarjajo na neko višjo silo. Povejte študentom v čem je problem, da ni urnika, da se ure in učilnice spreminjajo vsakih 5 min, da se nam vaje kar dodajajo iz dneva v dan, vaje dopoldne, medtem ko je celoten študij v popoldanskem času. Odnos do študentov je nemogoč - nismo več otroci, da se nad nami povzdiguje glas in arogantno odslovi na prijazno prošnjo. Plačano SMS obveščanje - naj bi sporočili spremembe, če so te take, da ne moremo vsako minuto gledati na urnik, pa nisem dobila niti enega smsa v zvezi s tem, s strani prof, pa slaba volja ko zamujaš. \\ - Referentka za delovno terapijo se študentu ne posveti ustrezno. \\ - \rowcolor[gray]{0.90}urnik referata za izredne študente je popolnoma neprimeren npr. v petek izredni študentje pogosto začnejo predavanja ob 15.30, referat ima uradne ure do 15 h \\ - Referentka za OP sprememb na urniku ne sporoča pravočasno, zgodilo se je, da je spremenila urnik, brez da bi obvestila študente in predavatelje (razpisane vaje za katere izvajalka vaj sploh ni vedela) \\ - \rowcolor[gray]{0.90}Ure bolj primerne študentom \\ - Tutorji bi morali bolj vzpodbujati pozitivne navade in prisotnost na predavanjih. \\ - \rowcolor[gray]{0.90}Ure referata od 12-14. Vaje pa skoraj vedno do 13.45 da nemores v referat nikakor.na mail pa itak ne odpisejo \\ - Referentka letos mnogo boljša, bi pa bile možne še kakšne izboljšave. \\ - \rowcolor[gray]{0.90}strpnost in prijaznost v referatu in večja pripravljenost podaje vseh informacij ki jih študent potebuje. \\ - podaljšanje uradnih ur tudi v popoldanski čas, saj veliko študentov dela in ne uspe priti pravočasno \\ - \rowcolor[gray]{0.90}Referentkin odnos ni bil primeren, študentje so se je bali in če res ni bilo nujno, raje niso hodili do nje. \\ - nekateri so neprijazni zaradi preveč dela \\ - \rowcolor[gray]{0.90}daljši odpiralni čas za izredne študente \\ - slaba organizacija \\ - \rowcolor[gray]{0.90}Rt referentka je katastrofa!! Vcasih kar izgubi ocene in jih ne vnese, vcasih vnese napacne, informacije nam da prepozno, ko kaj vprasamo nikoli ne ve nic in nas posilja naprej in potem drugi spet ne vejo nic, nikoli je ni ko jo potrebujes itd \\ - Razen referantka za študij Radiološke tehnologije, imajo zaposleni v referatu precej neprimeren in nestrpen odnos do študentov. Pravijo da če vprašaš-ne veš in tega se marsikatera zaposlena v referatu Zdravstvene fakultete ne zaveda! Zelo slabe izkušnje s smerjo Fizioterapija, skrajno neprimeren odnos! \\ - \rowcolor[gray]{0.90}Malo bolj fleksibilen urnik in kanček več prijaznosti. \\ - Prijazna beseda veliko šteje. Žal imam same negativne pripombe, večinoma je v odzivnosti osebe, ki dela v referatu. Odkar smo zamenjali osebo je veliko boljše. \\ - \rowcolor[gray]{0.90}Bolj prijazno osebje ne bi škodilo. \\ - V referatu ne odgovarjajo na maile, kadar imamo klinične vaje težko ujamemo uradne ure referata. \\ - \rowcolor[gray]{0.90}Potrebna zamenjava kadra (glede na prikazano učinkovitost). \\ - Osebje v referatu bi včasih lahko bili malo bolj prijazni in vzpostavili primeren odnos do študentov. \\ - \rowcolor[gray]{0.90}Gospa colarič je bila težje pogovorljiva \\ - Nataša Malić je res carica! \\ - \rowcolor[gray]{0.90}Niman \\ - Želela bi si da bi lahko stvari v referatu urejala skozi celoten delovni čas, ne samo tistega predpisanega za mojo smer, saj nisem vedno takrat na faksu. \\ - \rowcolor[gray]{0.90}Referat velikokrat ne stori ničesar za kar prosimo študenti. \\ - Referat občasno rahlo razdražen. \\ - \hline -\hline -\end{longtable} - - - -\clearpage - \subsection{Drugi dejavniki študijskega procesa}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:32 2017 -\begin{table}[ht] -\centering -\caption{Drugi dejavniki študijskega procesa - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Spoznavanje zunanjih inštitucij & 301 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Izbirni predmeti drugje na UL & 269 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{B6321C}{2.4}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.1}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Drugi dejavniki študijskega procesa - po stopnji študija} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/izpis6.pdf} - \centering - \end{figure}\clearpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:32 2017 -\begin{table}[ht] -\centering -\caption{Drugi dejavniki študijskega procesa - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Spoznavanje zunanjih inštitucij & 301 & 1.3 & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Izbirni predmeti drugje na UL & 269 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.1}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Drugi dejavniki študijskega procesa - po letniku} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/povprecjaSklopLetnik6.pdf} - \centering - \end{figure} - -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi glede drugih dejavnikov študija kot npr. izbirnih predmetov in povezovanja fakultete/akademije z drugimi inštitucijami.} - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Vaši predlogi glede drugih dejavnikov študija kot npr. izbirnih predmetov in povezovanja fakultete/akademije z drugimi inštitucijami.} \\ - \hline - \\ - \hline -................................. \\ - \rowcolor[gray]{0.90}Naj ne bodo razpisani izbirni predmeti, ki se ne izvajajo tekom leta in moramo zato študentje (ne po svoji krivdi) obiskovati v naslednjem študijskem letu izbirni predmet, ki je obsežnejši. \\ - VEČ TEGA \\ - \rowcolor[gray]{0.90}Več izbirnosti na matični fakulteti, več vabljenih tujih izvajalcev. \\ - Povezava z Fakulteto za šport pri izbirnih predmetih. \\ - \rowcolor[gray]{0.90}Naj se naredijo neka navodila, ki bodo študentom dala jasna novodila kako priti do izbirnih predmetov na drugih fakultetah. Ko sem izbiral svoje izbirne predmete sem želel opravljati predmeti na drugi fakulteti, od predstojnice katedre pa sem dobil popolnoma napačne informacije in posledično nisem izbral predmetov, ki bi mi prav prišli na 2 stopnji ! \\ - Nisem zaznala da bi se naša fakulteta sploh povezala še s katero drugo, tudi ekskurzij nismo imeli. \\ - \rowcolor[gray]{0.90}Lahko bi veliko bolj spodbujali opravljanje izbirnih predmetov na drugih fakultetah, saj bi študentje lahko od njih zelo veliko odnesli, tudi naši izbirni predmeti pogosto niso povezani z našo študijsko smerjo, hkrati je opcij zelo malo (navadno izbiramo 2 predmeta od 3 možnih?!) \\ - letos nismo mogli izberati med izbernimi predmeti, ker jih je bilo tako malo, da si se lahko vpisal samo na tiste, ki jih še nisi opravljal v prejšnjih letih. bolje bi bilo, če bi bilo na izbiro več predmetov, \\ - \rowcolor[gray]{0.90}izbirni predmet NMP? \\ - Različni izbirni predmeti, da jih imaš več na izbiro (ne, da moraš izbrati 3 med 3 predmet; to ni izbirnost). \\ - \rowcolor[gray]{0.90}Izbirni predmeti z druguh fakultet nam sploh niso bili ponujeni. \\ - Kar se tiče izbrinih predmetov smo imeli na voljo 3 predmete in izmed teh smo morali izbrati 3, ker smo le tako dobili 9KT. Po tem takem bi lahko rekla, da sploh niso bili izbirni predmeti \\ - \rowcolor[gray]{0.90}Lahko bi imeli več izbirnih predmetov kateri so primerni za določene študijske smeri \\ - Letos v tretjem letniku so nam podali izbirne predmete tako, da v vsakem primeru moraš izbrati IKU1 ali 2 ali 3, čeprav že imaš dovolj pridobljenih uri kliničnega usposabljanja, saj so ti vsi v drugem letniku govorili, da je najboljše, da izbereš IKU2, da zapolniš ure, vendar temu ni tako. Saj si celo poletje skoraj zapravil za opravljanje IKU-ja in zamudil zanimive izbirne predmete, ki jih v tretjem letniku ni mogoče izbrati ... \\ - \rowcolor[gray]{0.90}Želel bi si še več možnosti sodelovanja z zunanjimi institucijami, seminarji, ekskurzijami) Bolj na podlagi sodelovanja ne toliko na podlagi izkoriščanja študentov in plačevanja nas samih za razne seminarje. \\ - Izbirni predmeti na drugih faklutetah v veliki večini sploh niso možni, zraven tega pa si moraš za to vse iskati sam. \\ - \rowcolor[gray]{0.90}Izbirni predmeti sploh niso izbirni ampak si jih moramo v celoti skoraj vse izbrati! \\ - \hline -\hline -\end{longtable} - - - -\newpage - \subsection{Študentski svet in obštudijske dejavnosti}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{table}[ht] -\centering -\caption{Študentski svet in obštudijske dejavnosti - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Zadovoljstvo s štud. svetom & 243 & 1.2 & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & 3.7 & 3.6 \\ - Dobra izbira športnih aktivnosti & 274 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Študentski svet in obštudijske dejavnosti - po stopnji študija} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/izpis7.pdf} - \centering - \end{figure}\newpage% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{table}[ht] -\centering -\caption{Študentski svet in obštudijske dejavnosti - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Zadovoljstvo s štud. svetom & 243 & 1.2 & 3.8 & 3.7 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & 3.6 \\ - Dobra izbira športnih aktivnosti & 274 & 1.4 & \textbf{\textcolor[HTML]{F58137}{3.5}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{B6321C}{2.1}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - \hline -\end{tabular} -\end{table} -\begin{figure}[!ht] - \flushleft \caption{Študentski svet in obštudijske dejavnosti - po letniku} - \includegraphics[width=\maxwidth]{../rezultati/3000011/grafi/povprecjaSklopLetnik7.pdf} - \centering - \end{figure} -\newpage -%\subsubsection{Odprti odgovori: Vaši predlogi za izboljšanje delovanja in aktivnosti študentskega sveta ter izboljšanje obštudijskih dejavnosti.} - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Vaši predlogi za izboljšanje delovanja in aktivnosti študentskega sveta ter izboljšanje obštudijskih dejavnosti.} \\ - \hline - \\ - \hline -...................... \\ - \rowcolor[gray]{0.90}Lahko bi bila na voljo še katera druga športna dejavnost kot pa samo CUŠ, ki je takoj zaseden. (naprimer MF ima neomejen dostop do športnih vadb na DIF) \\ - KOŠARKARSKA EKIPA ZA ŽENSKE!!!! \\ - \rowcolor[gray]{0.90}brezplačna odbojka, fitnes \\ - Nobenih sportnih altivnosti!!!! Zdravstvena fakulteta pa nima obvezne sportne vzgoje ali pa vsaj nekaj ur obveznih sportnih vsebin na leto, haloo?! Kaksna zdravstvena fakulteta je to? \\ - \rowcolor[gray]{0.90}Nimam \\ - Športne aktivnosti v okviru študija je težko vpeti v svoj urnik, zaradi prekrivanja predavanj in ur v katerih potekajo športne aktivnosti. \\ - \rowcolor[gray]{0.90}Obveščanje glede športnih aktivnosti se drži v nekih krogih študentov, kar mi sploh ne ustreza. Vsi bi morali imeti enako možnost in dostopnost do športnih aktivnosti. Mogoče bi lahko bila kakšna tabla, kjer bi se lahko stvari objavljale. Kar se tiče športnih aktivnosti, bi bilo dobro, če bi tudi fakulteta prispevala h kakšni rekreaciji, glede na to, da kot fakulteta nimamo telovadnice, kjer bi lahko izvajali športne aktivnosti. Menim da glede na to, da smo ZDRAVSTVENA fakulteta, bi se morali zavedati kako pomembno je gibanje in bi lahko kaj prispevali k skupnim aktivnostim. \\ - \hline -\hline -\end{longtable} - - -\clearpage - \subsection{Zadovoljstvo s študijem}% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo s študijem - po stopnji študija} -\begin{tabular}{p{8cm}|cc|cccc} - \hline \hline \multicolumn{6}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{Uni} & \bfseries{Mag} & \bfseries{Vis} & \bfseries{Skupaj} \\ - \hline -Splošno zadovoljstvo s študijem & 340 & 1.0 & 3.9 & 3.6 & 3.6 & 3.7 \\ - \hline -\end{tabular} -\end{table} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{table}[ht] -\centering -\caption{Zadovoljstvo s študijem - po letniku} -\begin{tabular}{p{5.3cm}|cc|ccccc} - \hline \hline \multicolumn{7}{r}{\textbf{Povprečja}}\\ \hline -\bfseries{\textbf{Dejavnik}} & \bfseries{n} & \bfseries{sd} & \bfseries{{\small \makecell{Prvi\\letnik}}} & \bfseries{{\small \makecell{Drugi\\letnik}}} & \bfseries{{\small \makecell{Tretji\\letnik}}} & \bfseries{{\small \makecell{Četrti\\letnik}}} & \bfseries{Skupaj} \\ - \hline -Splošno zadovoljstvo s študijem & 340 & 1.0 & 3.7 & 3.6 & 3.5 & 3.7 & 3.7 \\ - \hline -\end{tabular} -\end{table} -\clearpage - -%\subsubsection{Odprti odgovori: Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih s študijem, ki bi jih želeli še posebej izpostaviti.} - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Prosimo, naštejte nekaj najbolj pozitivnih opažanj, povezanih s študijem, ki bi jih želeli še posebej izpostaviti.} \\ - \hline - \\ - \hline -dobri in razumevajoči profesorji, super je ker imamo predroke za izpite in lahko že sproti opravimo obveznosti ne pa da nas vse čaka v izpitnem obdobju \\ - \rowcolor[gray]{0.90}....................... \\ - Dober odnos med predavatelji in študenti, predavatelji so vedno na voljo za vsa vprašanja in nasvete, svetle predavalnice, vaje \\ - \rowcolor[gray]{0.90}Nekateri profesorji so super, ker so prilagodljivi, razumevajoci, zelo prakticno naravnani in se vidi, da radi delajo, kar delajo. Prakticno in teoreticno znanje, ki ga podajo, je neprecenljivo. Blizina fakultete. Izobrazevanje ob petkih in sobotah. Priznavanje prakse redno zaposlenim studentom. \\ - Profesorji z nase fakultete so korektni, spostljivi \\ - \rowcolor[gray]{0.90}Izredni študentje so plačniki programa, zato se jim je potrebno bolj približati pri upoštevanju želja in pričakovanj! \\ - raznolike vaje, tudi na drugih krajih izven sedeža faksa npr. na transfuzijskem centru, fiziološkem inštitutu, medicinski fakulteti \\ - \rowcolor[gray]{0.90}Profesorji, ki znajo motivirati za samostojno bolj poglobljeno delo \\ - Veliko več bi morali dati priuriteto predmetom ki se dejansko uporabljajo pri praksi \\ - \rowcolor[gray]{0.90}Študij je pester, obsega zanimiva predavanja, terensko delo, vaje, laboratorijske vaje. Stalno se nekaj spreminja. \\ - Pozitiven odnos nekaterih profesorjev \\ - \rowcolor[gray]{0.90}večina popoldanskih predavanj \\ - profesorji se potrudijo za nas študente \\ - \rowcolor[gray]{0.90}jih nimam \\ - V primerjavi s prvo stopnjo so profesorji veliko bolj dostopni. Snov letnika se dobro povezuje. Gledano v celoti pridobimo veliko novega strokovnega znanja, predvsem kar se tiče raziskovalne dejavnosti. \\ - \rowcolor[gray]{0.90}Všeč mi je, da je veliko vaj in prakse, čeprav je za nas to naporno, se veliko naučimo. Imamo tudi veliko število dobro izobraženih predavateljev z veliko znanja, ki ga radi posredujejo med nas. \\ - Na nekatere profesorje se lahko zaneses. \\ - \rowcolor[gray]{0.90}Klinična usposabljanja na različnih lokacijah po Ljubljani. \\ - Predavatelji večinoma znajo vzbujati zanimanja za predmete in prihajajo dobro pripravljeni. \\ - \rowcolor[gray]{0.90}Naucis se veliko uporabnih stvari za zivljenje. Profesorji dajo veliko na tvoj osnos do dela in tudi na osbnost ne samo na znanje (nekateri) \\ - Dobro učenje profesorjev na vajah, prostori so večinoma primerni in dobro opremljeni za nemoteno delo \\ - \rowcolor[gray]{0.90}Malo število študentov, dober odnos s profesorji, možnost sodelovanja pri različnih projektih, različne prakse. \\ - Nekateri tanimivi profesorji. \\ - \rowcolor[gray]{0.90}Veliko raznolike prakse \\ - motiviranost določenih profesorjev \\ - \rowcolor[gray]{0.90}Korekten odnos profesorjev \\ - zavzetost predavateljev \\ - \rowcolor[gray]{0.90}Obvezna praksa \\ - Zanimive in poučne vaje. Všeč mi je bilo, da smo imeli izredni študij predavanja na petek in soboto. \\ - \rowcolor[gray]{0.90}Veliko število vaj in praktičnega dela. \\ - dobro teoretsko znanje \\ - \rowcolor[gray]{0.90}Če imaš željo po novem znanju, to predavatalji opazijo in so ti na voljo. \\ - Pridobljenega veliko znanja \\ - \rowcolor[gray]{0.90}Všeč mi je ker smo razdeljeni po manjših skupinah. Tako se med sabo bolj povežemo. \\ - odziven referat \\ - \rowcolor[gray]{0.90}Nimam \\ - Všeč mi je dostopnost in prilagodljivost profesorjev, ki se trudijo da bi dejansko nekaj odnesli od predavanj. Všeč sta mi kavarna in knjižnica, kjer se velikokrat učim. Na fakulteti prevladuje dobro "ozračje." \\ - \rowcolor[gray]{0.90}Vaje, na katerih imamo natancno prikazane stvari (npr. anatomija). \\ - medic in mekis sta zelo prijazna do kolegov, nam svetujeta, pomagata \\ - \rowcolor[gray]{0.90}Na fakulteti je večino profesorjev učinkovitih in hkrati zavzetih do svojih učencev. \\ - Veliko aktivnih vaj in dosti več sodelovanja kot v prvem letniku. \\ - \rowcolor[gray]{0.90}Nekateri profesorji so zelo zavzeti za študente in z veseljem prenašajo znanje na študente. \\ - Zelo prijazen hišnik in čistilke! \\ - \rowcolor[gray]{0.90}Zanimivi predmeti \\ - \hline -\hline -\end{longtable} - - -\newpage -%\subsubsection{Odprti odgovori: Prosimo, naštejte nekaj pomanjkljivosti in predlogov izboljšav, povezanih s študijem; kaj bi želeli pri študiju spremeniti oz. izboljšati.} -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:33 2017 -\begin{longtable}{p{\textwidth}} -\caption{Odprti odgovori: Prosimo, naštejte nekaj pomanjkljivosti in predlogov izboljšav, povezanih s študijem; kaj bi želeli pri študiju spremeniti oz. izboljšati.} \\ - \hline - \\ - \hline -Želim, da imamo pri posameznem predmetu prej vaje in šele nato seminarske vaje. Saj se pri vajah učimo pravilnega postopka. Letos pa imamo vsepovsod prej seminarske vaje, kjer večina profesorjev išče napake študentov, ker še ne poznamo pravilnega postopka, ki ga šele nato obravnavamo na vajah. \\ - \rowcolor[gray]{0.90}Urediti bi bilo treba pravilnik o ocenjevanju na fakulteti! \\ - vse je vredu \\ - \rowcolor[gray]{0.90}............................. \\ - Iz referata velikokrat nismo dobili obvestila o odpovedanih predavanjih (tudi če ostale smeri so), prekrivanje urnika, spremenljiv urnik iz tedna v teden \\ - \rowcolor[gray]{0.90}Dobro bi bilo, da bi bilo manj predmetov, ki se ne navezujejo toliko na našo stroko. Ostali pa bili bolj obsežni (teoretično in praktično), saj bi se tako znanje bolj utrdilo. \\ - Premalo vaj \\ - \rowcolor[gray]{0.90}Ko zaključimo šolanje praktično ne znamo pokazati prav dosti. \\ - Boljse delovanje referata. Malo vec prilagodljivost izrednim studentom. \\ - \rowcolor[gray]{0.90}Mogoče manj obsežna snov določenih predmetov, ki niso povezani z stroko oz izbranim študijskim programom. \\ - Odnos profesorjev medicinske facukltete bi lahko bil bolj korekten, prijazen, spostljiv \\ - \rowcolor[gray]{0.90}Kadar študent (ali študijska smer) naleti na težave in o tem tudi obvesti referat, imam občutek, da odgovorne osebe ne naredijo dovolj, da bi študentu pomagale. Poleg tega zelo dolgo traja, da se omogoči še kakšen dodaten rok opravljanja izpita, čeprav se tudi profesor z dodatnim rokom strinja. \\ - Potrebno bi bilo narediti razliko med rednimi in izrednimi študenti. Ne morete in ne smete primerjati rednih in izrednih študentov, ker imajo izredni po večini službo in v zdravstvu vemo, da se dela v treh izmenah. Zaradi vseh vaj zmanjkuje časa za učenje. In potem nismo pri nobenem predmetu 100\%. Potem upade uspeh študentov in meče se slaba luč na fakulteto in predavatelje... Bi bilo dobro premisliti... \\ - \rowcolor[gray]{0.90}Več demonstracijskih modernih gradiv in aparatur. \\ - manj obsežen urnik, manj obveznosti, imeti predavanje in vaje eno za drugim in ne v razmaku 3 ali 4 mesecih, takoj po opravljenih predavanjih in vajah izpitni rok \\ - \rowcolor[gray]{0.90}Predlogi, več uporabnih znanj, več laboratorija analiz, tujina, obvezne poučne ekskurzije tujina. \\ - Redki predavatelji zelo dobro predavajo sami od sebe medtem ko drugi samo berejo iz powerpointov in se je potrebno snov samo naučiti ne pa razumeti. Pogrešam šolske mentorje na obiskih pri kliničnem usposabljanju da preverijo tudi samo kakvost kliničnega usposabljanja ki se razlikuje od oddelka do oddelka tako pozitivno kot negativno. Zbirna mapa ima dober namen vendar je podpisovanje intervencij še vedno sporno saj nekje z mentorjem počneš vse, medtem ko drugje samo meriš pritiske in izvajaš nego. Potreben je večji nadzor nad kvaliteto kliničnega usposabljanja in primerno ukrepanje. \\ - \rowcolor[gray]{0.90}Zaradi stalnih seminarskih nalog in dodatnega dela ni moznosti se pripravljqti ne izpite. Urnik je nemogoc Preobremenitev studentov \\ - Referat slab. \\ - \rowcolor[gray]{0.90}Vaje in obveznosti bi morale biti razpisane prej.ker se nemoremo organizirati niti za dan naprej ker se stalno spreminja. Izpitno obdobje natrpano z vajami,druge fakultete imajo prosto... \\ - Zamujanje asistentov na vaje (10-20 min). Samo iz enega razloga, in sicer ker tudi mi študentje imamo resne reči za počet. \\ - \rowcolor[gray]{0.90}Nujno izboljšati profesorje prinpraktičnem usposabljanju! \\ - Izboljšati bi bilo potrebno bolj predvidljiv urnik, primerna razporejenost dela, vaj in predavanj skozi celo izpitno obdobje. \\ - \rowcolor[gray]{0.90}Več prakse oz. vaj. Cel 1. letnik ne delamo nič praktičnega v zvezi z našim poklicem (ortotika), vsaj par ur bi lahko imeli za uvod. \\ - V prvem letniku so predmeti preobsežni v smislu da se učimo nešteto neumnosti, ki jih 5 minut po izpitu pozabimo. Izpiti so standardna vprašanja - piflanje, ne gre za pridobivanja znanja ampak konzumacija informacij. Za nekatere izpite imam občutek da jih študenti naredimo kakor se profesorju zljubi - nas pa vsaj ne zafrkavajo s 4 roki. Predlagam da ukinete predmete oz. naj profesorji pri teh predmetih podajajo snov, ki nam bo dejansko koristila v karieri (psihologija - namesto suhoparne teorije o nekih psihologih in njihovih teorijah, naj se študentje spoznajo z mnemotehnikami, tehnikami sproščanja itd. bi naštel še kakšen primer pa sem pozabil imena večine predmetov 1. letnika) ;) \\ - \rowcolor[gray]{0.90}vaje v popoldanskih terminih, prilagajanje zaposlenim, pravočasno obveščanje, ponavljanje predmetov (npr. pristopi k raziskovanju v zdravstvu in kvantitativne metode - prof. hlebec), preobsežen in prenatrpan urnik, preveč izpitov v 1 letniku (lahko bi jih razporedili tudi v drugi letnik), veliko nesmiselnih seminarskih... \\ - Preveč povdarka na nepomembnih predmetih, ki jih tako ali tako ne bomo potrebovali, medtem ko za praktična znanja zmanjka časa. Na splošno se govori, da saj ti ta študij da teoretičnega znanja, ampak praktično pa kot fizioterapevt ne znaš skoraj nič, tako da moraš sam veliko naredit da zapolniš ta primanjkljaj. \\ - \rowcolor[gray]{0.90}Pogrešam več novosti glede na prvo stopnjo (na magistrskem študiju ponavljamo stvari, ki smo jih že slišali na prvi stopnji, isti profesorji, enaka predavanja, literatura,..) \\ - ni realne slike glede prakse in teorije \\ - \rowcolor[gray]{0.90}premalo razpoložljivega znanja, tako teoretičnega in predvsem PRAKTIČNEGA. nekaj ur vaj človeka ne naredi strokovnjaka vrednega diplome \\ - Všeč bi mi bilo, če bi nas profesorji lahko vključevali v svoje raziskovalne in druge projekte. \\ - \rowcolor[gray]{0.90}3 letni študij ZN spremeniti v 4 letni... ukiniti predmete ki so nepotrebni. \\ - Razbremenjenost - 4letni študij. \\ - \rowcolor[gray]{0.90}Kot zaposlena sem s težavo opravila vse potrebne seminarje in napisala številne seminarske naloge. Dela doma je preveč! \\ - Uniforme katastrofaaaaa! Cisto vsak je dobil napacne stevilke, cisto vsak! Kaj je bilo potem potrebno vse popisovati in narocati, brez besed. You had one job and one job only. Res tesko dati skupaj tiste stevilke ko se narocijo, neverjetno res! Lahko bi bila kaksna menza z malico. Kirurgija KATASTROFA! Da fakulteta ne more nic narediti glede enega posameznika pove veliko o fakulteti. Lahko bi se postavili za nas! Ampak ne, bolje da bodo nekateri padli letnik zaradi tega :) Nekateri profesorji namenoma delajo selekcijo, ker je treba doloceno stevilo ljudi vrzti, totalno nepravicno, zdi se kot da ocenjujejo kar na zreb ali kako je komu kdo vsec. Ojoj, vaje in predavanja v izpitnem obdobju, praksa med pocitnicami, seminarska med pocitnicami, ali sploh so pocitnice na tem faksu? Ne. Splosen vtis o fakulteti je slab, vendar me veselje do nase stroke zene naprej. \\ - \rowcolor[gray]{0.90}Fakulteta ni dovolj organizirana na področju urnika in razporeditve izpitov čez leto. Večkrat so se ure predavanj križale z izpiti. Seminarske vaje so odveč in seminarji študentom vzamejo čas, ki bi ga raje uporabili za učenje. Predavanja, povezane vaje in izpiti mikrobiologije, raziskovanja in zdravstvene nege so bile slabo razporejene in zaradi tega malo uporabne. \\ - Prevec ur, prevec dodatnih obveznosti, \\ - \rowcolor[gray]{0.90}Več ekskurzij, tujih predavateljev, preveč obveznosti (predmeti) \\ - Da so predmeti usmerjeni bolj "babiško" (npr. farmakologija, biofizika, kirurgija...), da ni obveznih stvari v septembru (DO-ji). \\ - \rowcolor[gray]{0.90}Druga polovica leta je za nas studente prevec naporna. Zavedam se, da imamo veliko obveznosti, ki jih moramo opraviti vendar sem prepricana, da obstaja moznost, da se vaje razporedi tudi v prvi polovici leta. Predvsem se posledice kazejo na nasem psihicnem zdravju (govorim seveda samo zase, ampak verjamem da nisem edina). \\ - To, da je potrebno nekatere predmete opravljati v enem izpitu ter neprijazen urnik. \\ - \rowcolor[gray]{0.90}Veliki vpisni stroški \\ - Prilagodljivost izrednim študentom, stalnost iz leta v leto pri literaturi, predmetih, praksah, dostopnost nekaterih profesorjev je pomanjkljiva (ne odgovarjajo na e-maile, ves čas spreminjajo uradne ure govorilnih ur ali pa jih celo odpovejo). \\ - \rowcolor[gray]{0.90}manj skupinskih seminarskih nalog (raje individualne) \\ - Kader na Sanitarnem inženirstvu (predvsem Jereb, Ferfila, Kacjan). Nimajo dovolj ustreznega znanja, potrebnega za kakovostno izobraževanje študentov, hkrati pa tudi zelo slab odnos. \\ - \rowcolor[gray]{0.90}Smer OP premalo stika z Uri Soca na svojem podrocju!! Videli smo veliko drugih oddelkov, protetike pa v vseh treh letih ne. \\ - Preveč teorije premalo prakse. Nekatere vaje so se mi zdele povsem nepotrebne. \\ - \rowcolor[gray]{0.90}Preveč je ponavljanja s 1. stopnje in premalo novih stvari. poleg tega so bile vaje velikokrat neustrezne in niso imele povezave s s študijskih programom. \\ - Zavedam se, da si nisem izbrala najlažjega študija, vendar mi vseeno ni jasno vrednotenje dozdajšnjih izkušenj na zdravstvenem področju. Definitivno je preveč praktičnega pouka za tiste, ki že kar nekaj časa delamo v zdravstvu. \\ - \rowcolor[gray]{0.90}Veliko je natlačeno v 3 leta, posledica tega pa je da znamo slabše, kot bi zares lahko. Ker je vse tako hitro eno za drugim in več stvari hkrati nimaš možnosti se nekaj dobro naučiti. Pogrešam tudi kakšne druge tematike, ne samo osnovnih. (Npr. kinesiotaping bi bil lahko del študija in še kaj podobnega.) \\ - Strokovni kader bi moral biti bolj podkrepljen s praktičnim znanjem, ne le teorijo iz zakonodaje; sestavljanje urnika bi lahko izboljšali (manj lukenj med predavanji). \\ - \rowcolor[gray]{0.90}pričakoval sem več praktičnih vsebin \\ - Lahko bi nas več spodbujali k uporabi literature pri študiju za izpite, ter spodbujali našo kreativnost \\ - \rowcolor[gray]{0.90}Več praktičnega dela \\ - Potrebno bi bio razbremeniti urnik v času izpitnega obdobja saj takrat namreč poteka vse od vaj, predavanj, prakse, kolokvijev, Preveč je vaj, za vsak predmet so še dodatne vaje, nekatere popolnoma brez pomena. \\ - \rowcolor[gray]{0.90}Urnik, prostor, odzivnost profesorjev, mednarodne izmenjave, predstavitev izbirnih predmetov,... \\ - prenatrpani urniki, prevelika šolnina, za to kar nam je nudeno, nemožnost prepisa iz izrednega programa na redni program zaradi nenormalno povišanega povprečja \\ - \rowcolor[gray]{0.90}Nimam \\ - Razočarana sem nad profesorico za matematiko in predavanji pri tem predmetu. V tej smeri se na faksu nisem ničesar novega naučila, poleg tega ne zna oz. ni pripravljena odgovoriti na zastavljena vprašanja. Ker mi matematika predstavlja problem, sej mislila da se bom na faksu lahko bolje naučila, saj sem mislila da bo razlaga boljša-pa ni. \\ - \rowcolor[gray]{0.90}Boljša urejenost urnika, pravočasno popravljeni izpiti, da se lahko pravočasno prijavimo na naslednji rok \\ - Prekrivanje predavanj in športnih dejavnosti v sklopu univerze. \\ - \rowcolor[gray]{0.90}Težava z odzivnostjo nekaterih profesorjev. \\ - Kot skupnost nismo ravno najbolje povezani, tako da bi bilo dobro če bi imeli tudi aktivnosti zunaj učnega načrta, ki bi se organizirale v okviru fakultete. \\ - \rowcolor[gray]{0.90}Premalo je vaj, prakse. Po 3 letih študija nimam občutka, da sem se sposobna zaposliti. In preveč nesmiselnih predmetov, ki nimajo nobene veze z našim programom. Slaba izbira 'izbirnih' predmetov, ki so v bistvu obvezni izbirni predmeti, ker izbire sploh ni. \\ - Premalo praktičnih vaj, odnos profesorjev iz Mf oz stomatološke klinike ni korekten. Morda bi lahko zaposlili ljudi, ki nebi imeli poleg dela na kliniki in medicinski fakulteti še predavnja na naši fakulteti, ker je njjihov odnos vzišen pa tudi konkretne literature za učenje primankuje. Primer snemna protetika 2. letnik pri prof. Kuharju in Marionu, dentalni materiali 2. Prav tako se mi zdi vprašljivo znanje ter podajanje znanj nekaterih "profesorjev" za praktično usposabljanje (primer: Mirjana Zagoričnik). Včasih se sprašujem kaj sploh še drži skupaj ta program, je to prvotna dobra misel po nadgradnji zobotehničnega znanja ali je vse želja po dobičku za gospoda Rojka \& Co. \\ - \hline -\hline -\end{longtable} - - - - - - -\newpage -%\section{Priloga 1 - Analize po programih} -\section{Analize dejavnikov po programih} -V nadaljevanju so znotraj sklopov analizirana povprečja posameznih dejavnikov po programih. Manj natančne ocene so pri velikosti vzorca (n) označene z enim ali dvema oklepajema in je zato potrebna večja previdnost pri interpretacijah, tako kot je opisano v poglavju Metodologija. - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{10.4cm}cc|ccc} -\caption{Obveščanje - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Pravočasnost\\informacij}}&\rot{\shortstack[l]{Spletna\\stran}} & \rot{\shortstack[l]{Brezžično\\omrežje}} \\ \hline \endfirsthead - \caption{Obveščanje - po programih - \textit{nadaljevanje}} \\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Pravočasnost\\informacij}}&\rot{\shortstack[l]{Spletna\\stran}} & \rot{\shortstack[l]{Brezžično\\omrežje}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 24 & 3.5 & 3.9 & \textbf{\textcolor[HTML]{B6321C}{2.5}} \\ - Delovna terapija & Vis. & 41 & 3.7 & 3.9 & 3.5 \\ - Fizioterapija & Vis. & 55 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.7 & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - Fizioterapija & Mag. & (9) & \textbf{\textcolor[HTML]{F58137}{3.2}} & 3.7 & \textbf{\textcolor[HTML]{B6321C}{2.3}} \\ - Laboratorijska zobna protetika & Vis. & 20 & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - Ortotika in protetika & Vis. & 20 & \textbf{\textcolor[HTML]{F58137}{3.3}} & 3.9 & 3.5 \\ - Radiološka tehnologija & Mag. & 11 & 3.5 & 3.6 & \textbf{\textcolor[HTML]{B6321C}{2.5}} \\ - Radiološka tehnologija & Vis. & 31 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Sanitarno inženirstvo & Mag. & 15 & 3.9 & 3.9 & 3.6 \\ - Sanitarno inženirstvo & Uni. & 28 & 3.8 & 3.9 & \textbf{\textcolor[HTML]{B6321C}{2.3}} \\ - Zdravstvena nega & Vis. & 82 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.7 & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Zdravstvena nega & Mag. & 12 & 3.7 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - \hline Skupaj & & 348 & 3.5 & 3.8 & \textbf{\textcolor[HTML]{F58137}{3.0}} \\ - \hline -\hline -\end{longtable} - -\clearpage -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{9.7cm}cc|cccc} -\caption{Prostori, oprema, urnik - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Prostori}} & \rot{\shortstack[l]{Oprema}} & \rot{\shortstack[l]{Prostor za \\ ind. učenje}} & \rot{\shortstack[l]{Razpored ur}} \\ \hline \endfirsthead - \caption{Struktura respondentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Prostori}} & \rot{\shortstack[l]{Oprema}} & \rot{\shortstack[l]{Prostor za \\ ind. učenje}} & \rot{\shortstack[l]{Razpored ur}} \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 24 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.5 & 3.8 & \textbf{\textcolor[HTML]{B6321C}{2.4}} \\ - Delovna terapija & Vis. & 41 & 3.8 & 3.9 & 3.9 & \textbf{\textcolor[HTML]{F58137}{3.0}} \\ - Fizioterapija & Vis. & 55 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & 3.7 & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - Fizioterapija & Mag. & (9) & 3.7 & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{B6321C}{2.4}} \\ - Laboratorijska zobna protetika & Vis. & 20 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & 3.9 & 3.6 & \textbf{\textcolor[HTML]{B6321C}{2.4}} \\ - Ortotika in protetika & Vis. & 20 & 3.9 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Radiološka tehnologija & Mag. & 11 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.6 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Radiološka tehnologija & Vis. & 30 & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & 3.8 & \textbf{\textcolor[HTML]{F58137}{3.0}} \\ - Sanitarno inženirstvo & Mag. & 15 & 3.6 & 3.5 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} \\ - Sanitarno inženirstvo & Uni. & 28 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.9 & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} \\ - Zdravstvena nega & Vis. & 80 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.7 & \textbf{\textcolor[HTML]{B6321C}{2.7}} \\ - Zdravstvena nega & Mag. & 12 & 3.9 & 3.7 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.0}} \\ - \hline Skupaj & & 345 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.9 & 3.6 & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - \hline -\hline -\end{longtable} - -\clearpage - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{8.8cm}cc|cccc} -\caption{Knjižnica - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Obseg\\literature}} & \rot{\shortstack[l]{Dostopnost\\literature}} & \rot{\shortstack[l]{Svetovanje\\ pri iskanju}} & \rot{\shortstack[l]{Odnos\\osebja}} - \\ \hline \endfirsthead - \caption{Struktura respondentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Obseg\\literature}} & \rot{\shortstack[l]{Dostopnost\\literature}} & \rot{\shortstack[l]{Svetovanje pri\\iskanju lit.}} & \rot{\shortstack[l]{Odnos\\osebja}} - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 23 & 3.5 & 3.5 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - Delovna terapija & Vis. & 39 & 3.8 & 3.9 & \textbf{\textcolor[HTML]{006666}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - Fizioterapija & Vis. & 55 & 3.7 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} \\ - Fizioterapija & Mag. & (9) & 3.7 & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - Laboratorijska zobna protetika & Vis. & 18 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - Ortotika in protetika & Vis. & 18 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - Radiološka tehnologija & Mag. & 11 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{006666}{4.5}} & \textbf{\textcolor[HTML]{006666}{4.5}} \\ - Radiološka tehnologija & Vis. & 29 & 3.6 & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} \\ - Sanitarno inženirstvo & Mag. & 13 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{006666}{4.5}} & \textbf{\textcolor[HTML]{006666}{4.6}} \\ - Sanitarno inženirstvo & Uni. & 23 & 3.8 & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} \\ - Zdravstvena nega & Vis. & 79 & 3.9 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - Zdravstvena nega & Mag. & 12 & 3.7 & \textbf{\textcolor[HTML]{006666}{4.5}} & \textbf{\textcolor[HTML]{006666}{4.5}} & \textbf{\textcolor[HTML]{006666}{4.7}} \\ - \hline Skupaj & & 329 & 3.7 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} \\ - \hline -\hline -\end{longtable} - -\clearpage - - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{7cm}cc|cccccc} -\caption{Mednarodna mobilnost - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Informacije o\\medn. izmen.}} & \rot{\shortstack[l]{Zanimive možnosti\\medn. izmen.}} & \rot{\shortstack[l]{Fakulteta/akad.\\spodbuja izmen.}} & \rot{\shortstack[l]{Opravljanje obv.\\predm. v tujini}} & \rot{\shortstack[l]{Priznavanje ECTS}} & \rot{\shortstack[l]{Strok. podp.\\medn. mob.}} - - \\ \hline \endfirsthead - \caption{Struktura respondentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Informacije o\\medn. izmen.}} & \rot{\shortstack[l]{Zanimive možnosti\\medn. izmen.}} & \rot{\shortstack[l]{Fakulteta/akad.\\spodbuja izmen.}} & \rot{\shortstack[l]{Opravljanje obv.\\predm. v tujini}} & \rot{\shortstack[l]{Priznavanje ECTS}} & \rot{\shortstack[l]{Strok. podp.\\medn. mob.}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 24 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - Delovna terapija & Vis. & 37 & 3.8 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - Fizioterapija & Vis. & 48 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Fizioterapija & Mag. & (8) & 3.8 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.8 & 3.5 & 3.7 \\ - Laboratorijska zobna protetika & Vis. & 14 & \textbf{\textcolor[HTML]{B6321C}{2.4}} & \textbf{\textcolor[HTML]{B6321C}{1.9}} & \textbf{\textcolor[HTML]{B6321C}{2.5}} & \textbf{\textcolor[HTML]{B6321C}{2.5}} & \textbf{\textcolor[HTML]{B6321C}{2.4}} & \textbf{\textcolor[HTML]{B6321C}{2.4}} \\ - Ortotika in protetika & Vis. & 19 & 3.6 & 3.7 & 3.6 & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} \\ - Radiološka tehnologija & Mag. & 10 & 3.8 & 3.7 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} \\ - Radiološka tehnologija & Vis. & 28 & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{006666}{4.5}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{006666}{4.6}} \\ - Sanitarno inženirstvo & Mag. & (8) & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{006666}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.7}} & \textbf{\textcolor[HTML]{006666}{4.5}} \\ - Sanitarno inženirstvo & Uni. & 16 & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.5 & 3.8 & 3.6 \\ - Zdravstvena nega & Vis. & 70 & 3.9 & 3.8 & 3.9 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.8 \\ - Zdravstvena nega & Mag. & 11 & 3.8 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} & \textbf{\textcolor[HTML]{36BF4B}{4.3}} \\ - \hline Skupaj & & 293 & 3.7 & 3.7 & 3.8 & 3.7 & 3.9 & 3.9 \\ - \hline -\hline -\end{longtable} - -\clearpage - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{8cm}cc|ccccc} -\caption{Svetovalna pomoč - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Tutorstvo}} & \rot{\shortstack[l]{Karierno\\svetovanje}} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost in\\učinkovitost ref.}} & \rot{\shortstack[l]{Ustrezen odnos\\osebja}} - - \\ \hline \endfirsthead - \caption{Struktura respondentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Tutorstvo}} & \rot{\shortstack[l]{Karierno\\svetovanje}} & \rot{\shortstack[l]{Uradne ure\\štud. ref.}} & \rot{\shortstack[l]{Odzivnost in\\učinkovitost ref.}} & \rot{\shortstack[l]{Ustrezen odnos\\osebja}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 24 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & 3.5 & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Delovna terapija & Vis. & 39 & 3.5 & 3.5 & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} \\ - Fizioterapija & Vis. & 53 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} \\ - Fizioterapija & Mag. & (8) & \textbf{\textcolor[HTML]{B6321C}{2.6}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Laboratorijska zobna protetika & Vis. & 17 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} & 3.6 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.7 \\ - Ortotika in protetika & Vis. & 19 & 3.6 & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Radiološka tehnologija & Mag. & (8) & 3.6 & 3.9 & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - Radiološka tehnologija & Vis. & 29 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.5 & 3.5 & 3.8 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - Sanitarno inženirstvo & Mag. & 11 & 3.5 & \textbf{\textcolor[HTML]{B6321C}{2.5}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Sanitarno inženirstvo & Uni. & 24 & \textbf{\textcolor[HTML]{B6321C}{2.7}} & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Zdravstvena nega & Vis. & 77 & 3.5 & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{F58137}{3.3}} & 3.7 & 3.9 \\ - Zdravstvena nega & Mag. & 11 & \textbf{\textcolor[HTML]{F58137}{3.4}} & \textbf{\textcolor[HTML]{B6321C}{2.3}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} & 3.6 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} \\ - \hline Skupaj & & 320 & 3.5 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - \hline -\hline -\end{longtable} - -\clearpage - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{10.8cm}cc|cc} -\caption{Drugi dejavniki študijskega procesa - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Izbirni predmeti\\drugje na UL}} & \rot{\shortstack[l]{Spoznavanje\\zunanjih inšt.}} - - \\ \hline \endfirsthead - \caption{Struktura respondentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Izbirni predmeti\\drugje na UL}} & \rot{\shortstack[l]{Spoznavanje\\zunanjih inšt.}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 15 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Delovna terapija & Vis. & 33 & 3.7 & 3.7 \\ - Fizioterapija & Vis. & 50 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{B6321C}{2.7}} \\ - Fizioterapija & Mag. & (9) & \textbf{\textcolor[HTML]{B6321C}{1.7}} & \textbf{\textcolor[HTML]{B6321C}{2.4}} \\ - Laboratorijska zobna protetika & Vis. & 12 & \textbf{\textcolor[HTML]{B6321C}{2.5}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} \\ - Ortotika in protetika & Vis. & 19 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{B6321C}{2.8}} \\ - Radiološka tehnologija & Mag. & (9) & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} \\ - Radiološka tehnologija & Vis. & 20 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} & 3.7 \\ - Sanitarno inženirstvo & Mag. & (9) & \textbf{\textcolor[HTML]{B6321C}{2.2}} & \textbf{\textcolor[HTML]{B6321C}{2.9}} \\ - Sanitarno inženirstvo & Uni. & 17 & \textbf{\textcolor[HTML]{F58137}{3.2}} & 3.5 \\ - Zdravstvena nega & Vis. & 65 & \textbf{\textcolor[HTML]{F58137}{3.2}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Zdravstvena nega & Mag. & 11 & \textbf{\textcolor[HTML]{B6321C}{2.6}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - \hline Skupaj & & 269 & \textbf{\textcolor[HTML]{F58137}{3.1}} & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - \hline -\hline -\end{longtable} - -\clearpage -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{10.8cm}cc|cc} -\caption{Študentski svet in obštudijske dejavnosti - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Dobra izbira\\športnih akt.}} & \rot{\shortstack[l]{Zadovoljstvo s\\štud. svetom}} - - \\ \hline \endfirsthead - \caption{Struktura respondentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Dobra izbira\\športnih akt.}} & \rot{\shortstack[l]{Zadovoljstvo s\\štud. svetom}} - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 18 & 3.5 & \textbf{\textcolor[HTML]{36BF4B}{4.1}} \\ - Delovna terapija & Vis. & 33 & 3.9 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} \\ - Fizioterapija & Vis. & 54 & 3.8 & 3.7 \\ - Fizioterapija & Mag. & (8) & \textbf{\textcolor[HTML]{B6321C}{1.9}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Laboratorijska zobna protetika & Vis. & 15 & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Ortotika in protetika & Vis. & 17 & \textbf{\textcolor[HTML]{36BF4B}{4.2}} & 3.8 \\ - Radiološka tehnologija & Mag. & (8) & \textbf{\textcolor[HTML]{F58137}{3.0}} & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Radiološka tehnologija & Vis. & 23 & \textbf{\textcolor[HTML]{F58137}{3.4}} & 3.7 \\ - Sanitarno inženirstvo & Mag. & (7) & \textbf{\textcolor[HTML]{B6321C}{2.6}} & \textbf{\textcolor[HTML]{B6321C}{2.6}} \\ - Sanitarno inženirstvo & Uni. & 22 & \textbf{\textcolor[HTML]{F58137}{3.0}} & 3.5 \\ - Zdravstvena nega & Vis. & 60 & \textbf{\textcolor[HTML]{B6321C}{2.9}} & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Zdravstvena nega & Mag. & (9) & \textbf{\textcolor[HTML]{B6321C}{2.8}} & \textbf{\textcolor[HTML]{F58137}{3.1}} \\ - \hline Skupaj & & 274 & \textbf{\textcolor[HTML]{F58137}{3.3}} & 3.6 \\ - \hline -\hline -\end{longtable} - -\clearpage - -% latex table generated in R 3.2.2 by xtable 1.8-2 package -% Mon Nov 13 13:01:34 2017 -\begin{longtable}{p{12cm}cc|c} -\caption{Zadovoljstvo s študijem - po programih} \\ - \toprule[0.4pt] \hline - \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Zadovoljstvo\\s študijem}} - - \\ \hline \endfirsthead - \caption{Struktura respondentov - glede na študijski program - \textit{nadaljevanje}}\\ - \midrule[0.4pt]\hline \textbf{\makecell[l]{Program}} & \makecell{stopnja} & \makecell{n} & \rot{\shortstack[l]{Zadovoljstvo\\s študijem}} - - \\ \hline - \endhead \hline - \textit{Tabela se nadaljuje na naslednji strani} - \endfoot - \endlastfoot \hline -Babištvo & Vis. & 24 & 3.8 \\ - Delovna terapija & Vis. & 40 & \textbf{\textcolor[HTML]{36BF4B}{4.0}} \\ - Fizioterapija & Vis. & 54 & 3.8 \\ - Fizioterapija & Mag. & (9) & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Laboratorijska zobna protetika & Vis. & 19 & \textbf{\textcolor[HTML]{F58137}{3.3}} \\ - Ortotika in protetika & Vis. & 19 & \textbf{\textcolor[HTML]{F58137}{3.2}} \\ - Radiološka tehnologija & Mag. & 11 & 3.9 \\ - Radiološka tehnologija & Vis. & 31 & 3.9 \\ - Sanitarno inženirstvo & Mag. & 15 & 3.5 \\ - Sanitarno inženirstvo & Uni. & 28 & 3.9 \\ - Zdravstvena nega & Vis. & 78 & \textbf{\textcolor[HTML]{F58137}{3.4}} \\ - Zdravstvena nega & Mag. & 12 & 3.8 \\ - \hline Skupaj & & 340 & 3.7 \\ - \hline -\hline -\end{longtable} - -\clearpage - -% \newpage -% \section{Primerjava s povprečnimi vrednostmi Univerze v Ljubljani} -% -% Ocene dejavnikov lahko primerjamo s povprečjem članic UL, kjer je (zaenkrat) v analizo vključenih 23 od skupno 26 članic UL; manjkajo EF, FE in FRI. Vse članice imajo v izračunu povprečja enako težo, neodvisno od števila študentov. \\ -% -% Pri tem velja upoštevati, da zadovoljstvo študentov lahko določajo – poleg prizadevnosti osebja ter kvalitete procesov na fakulteti – tudi zunanji razlogi, na katere fakulteta nima vpliva. V prvi vrsti je to specifičen profil študentov (zaradi vpisnih pogojev, narave študija, motivacije ipd.), ki so zato lahko apriorno bolj ali manj kritični. Obstajajo pa tudi drugi potencialni zunanji razlogi, kot npr. prostorska stiska ali izredni dogodki. -% -% -% <>= -% d4_R <- stVprasanj_primerjava_UL -% -% d4_temp <- 0 -% d4_R2 <- as.numeric() -% for (i in (1:length(stVprasanj_primerjava_UL))){ -% if (i %% 2 == 0){ -% for(j in(1:stVprasanj_primerjava_UL[i])){ -% d4_R2 <- c(d4_R2, j+d4_temp) -% } -% d4_temp <- d4_temp + stVprasanj_primerjava_UL[i] -% } -% else{ -% d4_temp <- d4_temp + stVprasanj_primerjava_UL[i] -% } -% } -% -% -% #Drugace obarvanje zamakne za eno vrstico -% d4_R2 <- d4_R2 - 1 -% -% addtorow3 <- list() -% addtorow3$pos <- c(-1,list(d4_R2)) -% addtorow3$command <- c("\\hline", "\\rowcolor[gray]{0.95}") -% print(xtable(poSklopih_primerjava_UL[,-4], -% digits=c(0,0,0,0), -% caption = paste0("Primerjava ocen ", fakulteta, " ter povprečij UL -% (sortirano po sklopih dejavnikov)"), -% align = c("l", "p{15cm}", "c", "c")), -% caption.placement="top", -% sanitize.colnames.function = bold, -% sanitize.text.function = function(x){x}, -% include.rownames = FALSE, -% table.placement= ("!ht"), -% add.to.row=addtorow3) -% @ -% \newpage -% Za interpratacijo so lahko informativne tudi relativne razlike glede na povprečni nivo UL. V ta namen je izračunan Indeks, ki izraža razmerje med povprečjem FDV in UL (FDV/UL×100). Vrednost nad 100 pomeni, da je obravnavani dejavnik na članici ugoden in obratno. -% -% <>= -% -% rws3 <- seq(1, (nrow(poSklopih_primerjava_UL_index)-1), by = 2) -% print(xtable(poSklopih_primerjava_UL_index, -% digits=c(0,0,0,0,0), -% caption = paste0("Indeks dejavnikov na ", fakulteta, -% " glede na povprečje UL (sortirano po velikosti indeksa)"), -% align = c("l", "p{13cm}", "c", "c", "c")), -% caption.placement="top", -% sanitize.colnames.function = bold, -% sanitize.text.function = function(x){x}, -% include.rownames = FALSE, -% table.placement= ("!ht"), -% add.to.row = list(pos = list(-1, rws3), -% command = c("\\hline","\\rowcolor[gray]{0.95}"))) -% -% -% @ -% Izračunano razmerje (indeks) pokaže, da je na fakulteta relativno najboljše ocenjen dejavnik 'najboljsi' (najboljsi_povp), kjer je indeks najboljsi_indeks. \\ \\ Relativno - glede na povprečje UL - je na fakulteta najbolj kritičen dejavnik 'najslabsi' (najslabsi_povp), kjer indeks znaša samo najslabsi_indeks. -% -% <>= -% -% #cat(paste(sort(pw1))) -% #rws3<- seq(1, (length(pw1)), by = 2) -% #col <- rep("\\rowcolor[HTML]{EFD3D2}", length(rws3)) -% -% #print(xtable(data.frame(sort(pw1)), align = c("L{0cm}", "L{14cm}"), -% # caption = "Odprti odgovori - pomankljivost in predlogi izboljšav"), tabular.environment = #'longtable', -% # floating = FALSE, include.rownames = FALSE, include.colnames = FALSE, caption.placement = "top") -% -% -% #poSklopih_primerjava_UL_graf <- poSklopih_primerjava_UL_graf[seq(1,54,2),] -% nivojiFaktorjev <- factor(poSklopih_primerjava_UL_graf$barva) -% poSklopih_primerjava_UL_graf$dolgoIme <- as.character(poSklopih_primerjava_UL_graf$dolgoIme) -% #Then turn it back into an ordered factor -% poSklopih_primerjava_UL_graf$dolgoIme <- factor(poSklopih_primerjava_UL_graf$dolgoIme, levels=rev(unique(poSklopih_primerjava_UL_graf$dolgoIme))) -% -% # Poizkus pripisovanja skale, saj je v primeru najvecjega indeksa manjsega od 120, -% # in navpicni crti pri vrednosti 120, ta vrednost na pol odrezana -% # opusceno -% #limita_index <- 125 -% #if(max(poSklopih_primerjava_UL_graf$index)>125){ -% # limita_index <- 130 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>130){ -% # limita_index <- 140 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>140){ -% # limita_index <- 150 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>150){ -% # limita_index <- 160 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>160){ -% # limita_index <- 170 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>170){ -% # limita_index <- 180 -% #}else if(max(poSklopih_primerjava_UL_graf$index)>180){ -% # limita_index <- 190 -% #} -% # Zaokrozi na naslednjo desetico. -% limita_index <- round2(max(poSklopih_primerjava_UL_graf$index)+5,-1) -% -% # Veliko komentarjev, zaradi moznih variacij (barve stolpcev, glede na vrednost), dva stolpca # - loceno trenutna fakulteta, UNI, -% # za vsako povprecje dejavnikov -% -% izpis <- ggplot(poSklopih_primerjava_UL_graf, -% aes(x=dolgoIme,#y=odgMean, -% y= index, #group=nivojiFaktorjev, color = nivojiFaktorjev, -% fill=rev(nivojiFaktorjev), -% #label = formatC2(poSklopih_primerjava_UL_graf$odgMean, digits=1, format='f')))+ -% label = poSklopih_primerjava_UL_graf$index))+ -% #geom_line()+ -% #geom_point()+ -% #scale_color_manual(values=c("#468fd7"))+#, "#CD2626"))+ -% -% geom_bar(stat="identity", position="dodge", fill="#c7ddf3")+ #Pozicija value label-ov -% #geom_hline(yintercept = c(80), linetype="dotted", colour="#B6321C") + -% #geom_hline(yintercept = c(90), linetype="dotted", colour="#F58137") + -% #geom_hline(yintercept = c(110), linetype="dotted", colour="#36BF4B") + -% #geom_hline(yintercept = c(120), linetype="dotted", colour="#006666") + -% -% #geom_hline(yintercept = c(80), linetype="dotted", colour="#3872ac") + -% #geom_hline(yintercept = c(90), linetype="dotted", colour="#3872ac") + -% geom_hline(yintercept = c(100), linetype="dotted", colour="#3872ac") + -% #geom_hline(yintercept = c(120), linetype="dotted", colour="#3872ac") + -% #geom_hline(yintercept = c(4, 4.5), linetype="dotted", colour="#D9E2E1") + -% geom_text(position = position_dodge(0.9), -% hjust = 1.5, -% color = rev(poSklopih_primerjava_UL_graf$barva), -% #color = barva_font, -% fontface = "bold", -% size = 3.1)+ -% scale_y_continuous(expand=c(0,0), -% limits=c(0, 130), -% oob = rescale_none) + -% #scale_fill_manual(breaks=rev(nivojiFaktorjev), -% # values= rev(unique(poSklopih_primerjava_UL_graf$barva)), -% # guide=FALSE)+ -% coord_flip()+ -% -% #scale_fill_manual(name = "", breaks=rev(nivojiFaktorjev), -% # values= c("#D9E2E1", "#468fd7"), -% # labels= poSklopih_primerjava_UL_graf$Fakulteta)+ -% xlab("")+ylab("\nIndeks")+ -% theme_classic()+ -% #theme(aspect.ratio= asp.ratio)+ -% -% theme( -% axis.title=element_text(size=11, -% family='CM Roman'), -% axis.line.x = element_line(colour = 'black', size=0.4, -% linetype='solid'), -% axis.line.y = element_line(colour = 'black', size=0.4, -% linetype='solid'))#, -% #legend.title = element_blank()) -% ime <- paste0("rezultati/", ID, "/grafi/primerjava_z_UL.pdf") -% ggsave(izpis, filename=ime, units="in", height=9, width=7, device=cairo_pdf) -% cat(paste0(' -% \\begin{figure}[ht] -% %\\vspace*{-1cm} -% \\caption{Razmerje (indeks) povprečij dejavnikov na ', fakulteta, ' glede na povprečja UL (sortirano po velikosti indeksa)} -% \\includegraphics[width=\\maxwidth]{../',ime, '} -% \\end{figure}')) -% @ -\end{document} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.toc b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.toc deleted file mode 100644 index 8b7f8ff04..000000000 --- a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/temp/splosnaPorocilo.toc +++ /dev/null @@ -1,14 +0,0 @@ -\contentsline {section}{\numberline {1.}Povzetek}{1}{section.0.1} -\contentsline {section}{\numberline {2.}Metodologija}{3}{section.0.2} -\contentsline {section}{\numberline {3.}Sodelovanje \IeC {\v s}tudentov glede na program in letnik}{6}{section.0.3} -\contentsline {section}{\numberline {4.}Analiza dejavnikov in vsebinskih sklopov}{8}{section.0.4} -\contentsline {section}{\numberline {5.}Podrobna analiza po sklopih}{12}{section.0.5} -\contentsline {subsection}{\numberline {5.1}Obve\IeC {\v s}\IeC {\v c}anje na fakulteti}{12}{subsection.0.5.1} -\contentsline {subsection}{\numberline {5.2}Prostori, oprema in urnik}{16}{subsection.0.5.2} -\contentsline {subsection}{\numberline {5.3}Knji\IeC {\v z}nica}{21}{subsection.0.5.3} -\contentsline {subsection}{\numberline {5.4}Mednarodna mobilnost}{24}{subsection.0.5.4} -\contentsline {subsection}{\numberline {5.5}Svetovalna pomo\IeC {\v c} \IeC {\v s}tudentom}{27}{subsection.0.5.5} -\contentsline {subsection}{\numberline {5.6}Drugi dejavniki \IeC {\v s}tudijskega procesa}{30}{subsection.0.5.6} -\contentsline {subsection}{\numberline {5.7}\IeC {\v S}tudentski svet in ob\IeC {\v s}tudijske dejavnosti}{33}{subsection.0.5.7} -\contentsline {subsection}{\numberline {5.8}Zadovoljstvo s \IeC {\v s}tudijem}{36}{subsection.0.5.8} -\contentsline {section}{\numberline {6.}Analize dejavnikov po programih}{42}{section.0.6} diff --git a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/zacasnaMapa_baz/Podatkovne baze 2015 - 2016/kraticeBaz_pripadajociIDji.xlsx b/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/zacasnaMapa_baz/Podatkovne baze 2015 - 2016/kraticeBaz_pripadajociIDji.xlsx deleted file mode 100644 index b8f812324..000000000 Binary files a/admin/survey/modules/Evalvacija/R/Evalvacija splosna porocila studijskega procesa/koda3_posiljanje/zacasnaMapa_baz/Podatkovne baze 2015 - 2016/kraticeBaz_pripadajociIDji.xlsx and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/class.Evalvacija.php b/admin/survey/modules/Evalvacija/class.Evalvacija.php deleted file mode 100644 index 978a893ae..000000000 --- a/admin/survey/modules/Evalvacija/class.Evalvacija.php +++ /dev/null @@ -1,3061 +0,0 @@ -anketa pred, 2->anketa po, 3->splosna anketa) - var $fakulteta = 0; # fdv->0, fgg->1 - - var $fakultete; # vse fakultete - - var $exportSettings = array( - 'type' =>1, - 'fakulteta' =>-1, - 'anketa_pred' =>-1, - 'anketa_po' =>-1, - 'anketa_splosna' =>-1, - 'anketa_podipl' =>-1, - 'anketa_podipl2' =>-1, - 'anketa_podipl3' =>-1 - ); - - private $_dataFileName = null; # ime obstoječe datoteke na FS. - private $_headFileName = null; # ime obstoječe datoteke na FS. - - private $_HEADERS = array(); # array z header podatki - - - var $importSettings = array( - 'type' =>1, - 'fakulteta' =>0, - 'test' =>'' - ); - - var $importError = ''; # Ce pride do napake pri nalaganju csv datoteke - - - function __construct($anketa=0){ - global $mysql_database_name; - global $site_url; - - // Preverjanje ce je na instalaciji vklopljen modul evalvacije (evalvacija je prisotna samo na anketa.uni-lj.si/student) - //if(substr($mysql_database_name, 0, 2) != 'ul' || substr($mysql_database_name, -5) != '1kasi'){ - if(Common::checkModule('evalvacija') != '1'){ - echo 'Not anketa.uni-lj.si!'; - exit(); - } - - // Nastavimo vse fakultete - $this->setFakultete(); - - // Ce imamo anketo, smo v status->ul evealvacija - if ((int)$anketa > 0){ - $this->anketa = $anketa; - - # polovimo vrsto tabel (aktivne / neaktivne) - SurveyInfo :: getInstance()->SurveyInit($this->anketa); - $this->db_table = SurveyInfo::getInstance()->getSurveyArchiveDBString(); - - // Nastavimo clanico kateri pripada anketa - $this->fakulteta = $this->getFakultetaId($anketa); - - if($this->fakulteta > 0){ - // Ugotovimo za kaksen tip evalvacijske ankete gre - //$sql1 = sisplet_query("SELECT * FROM srv_spremenljivka s, srv_grupa g WHERE g.ank_id='$this->anketa' AND s.gru_id=g.id AND s.sistem='1' AND s.variable='sifstud'"); - $sql2 = sisplet_query("SELECT * FROM srv_spremenljivka s, srv_grupa g WHERE g.ank_id='$this->anketa' AND s.gru_id=g.id AND s.sistem='1' AND s.variable='sifpredm'"); - $sql3 = sisplet_query("SELECT * FROM srv_spremenljivka s, srv_grupa g WHERE g.ank_id='$this->anketa' AND s.gru_id=g.id AND s.sistem='1' AND s.variable='sifizv1'"); - - // Ce imamo sifro studenta zapisujemo - //if(mysqli_num_rows($sql1) > 0){ - - // Ce imamo sifro predmeta gre za anketo za ocenjevanje predmetov - if (mysqli_num_rows($sql2) > 0) { - $row2 = mysqli_fetch_array($sql2); - - // Ce imamo sifro izvajalca gre za anketo pred izpiti (eval_data_anketaPred), drugace je anketa po izpitih (eval_data_anketaPo) - if(mysqli_num_rows($sql3) > 0) - $this->eval_survey_type = 1; - else - $this->eval_survey_type = 2; - } - // splosna anketa (ena na studenta, brez predmetov) - else - $this->eval_survey_type = 3; - //} - } - else{ - echo 'Napaka pri določanju članice glede na anketo!'; - } - } - - // Ce izvajamo CSV upload - if(isset($_GET['s']) && $_GET['s'] == 'upload_csv'){ - - if(!isset($_POST['import_fakulteta']) || !isset($_POST['import_type'])){ - echo 'Napaka! Niso nastavljeni vsi parametri uvoza!'; - exit(); - } - - $this->importSettings['fakulteta'] = (isset($_POST['import_fakulteta'])) ? $_POST['import_fakulteta'] : 0; - $this->importSettings['type'] = (isset($_POST['import_type'])) ? $_POST['import_type'] : 1; - $this->importSettings['test'] = (isset($_POST['import_test'])) ? $_POST['import_test'] : ''; - - // Upload profesorjev - if($this->importSettings['type'] == 1) - //$this->uploadProfesorjiNew(); - $this->uploadProfesorji(); - else - $this->uploadCSV(); - } - - // Ce izvajamo CSV upload za emailing - if(isset($_GET['s']) && $_GET['s'] == 'upload_emailing_csv'){ - $this->uploadEmailingCSV(); - } - } - - - // Prikazemo statistiko resevanja studentske ankete - public function displayStats(){ - global $lang; - - echo '

Ankete potekajo v skladu s Pravilnikom in Priporočili (glej http://ul.1ka.si/).

'; - - echo '

Anketa PRED se vklopi po dveh tretjinah prvega (december) oziroma drugega (maj) semestra. Ankete PO izpitu so aktivne stalno, prikažejo se ob vpisani oceni. Vse ankete se zaključijo konec semestra (septembra).

'; - - - $sqlIzvajalci = sisplet_query("SELECT COUNT(ime_pedagoga) AS countPedagog, COUNT(DISTINCT(predmet)) as countPredmet FROM eval_izvajalec WHERE fakulteta='".$this->fakulteta."' AND semester_izv='1'"); - $sqlIzvajalci2 = sisplet_query("SELECT COUNT(ime_pedagoga) AS countPedagog, COUNT(DISTINCT(predmet)) as countPredmet FROM eval_izvajalec WHERE fakulteta='".$this->fakulteta."'AND semester_izv!='1'"); - - $rowIzvajalci = mysqli_fetch_array($sqlIzvajalci); - $rowIzvajalci2 = mysqli_fetch_array($sqlIzvajalci2); - - - // Anketa PRED - if($this->eval_survey_type == 1){ - echo '

Anketa PRED izpiti ('.$this->fakultete[$this->fakulteta]['kratica'].')

'; - - $sqlStudenti = sisplet_query("SELECT COUNT(DISTINCT(s.student)) AS countStudent FROM eval_data_anketaPred s, eval_izvajalec p WHERE s.predmet=p.idp AND p.semester_izv='1' AND p.fakulteta='".$this->fakulteta."'"); - $sqlStudenti2 = sisplet_query("SELECT COUNT(DISTINCT(s.student)) AS countStudent FROM eval_data_anketaPred s, eval_izvajalec p WHERE s.predmet=p.idp AND p.semester_izv!='1' AND p.fakulteta='".$this->fakulteta."'"); - - $rowStudenti = mysqli_fetch_array($sqlStudenti); - $rowStudenti2 = mysqli_fetch_array($sqlStudenti2); - - // Zimski semester - echo '

V anketo je bilo v prvem semestru vključenih '.$rowIzvajalci['countPredmet'].' predmetov in '.$rowIzvajalci['countPedagog'].' pedagogov. V njej je doslej sodelovalo (odgovorilo ali zavrnilo) '.$rowStudenti['countStudent'].' študentov.

'; - - // Letni semester - echo '

V anketo je bilo v drugem semestru vključenih '.$rowIzvajalci2['countPredmet'].' predmetov in '.$rowIzvajalci2['countPedagog'].' pedagogov. V njej je doslej sodelovalo (odgovorilo ali zavrnilo) '.$rowStudenti2['countStudent'].' študentov.

'; - - echo '

Odziv na anketo je bil obvezen predpogoj za prijavo na izpit, študenti pa so se lahko pri vsakem predmetu odločili, da ankete tudi ne izpolnijo.

'; - } - // Anketa PO - elseif($this->eval_survey_type == 2){ - echo '

Anketa PO izpitih ('.$this->fakultete[$this->fakulteta]['kratica'].')

'; - - $sqlStudenti = sisplet_query("SELECT COUNT(DISTINCT(s.student)) AS countStudent FROM eval_data_anketaPo s, eval_izvajalec p WHERE s.predmet=p.idp AND p.semester_izv='1' AND p.fakulteta='".$this->fakulteta."'"); - $sqlStudenti2 = sisplet_query("SELECT COUNT(DISTINCT(s.student)) AS countStudent FROM eval_data_anketaPo s, eval_izvajalec p WHERE s.predmet=p.idp AND p.semester_izv!='1' AND p.fakulteta='".$this->fakulteta."'"); - - $rowStudenti = mysqli_fetch_array($sqlStudenti); - $rowStudenti2 = mysqli_fetch_array($sqlStudenti2); - - // Zimski semester - echo '

V anketo je bilo v prvem semestru vključenih '.$rowIzvajalci['countPredmet'].' predmetov in '.$rowIzvajalci['countPedagog'].' pedagogov. V njej je doslej sodelovalo (odgovorilo ali zavrnilo) '.$rowStudenti['countStudent'].' študentov.

'; - - // Letni semester - echo '

V anketo je bilo v drugem semestru vključenih '.$rowIzvajalci2['countPredmet'].' predmetov in '.$rowIzvajalci2['countPedagog'].' pedagogov. V njej je doslej sodelovalo (odgovorilo ali zavrnilo) '.$rowStudenti2['countStudent'].' študentov.

'; - - echo '

Študenti so se lahko pri vsakem predmetu odločili, da ankete tudi ne izpolnijo.

'; - } - // Splosna anketa - else{ - echo '

Splošna anketa ('.$this->fakultete[$this->fakulteta]['kratica'].')

'; - - $sqlStudenti = sisplet_query("SELECT COUNT(DISTINCT(student)) AS countStudent FROM eval_data_splosna"); - $rowStudenti = mysqli_fetch_array($sqlStudenti); - - echo '

V anketo je bilo vključenih '.$rowStudenti['countStudent'].' študentov.

'; - } - } - - - // Prikazemo izpis v pdf (z R-skriptami) - public function displayExport(){ - global $site_path; - global $lang; - global $site_url; - global $admin_type; - global $global_user_id; - - - // Skrit div za popup - echo '
'; - echo ''; - - - echo '
Izvoz'; - - echo '

Izberite tip željenega izpisa, fakulteto ter ustrezni anketi ki sta se izvajali pred in po izpitu:

'; - - - echo '
'; - - // Nastavimo tip izpisa - echo '

'; - echo 'Izpis po: '; - echo 'exportSettings['type']==1 ? ' checked="checked"':'').'> '; - echo ' exportSettings['type']==2 ? ' checked="checked"':'').'> '; - echo ' exportSettings['type']==3 ? ' checked="checked"':'').'> '; - echo '

'; - - // Nastavimo fakulteto - echo '

'; - echo 'Fakulteta: '; - echo '

'; - - echo '
'; - - // Gumb za genereranje izpisov - //echo '
'; - echo ''; - - // Gumb za genereranje CSV-jev (za testiranje) - echo ''; - - echo '
'; - - echo '
'; - - - // Seznam datotek, ki so na voljo za download - echo '
'; - echo 'Datoteke:'; - - $sqlPdf = sisplet_query("SELECT * FROM eval_pdf_reports WHERE usr_id='".$global_user_id."' ORDER BY fak_id ASC, type ASC"); - if(mysqli_num_rows($sqlPdf) > 0){ - echo '
    '; - - $pdfFolder = $site_path . PDF_FOLDER.'/'; - $files = glob($pdfFolder.'*'); - - while($rowPdf = mysqli_fetch_array($sqlPdf)){ - echo '
  • '; - - echo 'Čas generiranja: '.date('d.m.Y H:i:s', strtotime($rowPdf['date'])).'
    '; - echo ''.$rowPdf['filename'].''; - - // Gumb za nalaganje datotek na GC - echo '
    '; - echo 'Naloži na GC'; - echo '
    '; - - echo '
  • '; - } - - echo '
'; - } - else - echo '

Trenutno še nimate pripravljenih nobenih izpisov!

'; - - // Admini zacasno vidijo vsa porocila (tudi od drugih uporabnikov) - if($admin_type == 0){ - $sqlPdf = sisplet_query("SELECT e.filename AS filename, e.date AS date, u.name AS name, u.surname AS surname, u.email AS email - FROM eval_pdf_reports e, users u - WHERE e.usr_id!='".$global_user_id."' AND u.id=e.usr_id ORDER BY e.fak_id ASC, e.type ASC"); - if(mysqli_num_rows($sqlPdf) > 0){ - echo '
    '; - - $pdfFolder = $site_path . PDF_FOLDER.'/'; - $files = glob($pdfFolder.'*'); - - while($rowPdf = mysqli_fetch_array($sqlPdf)){ - echo '
  • '; - - echo 'Avtor: '.$rowPdf['name'].' '.$rowPdf['surname'].' ('.$rowPdf['email'].')
    '; - echo 'Čas generiranja: '.date('d.m.Y H:i:s', strtotime($rowPdf['date'])).'
    '; - echo ''.$rowPdf['filename'].''; - - echo '
  • '; - } - - echo '
'; - } - } - - // Gumb za brisanje folderja "pdf" z koncnimi datotekami izpisov - SAMO ADMIN ZARADI TESTIRANJA - if($admin_type == 0){ - echo ''; - echo '
'; - } - - echo '
'; - - echo '
'; - } - - // Izvedemo pripravo exportov (pripravimo csv datoteke, klicemo r skripto) - public function executeExport(){ - global $site_path; - global $lang; - global $admin_type; - - $start_time = microtime(true);; - - // Pripravimo zacasne csv datoteke - $this->prepareExportCSV(); - - - // Skripta ki jo klicemo (glede na parameter type) - $script = $site_path . SCRIPT_FOLDER . '/'; - - if($this->exportSettings['type'] == 2) - $script .= 'koda-programi.r'; - elseif($this->exportSettings['type'] == 3) - $script .= 'koda-fakulteta.r'; - else - $script .= 'koda-izvajalec_predmet.r'; - - // Parametri - fakulteta - $params = $this->exportSettings['fakulteta']; - - // Pozenemo skripto - $out = exec('Rscript '.$script.' '.$params.' 2>&1', $output, $return_var); - //$out = shell_exec('Rscript '.$script.' '.$params); - - // Testiranje - izpis errorjev - if($admin_type == 0){ - echo '
'; - echo 'Rscript '.$script.' '.$params; - //echo '
'.$out.'
'; - var_dump($output); - //print_r($output); - echo '
'; - } - - - // Pobrisemo zacasne csv datoteke - $this->deleteExportCSV(); - - // Zazipamo in pocistimo rezultate - $this->finishExport(); - - $end_time = microtime(true);; - - if($admin_type == 0) - echo 'Čas izvajanja: '.($end_time - $start_time).'s
'; - } - - // Pobrisemo zacasne csv datoteke - private function deleteExportCSV(){ - global $site_path; - - $temp_folder = $site_path . TEMP_FOLDER.'/'; - - if (file_exists($temp_folder.'/sifrant_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv')) { - unlink($temp_folder.'/sifrant_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv'); - } - - if (file_exists($temp_folder.'/studenti_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv')) { - unlink($temp_folder.'/studenti_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv'); - } - - if (file_exists($temp_folder.'/programi_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv')) { - unlink($temp_folder.'/programi_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv'); - } - - if (file_exists($temp_folder.'/anketa_pred_izp_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv')) { - unlink($temp_folder.'/anketa_pred_izp_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv'); - } - - if (file_exists($temp_folder.'/anketa_po_izpitu_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv')) { - unlink($temp_folder.'/anketa_po_izpitu_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv'); - } - } - - // Pripravimo zacasne csv datoteke - private function prepareExportCSV(){ - global $site_path; - global $lang; - - // Inicializiramo class za datoteko s podatki - /*$SDF = SurveyDataFile::get_instance(); - - // Nastavimo ustrezno anketo za generiranje datoteke s podatki - if($this->exportSettings['anketa_pred'] > 0){ - $SDF->init($this->exportSettings['anketa_pred']); - } - elseif($this->exportSettings['anketa_po'] > 0){ - $SDF->init($this->exportSettings['anketa_po']); - } - elseif($this->exportSettings['anketa_splosna'] > 0){ - $SDF->init($this->exportSettings['anketa_splosna']); - } - elseif($this->exportSettings['anketa_podipl'] > 0){ - $SDF->init($this->exportSettings['anketa_podipl']); - } - elseif($this->exportSettings['anketa_podipl2'] > 0){ - $SDF->init($this->exportSettings['anketa_podipl2']); - } - - // Pripravimo ustrezno datoteko s podatki - $SDF->prepareFiles(); - - $this->_headFileName = $SDF->getHeaderFileName(); - $this->_dataFileName = $SDF->getDataFileName();*/ - - - // PRVI CSV - profesorji s predmeti - $this->prepareCSVProfesorji(); - - // DRUGI CSV - studenti - $this->prepareCSVStudenti(); - - // DRUGI CSV - programi - $this->prepareCSVProgrami(); - - // TRETJI CSV - reseni podatki v anketi PRED - $this->prepareCSVData($this->exportSettings['anketa_pred'], 0); - - // CETRTI CSV - reseni podatki v anketi PO - $this->prepareCSVData($this->exportSettings['anketa_po'], 1); - - // PETI CSV - reseni podatki v anketi splosna - $this->prepareCSVData($this->exportSettings['anketa_splosna'], 2); - - // SESTI CSV - reseni podatki v anketi podiplomska - $this->prepareCSVData($this->exportSettings['anketa_podipl'], 3); - - // SEDMI CSV - reseni podatki v anketi podiplomska 2 - $this->prepareCSVData($this->exportSettings['anketa_podipl2'], 4); - - // OSMI CSV - reseni podatki v anketi podiplomska 3 - $this->prepareCSVData($this->exportSettings['anketa_podipl3'], 5); - } - - // Pripravimo CSV s sifranti - profesorji s predmeti - private function prepareCSVProfesorji(){ - global $site_path; - global $lang; - - $temp_folder = $site_path . TEMP_FOLDER.'/'; - - $file = fopen($temp_folder.'sifrant_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv','w'); - - header('Content-Encoding: windows-1250'); - header('Content-Type: application/csv charset=windows-1250'); - - // Prva vrstica - $header = array('IDP', 'PREDMET', 'IDPEDAGOGA', 'NAZIV PEDAGOGA', 'NACIN_STUDIJA', 'SEMESTER_IZV', 'ST_KT', 'ST_STUD', 'STOPNJA', 'NOSILEC', 'PRAKSA', 'IZVEDBA'); - fputcsv($file, $header, ';'); - - $sql = sisplet_query("SELECT idp, predmet, idpedagoga, ime_pedagoga, nacin_studija, semester_izv, st_kt, st_stud, stopnja, nosilec, praksa - FROM eval_izvajalec - WHERE fakulteta='".$this->exportSettings['fakulteta']."'"); - - // Loop po vrsticah - while($row = mysqli_fetch_row($sql)){ - - // Popravimo stare čšž-je (ki so bili zamenjani z ccc, sss...) - $row = str_replace(array("ccc", "CCC", "zzz", "ZZZ", "sss", "SSS", "cc_cc"), array("č","Č","ž","Ž","š","Š","ć"), $row); - - // Spremenimo encoding v windows-1250 - foreach(array_keys($row) as $key){ - $row[$key] = iconv("UTF-8","Windows-1250//TRANSLIT", $row[$key]); - } - - // Dodamo stolpec izvedba (ker zna drugace R komplicirat:) - if($row[5] == 'prvi semester' || $row[5] == 'zimski'|| $row[5] == '1') - $row[] = '1 Z'; - elseif($row[5] == 'drugi semester' || $row[5] == 'poletni' || $row[5] == '2') - $row[] = '1 P'; - else - $row[] = '1 C'; - - // ID-ju predmeta pripnemo se nacin studija (redni/izredni), da se ujema s podatki - $row[0] = $row[0].'_'.$row[4]; - - fputcsv($file, $row, ';'); - } - - fclose($file); - } - - // Pripravimo CSV s sifranti - studenti - private function prepareCSVStudenti(){ - global $site_path; - global $lang; - - $temp_folder = $site_path . TEMP_FOLDER.'/'; - - $file = fopen($temp_folder.'studenti_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv','w'); - - header('Content-Encoding: windows-1250'); - header('Content-Type: application/csv charset=windows-1250'); - - // Prva vrstica - $header = array('ID_studenta_(MD5)', 'ID_vrsta_studija', 'Letnik', 'Nacin_studija', 'Fakulteta'); - fputcsv($file, $header, ';'); - - // Po novem ne grupiramo po studentih, ker imajo lahko 2 programa - /*$sql = sisplet_query("SELECT id_student, id_program, letnik, nacin_studija, fakulteta - FROM eval_student - WHERE fakulteta='".$this->exportSettings['fakulteta']."' - GROUP BY id_student");*/ - $sql = sisplet_query("SELECT id_student, id_program, letnik, nacin_studija, fakulteta - FROM eval_student - WHERE fakulteta='".$this->exportSettings['fakulteta']."'"); - - // Loop po vrsticah - while($row = mysqli_fetch_row($sql)){ - - // Popravimo text letnik - if($row[2] != 0) - $row[2] = $row[2].'. letnik'; - else - $row[2] = 'dodatno leto'; - - // Popravimo stare čšž-je (ki so bili zamenjani z ccc, sss...) - //$row = str_replace(array("ccc", "CCC", "zzz", "ZZZ", "sss", "SSS", "cc_cc"), array("č","Č","ž","Ž","š","Š","ć"), $row); - - // Spremenimo encoding v windows-1250 - /*foreach(array_keys($row) as $key){ - $row[$key] = iconv("UTF-8","Windows-1250//TRANSLIT", $row[$key]); - }*/ - - fputcsv($file, $row, ';'); - } - - fclose($file); - } - - // Pripravimo CSV s programi - private function prepareCSVProgrami(){ - global $site_path; - global $lang; - - $temp_folder = $site_path . TEMP_FOLDER.'/'; - - $file = fopen($temp_folder.'programi_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv','w'); - - header('Content-Encoding: windows-1250'); - header('Content-Type: application/csv charset=windows-1250'); - - // Prva vrstica - $header = array('ID', 'Naziv', 'St_letnikov', 'Stopnja', 'Vrsta'); - fputcsv($file, $header, ';'); - - $sql = sisplet_query("SELECT id, program, st_letnik, stopnja, vrsta - FROM eval_program"); - - // Loop po vrsticah - while($row = mysqli_fetch_row($sql)){ - - // Popravimo stare čšž-je (ki so bili zamenjani z ccc, sss...) - $row = str_replace(array("ccc", "CCC", "zzz", "ZZZ", "sss", "SSS", "cc_cc"), array("č","Č","ž","Ž","š","Š","ć"), $row); - - // Spremenimo encoding v windows-1250 - foreach(array_keys($row) as $key){ - $row[$key] = iconv("UTF-8","Windows-1250//TRANSLIT", $row[$key]); - } - - fputcsv($file, $row, ';'); - } - - fclose($file); - } - - // Pripravimo CSV s podatki resene ankete ($type: 0->anketa_pred, 1->anketa_po, 2->splosna, 3->podipl, 4->podipl2, 5->podipl3) - private function prepareCSVData($anketa, $type=0){ - global $site_path; - - $temp_folder = $site_path . TEMP_FOLDER.'/'; - - - // Poskrbimo za datoteko s podatki - $SDF = SurveyDataFile::get_instance($force_new=true); - $SDF->init($anketa); - $SDF->prepareFiles(); - - $this->_headFileName = $SDF->getHeaderFileName(); - $this->_dataFileName = $SDF->getDataFileName(); - - $this->getHeaderData(); - - - // Zaenkrat dopuscamo samo status 6 in brez lurkerjev - PO NOVEM SO LAHKO LURKERJI - $status_filter = '('.STATUS_FIELD.'==6)'; - - $start_sequence = 2; - $end_sequence = $this->_HEADERS['_settings']['metaSequence']-1; - - $field_delimit = ';'; - - // Filtriramo podatke po statusu in jih zapisemo v temp folder - if (IS_WINDOWS) { - $out = shell_exec('awk -F"|" "BEGIN {{OFS=\",\"} {ORS=\"\n\"}} '.$status_filter.'" '.$this->_dataFileName.' | cut -d "|" -f '.$start_sequence.'-'.$end_sequence.' >> '.$temp_folder.'/temp_data_'.$anketa.'.dat'); - } - else { - $out = shell_exec('awk -F"|" \'BEGIN {{OFS=","} {ORS="\n"}} '.$status_filter.'\' '.$this->_dataFileName.' | cut -d \'|\' -f '.$start_sequence.'-'.$end_sequence.' >> '.$temp_folder.'/temp_data_'.$anketa.'.dat'); - } - - - // Ustvarimo koncni CSV - if ($fd = fopen($temp_folder.'/temp_data_'.$anketa.'.dat', "r")) { - - // Anketa PRED - if($type == 0) - $name = 'anketa_pred_izp'; - elseif($type == 1) - $name = 'anketa_po_izpitu'; - elseif($type == 2) - $name = 'anketa_splosna'; - elseif($type == 3) - $name = 'anketa_podipl'; - elseif($type == 4) - $name = 'anketa_podipl2'; - elseif($type == 5) - $name = 'anketa_podipl3'; - - $fd2 = fopen($temp_folder.'/'.$name.'_'.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.csv', "w"); - - header('Content-Encoding: windows-1250'); - header('Content-Type: application/csv charset=windows-1250'); - - # naredimo header row - //$sifstud_cnt = 0; - $sifpredm_cnt = 0; - $idprog_cnt = 0; - $i = 0; - foreach ($this->_HEADERS AS $spid => $spremenljivka) { - if (count($spremenljivka['grids']) > 0) { - foreach ($spremenljivka['grids'] AS $gid => $grid) { - foreach ($grid['variables'] AS $vid => $variable ){ - if ($spremenljivka['tip'] !== 'sm' && !($variable['variable'] == 'uid' && $variable['naslov'] == 'User ID')){ - $output1 .= strip_tags($variable['variable']).$field_delimit; - $output2 .= '"'.strip_tags($variable['naslov']).'"'.$field_delimit; - - // Zabelezimo katero polje je sifstud - /*if($variable['naslov'] == 'sifstud') - $sifstud_cnt = $i;*/ - - // Zabelezimo katero polje je sifpredm - if($variable['naslov'] == 'sifpredm') - $sifpredm_cnt = $i; - - // Zabelezimo katero polje je idprog - PO NOVEM SO LAHKO PODATKI TUDI BREZ PROGRAMA - /*if($variable['naslov'] == 'idprog') - $idprog_cnt = $i;*/ - - $i++; - } - } - } - } - } - - // Spremenimo encoding v windows-1250 - //$output1 = iconv("UTF-8","Windows-1250//TRANSLIT", $output1); - //$output2 = iconv("UTF-8","Windows-1250//TRANSLIT", $output2); - - fwrite($fd2, $output1."\r\n"); - fwrite($fd2, $output2."\r\n"); - - $lines = array(); - while ($line = fgets($fd)) { - - // Preverimo ce imamo ok sifro studenta, sifro predmeta - ce ni, ga pocistimo - //$sifstud = ''; - $sifpredm = ''; - //$idprog = ''; - if(/*$sifstud_cnt > 0 &&*/ $sifpredm_cnt > 0 ){ - $temp = array(); - $temp = explode('|', $line); - - //$sifstud = $temp[$sifstud_cnt]; - $sifpredm = $temp[$sifpredm_cnt]; - //$idprog = $temp[$idprog_cnt]; - } - - // Vrstico zapisemo samo ce je sifstud res md5 vrednost, sifpredm > 0 - in preverimo da nimamo duplikata - // Ce gre za splosno oz. podiplomsko ne preverjamo sifre predmeta - //if(strlen($sifstud) == 32 && $sifpredm > 0 && /*$idprog > 0 &&*/ !in_array($sifstud.'_'.$sifpredm, $lines)){ - if($sifpredm > 0 || $type > 1){ - - //fwrite($fd2, '="'); - //$line = str_replace(array("\r","\n","|"), array("","",'";="'), $line); - $line = '"' . str_replace(array("\r","\n","\"","|"), array("","","",'";"'), $line) . '"'; - - // Spremenimo encoding v windows-1250 - $line = iconv("UTF-8","Windows-1250//TRANSLIT", $line); - //$line = str_replace(array("č","š","ž","Č","Š","Ž"), array("\v{c}","\v{s}","\v{z}","\v{C}","\v{S}","\v{Z}"), $line); - - fwrite($fd2, $line); - //fwrite($fd2, '"'); - fwrite($fd2, "\r\n"); - } - } - - fclose($fd2); - } - fclose($fd); - - - // Na koncu pobrisemo temp datoteke - if (file_exists($temp_folder.'/temp_data_'.$anketa.'.dat')) { - unlink($temp_folder.'/temp_data_'.$anketa.'.dat'); - } - } - - // Rezultate (pdf-je) zapakiramo v zip, prenesemo v direktorij "pdf" in pocistimo za sabo datoteke - private function finishExport(){ - global $site_path; - global $lang; - global $global_user_id; - - $pdfFolder = $site_path . PDF_FOLDER.'/'; - $resultsFolder = $site_path . RESULTS_FOLDER.'/'; - - // Najprej zgradimo ime zip-a iz fakultete, tipa izvoza in timestamp-a - $fakulteta = $this->fakultete[$this->exportSettings['fakulteta']]['kratica']; - - if($this->exportSettings['type'] == 2) - $type = 'program'; - elseif($this->exportSettings['type'] == 3) - $type = 'fakulteta'; - else - $type = 'predmet'; - - $time = date("d-m-Y_H-i-s"); - - $zipName = $fakulteta.'_'.$type.'_'.$global_user_id.'_'.$time.'.zip'; - - $zip = new ZipArchive; - if ($zip->open($pdfFolder.$zipName, ZIPARCHIVE::CREATE) !== TRUE) - die ("Could not open archive"); - - if($handle = opendir($resultsFolder)){ - // Dodamo vse pdf-je s fakulteto v imenu - while(false !== ($entry = readdir($handle))){ - if(pathinfo($entry, PATHINFO_EXTENSION) == 'pdf' && strpos(strtolower($entry), strtolower($fakulteta)) !== false){ - $zip->addFile($resultsFolder.$entry, $entry); - } - } - closedir($handle); - } - - $zip->close(); - - // Zapisemo se vnos v bazo (ce je bil zip uspesno ustvarjen) - if(is_file($pdfFolder.$zipName)){ - $sql = sisplet_query("INSERT INTO eval_pdf_reports (usr_id, filename, date, type, ank_pred_id, ank_po_id, fak_id) - VALUES ('".$global_user_id."', '".$zipName."', NOW(), '".$this->exportSettings['type']."', '".$this->exportSettings['anketa_pred']."', '".$this->exportSettings['anketa_po']."', '".$this->exportSettings['fakulteta']."')"); - } - - - // Na koncu vse pobrisemo - // Pobrisemo vse iz "results" folderja - $files = glob($resultsFolder.'*'); - foreach($files as $file){ - if(is_file($file) && strpos(strtolower(basename($file)), strtolower($fakulteta)) !== false){ - unlink($file); - //echo 'delete '.basename($file).'
'; - } - } - // Pobrisemo vse iz "results/part-izvajalec-slike" folderja - $files = glob($resultsFolder.'part-izvajalec-slike/*'); - foreach($files as $file){ - if(is_file($file) && strpos(strtolower(basename($file)), strtolower($fakulteta)) !== false){ - unlink($file); - //echo 'delete '.basename($file).'
'; - } - } - // Pobrisemo vse iz "results/part-predmet-slike" folderja - $files = glob($resultsFolder.'part-predmet-slike/*'); - foreach($files as $file){ - if(is_file($file) && strpos(strtolower(basename($file)), strtolower($fakulteta)) !== false){ - unlink($file); - //echo 'delete '.basename($file).'
'; - } - } - } - - - // Pripravimo csv izvoze za testiranje - private function testExport(){ - global $site_path; - global $site_url; - - // Pripravimo zacasne csv datoteke - $this->prepareExportCSV(); - - // Datoteke zapakiramo v zip - $temp_folder = $site_path . TEMP_FOLDER.'/'; - - // Najprej zgradimo ime zip-a iz fakultete, tipa izvoza in timestamp-a - $fakulteta = $this->fakultete[$this->exportSettings['fakulteta']]['kratica']; - - $zipName = $fakulteta.'_csv.zip'; - - // Ce ze obstaja pobrisemo zip - if(is_file($temp_folder.$zipName)) - unlink($temp_folder.$zipName); - - $zip = new ZipArchive; - if ($zip->open($temp_folder.$zipName, ZIPARCHIVE::CREATE) !== TRUE) - die ("Could not open archive"); - - // Dodamo csv-je v zip - $csv = 'anketa_po_izpitu_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'anketa_pred_izp_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'anketa_splosna_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'anketa_podipl_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'anketa_podipl2_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'anketa_podipl3_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'programi_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'sifrant_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $csv = 'studenti_'.$fakulteta.'.csv'; - $zip->addFile($temp_folder.$csv, $csv); - - $zip->close(); - - // Pobrisemo zacasne csv datoteke - $this->deleteExportCSV(); - - // Ce je bil zip uspesno ustvarjen - if(is_file($temp_folder.$zipName)){ - echo $site_url.'/admin/survey/modules/Evalvacija/temp/'.$zipName; - } - } - - - // Uvazamo tabelo preko CSV datoteke - public function displayImport($showData=false){ - global $lang; - global $site_url; - global $admin_type; - global $mysql_database_name; - - $showData = (isset($_GET['s']) && $_GET['s'] == 'upload_csv') ? true : $showData; - $semesterUpdate = (isset($_GET['s']) && $_GET['s'] == 'semester_update') ? true : false; - - // Procedure za update ob semestru (med tabelama eval_izvajalec in eval_izvajalec2) - if($semesterUpdate){ - $this->updateSemester(); - } - else{ - // Skrit div za popup - echo '
'; - echo ''; - - - echo '
Uvoz'; - - echo '

Posodabljanje ob semestru

'; - - echo '

Izberite tabelo in fakulteto, za katero želite izvesti uvoz:

'; - - echo '
'; - - - echo '
'; - - // Nastavimo tip izpisa - echo '

'; - echo 'Tabela: '; - echo 'importSettings['type']==1 ? ' checked="checked"':'').'> '; - echo ' importSettings['type']==2 ? ' checked="checked"':'').'> '; - echo ' importSettings['type']==4 ? ' checked="checked"':'').'> '; - echo ' importSettings['type']==3 ? ' checked="checked"':'').'> '; - echo '

'; - - // Nastavimo fakulteto - echo '

'; - echo 'Fakulteta: '; - echo '

'; - - // Nastavimo ce gre za testni uvoz (v testno anketo za izvajalce eval_izvajalec_test) - if($this->importSettings['type']==1){ - echo '

'; - echo 'Uvoz v testno tabelo: '; - echo 'importSettings['test']=='' ? ' checked="checked"':'').'> '; - echo ' importSettings['test']=='2' ? ' checked="checked"':'').'> '; - echo '

'; - } - - // Gumb za genereranje izpisov - echo ''; - echo '
'; - - echo '
'; - - - // Izpis trenutne izbrane tabele - if($showData){ - - // KONTROLE ZA X1 - if($this->importSettings['type'] == 1){ - - echo ''; - - // Št. izvajalcev - echo ''; - - // Frekvence - nacin studija - echo ''; - - // Frekvence - semester izvajanja - echo ''; - - // Frekvence - nosilec - echo ''; - - // Frekvence - stopnja - echo ''; - - // Frekvence - praksa - echo ''; - - echo ''; - echo ''; - - // KT izven mej (1-20) - echo ''; - - // Št. studentov izven mej (<2) - echo ''; - - // Manjkajoci nosilci - echo ''; - - // Podvajanje predmeta in izvajalca - echo ''; - - echo ''; - echo ''; - - // Neujemanje imena predmeta - echo ''; - - // Neujemanje imena pedagoga - echo ''; - - // Neujemanje st. studentov - echo ''; - - // Neujemanje semestra - echo ''; - - // Neujemanje prakse - echo ''; - - // Neujemanje kt - echo ''; - - // Neujemanje stopnje - echo ''; - - echo '
'; - $sql = sisplet_query("SELECT DISTINCT(idpedagoga) FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."'"); - echo 'Število pedagogov: '.mysqli_num_rows($sql); - - echo '
'; - - // Št. predmetov - $sql = sisplet_query("SELECT DISTINCT(idp) FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."'"); - echo 'Število predmetov: '.mysqli_num_rows($sql); - echo '
'; - $sql = sisplet_query("SELECT COUNT(*), nacin_studija FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' GROUP BY nacin_studija"); - while($row = mysqli_fetch_assoc($sql)){ - echo 'Način studija = '.$row['nacin_studija'].': '.$row['COUNT(*)']; - echo '
'; - } - echo '
'; - $sql = sisplet_query("SELECT COUNT(*), semester_izv FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' GROUP BY semester_izv"); - while($row = mysqli_fetch_assoc($sql)){ - echo 'Semester izvajanja = '.$row['semester_izv'].': '.$row['COUNT(*)']; - echo '
'; - } - echo '
'; - $sql = sisplet_query("SELECT COUNT(*), nosilec FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' GROUP BY nosilec"); - while($row = mysqli_fetch_assoc($sql)){ - echo 'Nosilec = '.$row['nosilec'].': '.$row['COUNT(*)']; - echo '
'; - } - echo '
'; - $sql = sisplet_query("SELECT COUNT(*), stopnja FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' GROUP BY stopnja"); - while($row = mysqli_fetch_assoc($sql)){ - echo 'Stopnja = '.$row['stopnja'].': '.$row['COUNT(*)']; - echo '
'; - } - echo '
'; - $sql = sisplet_query("SELECT COUNT(*), praksa FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' GROUP BY praksa"); - while($row = mysqli_fetch_assoc($sql)){ - echo 'Praksa = '.$row['praksa'].': '.$row['COUNT(*)']; - echo '
'; - } - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT * FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' AND (st_kt<'1' OR st_kt>'20')"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Kreditne točke izven mej (1 - 20): '.$row['st_kt'].' - '.$row['idp']; - echo '
'; - } - } - else - echo 'Kreditne točke OK.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT * FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' AND st_stud<'2' GROUP BY idp"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Število študentov izven mej (<2): '.$row['st_stud'].' - '.$row['idp']; - echo '
'; - } - } - else - echo 'Število študentov OK.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.* FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' AND i.nosilec='0' - AND NOT EXISTS (SELECT i2.* FROM eval_izvajalec".$this->importSettings['test']." i2 WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i2.idp=i.idp AND i2.nosilec='1')"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'NIMA NOSILCA! : '.$row['predmet'].' ('.$row['idp'].')'; - echo '
'; - } - } - else - echo 'Nosilci OK.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT idp, idpedagoga, COUNT(*) FROM eval_izvajalec".$this->importSettings['test']." - WHERE fakulteta='".$this->importSettings['fakulteta']."' - GROUP BY idp, idpedagoga - HAVING COUNT(*)>1"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Podvojen predmet in izvajalec: '.$row['st_kt'].' - '.$row['predmet'].' ('.$row['idp'].')'; - echo '
'; - } - } - else - echo 'Ni podvojenih predmetov in izvajalcev.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.* FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' - AND EXISTS (SELECT i2.idp, i2.predmet FROM eval_izvajalec".$this->importSettings['test']." i2 WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i.idp=i2.idp AND i.predmet!=i2.predmet)"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Neujemanje imena predmeta: '.$row['idp']; - echo '
'; - } - } - else - echo 'Ni neujemanj v imenu predmeta.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.idpedagoga, i.ime_pedagoga FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' - AND EXISTS (SELECT i2.idpedagoga, i2.ime_pedagoga FROM eval_izvajalec".$this->importSettings['test']." i2 WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i.idpedagoga=i2.idpedagoga AND i.ime_pedagoga!=i2.ime_pedagoga)"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Neujemanje imena pedagoga: '.$row['idpedagoga']; - echo '
'; - } - } - else - echo 'Ni neujemanj v imenu pedagoga.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.* FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' - AND EXISTS (SELECT i2.idp, i2.idpedagoga, i2.nacin_studija, i2.st_stud FROM eval_izvajalec".$this->importSettings['test']." i2 - WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i.idp=i2.idp AND i.nacin_studija=i2.nacin_studija AND i.st_stud!=i2.st_stud)"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Neujemanje števila študentov: '.$row['st_stud']; - echo '
'; - } - } - else - echo 'Ni neujemanj v številu študentov.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.* FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' - AND EXISTS (SELECT i2.idp, i2.idpedagoga, i2.nacin_studija, i2.semester_izv FROM eval_izvajalec".$this->importSettings['test']." i2 - WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i.idp=i2.idp AND i.nacin_studija=i2.nacin_studija AND i.semester_izv!=i2.semester_izv)"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Neujemanje semestra izvajanja: '.$row['semester_izv']; - echo '
'; - } - } - else - echo 'Ni neujemanj semestra izvajanja.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.* FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' - AND EXISTS (SELECT i2.idp, i2.idpedagoga, i2.nacin_studija, i2.praksa FROM eval_izvajalec".$this->importSettings['test']." i2 - WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i.idp=i2.idp AND i.nacin_studija=i2.nacin_studija AND i.praksa!=i2.praksa)"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Neujemanje prakse: '.$row['praksa']; - echo '
'; - } - } - else - echo 'Ni neujemanj prakse.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.* FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' - AND EXISTS (SELECT i2.idp, i2.idpedagoga, i2.nacin_studija, i2.st_kt FROM eval_izvajalec".$this->importSettings['test']." i2 - WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i.idp=i2.idp AND i.nacin_studija=i2.nacin_studija AND i.st_kt!=i2.st_kt)"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Neujemanje kreditnih točk: '.$row['st_kt']; - echo '
'; - } - } - else - echo 'Ni neujemanj kreditnih točk.'; - echo '
'; - echo '
'; - echo '
'; - $sql = sisplet_query("SELECT i.* FROM eval_izvajalec".$this->importSettings['test']." i - WHERE i.fakulteta='".$this->importSettings['fakulteta']."' - AND EXISTS (SELECT i2.idp, i2.idpedagoga, i2.nacin_studija, i2.stopnja FROM eval_izvajalec".$this->importSettings['test']." i2 - WHERE i2.fakulteta='".$this->importSettings['fakulteta']."' AND i.idp=i2.idp AND i.nacin_studija=i2.nacin_studija AND i.stopnja!=i2.stopnja)"); - if(mysqli_num_rows($sql) > 0){ - while($row = mysqli_fetch_assoc($sql)){ - echo 'Neujemanje stopnje: '.$row['stopnja']; - echo '
'; - } - } - else - echo 'Ni neujemanj stopnje.'; - echo '
'; - echo '
'; - } - - - echo '
'; - echo 'Navodila za CSV datoteko:
    '; - echo '
  • UTF 8 encoding (če bo ANSI ne bodo delali čšž-ji)!
  • '; - echo '
  • Brez naslovne vrstice
  • '; - echo '
  • Vsi stolpci se morajo ujemati po vrstnem redu in številu
  • '; - echo '
  • Podatki so ločeni s podpičji (razen predmeti s profesorji, ki so ločeni z #)!
  • '; - echo '
'; - //echo 'Dodaj podatke (CSV - polja ločena z vejico): '; - echo 'Dodaj podatke (CSV - polja ločena s ; oz. #): '; - if($this->importError != '') - echo $this->importError; - - echo '
'; - - - // Gumb za brisanje tabele - samo admini - if($admin_type == 0){ - echo ''; - echo '

'; - } - - - // Tabela s predmeti in izvajalci - if($this->importSettings['type'] == 1){ - $sql = sisplet_query("SELECT * FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."' ORDER BY idp, idpedagoga ASC"); - $sqlH = sisplet_query("SHOW COLUMNS FROM eval_izvajalec".$this->importSettings['test'].""); - - // Dobimo cas zadnjega updata tabele - $sqlTime = sisplet_query("SELECT UPDATE_TIME FROM information_schema.tables WHERE TABLE_SCHEMA='".$mysql_database_name."' AND TABLE_NAME='eval_izvajalec".$this->importSettings['test']."'"); - $rowTime = mysqli_fetch_assoc($sqlTime); - $updateTime = $rowTime['UPDATE_TIME']; - } - // Tabela s studenti - elseif($this->importSettings['type'] == 2){ - $sql = sisplet_query("SELECT * FROM eval_student WHERE fakulteta='".$this->importSettings['fakulteta']."' ORDER BY id_student ASC"); - $sqlH = sisplet_query("SHOW COLUMNS FROM eval_student"); - - // Dobimo cas zadnjega updata tabele - $sqlTime = sisplet_query("SELECT UPDATE_TIME FROM information_schema.tables WHERE TABLE_SCHEMA='".$mysql_database_name."' AND TABLE_NAME='eval_student'"); - $rowTime = mysqli_fetch_assoc($sqlTime); - $updateTime = $rowTime['UPDATE_TIME']; - } - // Tabela s podiplomskimi studenti - elseif($this->importSettings['type'] == 4){ - $sql = sisplet_query("SELECT * FROM eval_student_podipl ORDER BY id_student ASC"); - $sqlH = sisplet_query("SHOW COLUMNS FROM eval_student_podipl"); - - // Dobimo cas zadnjega updata tabele - $sqlTime = sisplet_query("SELECT UPDATE_TIME FROM information_schema.tables WHERE TABLE_SCHEMA='".$mysql_database_name."' AND TABLE_NAME='eval_student_podipl'"); - $rowTime = mysqli_fetch_assoc($sqlTime); - $updateTime = $rowTime['UPDATE_TIME']; - } - // Tabela s programi - elseif($this->importSettings['type'] == 3){ - $sql = sisplet_query("SELECT * FROM eval_program ORDER BY id ASC"); - $sqlH = sisplet_query("SHOW COLUMNS FROM eval_program"); - - // Dobimo cas zadnjega updata tabele - $sqlTime = sisplet_query("SELECT UPDATE_TIME FROM information_schema.tables WHERE TABLE_SCHEMA='".$mysql_database_name."' AND TABLE_NAME='eval_program'"); - $rowTime = mysqli_fetch_assoc($sqlTime); - $updateTime = $rowTime['UPDATE_TIME']; - } - - // Cas zadnje spremembe na tabeli - echo 'Zadnja sprememba: '.date("d.m.Y H:i:s", strtotime($updateTime)).''; - - // Število vseh v bazi - echo '
Število vseh vnosov: '.mysqli_num_rows($sql).''; - - echo ''; - - echo ''; - while($rowH = mysqli_fetch_assoc($sqlH)){ - echo ''; - } - echo ''; - - $i=0; - while($row = mysqli_fetch_assoc($sql)){ - echo ''; - foreach($row as $val){ - echo ''; - } - echo ''; - - // Tabela studentov je drugace prevelika - /*if($i > 100 && $this->importSettings['type'] == 2) - break;*/ - - $i++; - } - - echo '
'.$rowH['Field'].'
'.$val.'
'; - } - - echo '
'; - - echo '
'; - } - } - - function uploadCSV(){ - global $site_path; - - $target_file = $site_path.TEMP_FOLDER.'/'.basename($_FILES['import_csv']['name']); - - if(file_exists($target_file)){ - $this->importError = 'Datoteka, ki jo želite naložiti že obstaja!'; - return; - } - - if(move_uploaded_file($_FILES['import_csv']['tmp_name'], $target_file)){ - //echo 'Datoteka '. basename( $_FILES["fileToUpload"]["name"]). ' je bila uspešno uvožena.'; - - $file = fopen($target_file, 'r'); - while(!feof($file)){ - $line = fgetcsv($file, 0, ';'); - - // Tabela s studenti - if($this->importSettings['type'] == 2){ - $sql_table = 'eval_student'; - } - // Tabela s podiplomskimi studenti - elseif($this->importSettings['type'] == 4){ - $sql_table = 'eval_student_podipl'; - } - // Tabela s programi - elseif($this->importSettings['type'] == 3){ - $sql_table = 'eval_program'; - } - - // Preverimo ce se ujema stevilo stolpcev - $sqlC = sisplet_query("SHOW COLUMNS FROM ".$sql_table.""); - $cols = array(); - while($rowC = mysqli_fetch_assoc($sqlC)){ - $cols[] = $rowC['Field']; - } - - if(count($line) == count($cols)){ - - // String z vrednostmi ki jih vstavljamo - $values = ''; - foreach($line as $val){ - $values .= '\''.$val.'\','; - } - $values = substr($values, 0, -1); - - // String s stolpci v katere vstavljamo vrednosti - $columns = ''; - foreach($cols as $val){ - $columns .= $val.','; - } - $columns = substr($columns, 0, -1); - - // Vstavimo vrstico - $sql = sisplet_query("INSERT IGNORE INTO ".$sql_table." (".$columns.") VALUES (".$values.")"); - if (!$sql) $this->importError = mysqli_error($GLOBALS['connect_db']); - } - else{ - $this->importError = 'Število stolpcev se ne ujema!'; - break; - } - } - fclose($file); - - // Na koncu pobrisemo datoteko - if (file_exists($target_file)) { - unlink($target_file); - } - } - else{ - $this->importError = 'Prišlo je do napake pri uvažanju.'; - } - } - - function uploadProfesorji(){ - global $site_path; - - $target_file = $site_path.TEMP_FOLDER.'/'.basename($_FILES['import_csv']['name']); - - if(file_exists($target_file)){ - $this->importError = 'Datoteka, ki jo želite naložiti že obstaja!'; - return; - } - - if(move_uploaded_file($_FILES['import_csv']['tmp_name'], $target_file)){ - //echo 'Datoteka '. basename( $_FILES["fileToUpload"]["name"]). ' je bila uspešno uvožena.'; - - // Za odstranjevanje bom znakov - $bom = pack('H*','EFBBBF'); - - $file = fopen($target_file, 'r'); - while(!feof($file)){ - - $skip = false; - - $line = fgetcsv($file, $length=0, $delimiter="#"); - - // String z vrednostmi ki jih vstavljamo - $values = ''; - $i=0; - foreach($line as $val){ - - // Ce je stevilo studentov 0 ne uvazamo - if($i == 8 && $val == '0') - $skip = true; - - // za vsak slucaj odstranimo utf8 bom znake - if($i == 0) - $val = preg_replace("/^$bom/", '', $val); - - $values .= '\''.$val.'\','; - - $i++; - } - $values = substr($values, 0, -1); - - // Se spremenimo encoding zaradi čšž-jev - $values = iconv(mb_detect_encoding($values, mb_detect_order(), true), "UTF-8", $values); - - // Vstavimo vrstico - ce ni st_stud 0 - if(!$skip){ - $sql = sisplet_query("INSERT IGNORE INTO eval_izvajalec".$this->importSettings['test']." - (fakulteta, idp, predmet, idpedagoga, ime_pedagoga, nacin_studija, semester_izv, st_kt, st_stud, nosilec, stopnja, praksa) - VALUES - (".$values.") - ON DUPLICATE KEY UPDATE - st_stud = GREATEST(st_stud, VALUES(nosilec)), - nosilec = GREATEST(nosilec, VALUES(nosilec)) - "); - if (!$sql) $this->importError = mysqli_error($GLOBALS['connect_db']); - } - } - fclose($file); - - // Na koncu pobrisemo datoteko - if (file_exists($target_file)) { - unlink($target_file); - } - } - else{ - $this->importError = 'Prišlo je do napake pri uvažanju.'; - } - } - - function uploadProfesorjiNew(){ - global $site_path; - - $target_file = $site_path.TEMP_FOLDER.'/'.basename($_FILES['import_csv']['name']); - - if(file_exists($target_file)){ - $this->importError = 'Datoteka, ki jo želite naložiti že obstaja!'; - return; - } - - if(move_uploaded_file($_FILES['import_csv']['tmp_name'], $target_file)){ - //echo 'Datoteka '. basename( $_FILES["fileToUpload"]["name"]). ' je bila uspešno uvožena.'; - - $file = fopen($target_file, 'r'); - $first_line = true; - while(!feof($file)){ - - $skip = false; - - // Po novem je delimiter ; - $line = fgetcsv($file, $length=0, $delimiter=";"); - - if(!$first_line){ - - // String z vrednostmi ki jih vstavljamo - po novem dodamo na zacetek fakulteto - $values = '\''.$this->importSettings['fakulteta'].'\','; - $i=0; - foreach($line as $val){ - - // Po novem pobrisemo quote ce so prisotni - $val = str_replace('"', '', $val); - - // Po novem popravimo id predmeta iz 123_1 v 123 - if($i == 0) - $val = substr($val, 0, strpos($val, '_')); - - // Ce je stevilo studentov 0 ne uvazamo - if($i == 7 && $val == '0') - $skip = true; - - $values .= '\''.$val.'\','; - - $i++; - } - $values = substr($values, 0, -1); - - // Se spremenimo encoding zaradi čšž-jev - $values = iconv(mb_detect_encoding($values, mb_detect_order(), true), "UTF-8", $values); - - // Vstavimo vrstico - ce ni st_stud 0 - if(!$skip){ - $sql = sisplet_query("INSERT IGNORE INTO eval_izvajalec".$this->importSettings['test']." - (fakulteta, idp, predmet, idpedagoga, ime_pedagoga, nacin_studija, semester_izv, st_kt, st_stud, nosilec, stopnja, praksa) - VALUES - (".$values.") - ON DUPLICATE KEY UPDATE - st_stud = GREATEST(st_stud, VALUES(nosilec)), - nosilec = GREATEST(nosilec, VALUES(nosilec)) - "); - if (!$sql) $this->importError = mysqli_error($GLOBALS['connect_db']); - } - } - else{ - $first_line = false; - } - } - fclose($file); - - // Na koncu pobrisemo datoteko - if (file_exists($target_file)) { - unlink($target_file); - } - } - else{ - $this->importError = 'Prišlo je do napake pri uvažanju.'; - } - } - - - // Preverimo sistemske spremenljivke ki so nastavljene v anketah (test za admine!) - public function displayTestSurveys(){ - global $lang; - global $site_url; - global $site_path; - - echo '
Testiranje'; - - - // Testiranje baze - pravilnosti v bazi, ujemanje id-jev... - /*echo '
'; - $this->testDatabase(); - echo '
';*/ - - - // Ce imamo nastavljen ank_id in ank_type izpisemo tabelo s podatki - if(isset($_GET['ank_type']) && isset($_GET['ank_id'])){ - - echo ''; - - $ank_id = $_GET['ank_id']; - - if($_GET['ank_type'] == 'anketa_pred'){ - - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - - $sql = sisplet_query("SELECT * FROM eval_data_anketaPred WHERE ank_id='".$ank_id."' ORDER BY student ASC, predmet"); - while($row = mysqli_fetch_array($sql)){ - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - } - } - elseif($_GET['ank_type'] == 'anketa_po'){ - - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - - $sql = sisplet_query("SELECT * FROM eval_data_anketaPo WHERE ank_id='".$ank_id."' ORDER BY student ASC, predmet"); - while($row = mysqli_fetch_array($sql)){ - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - } - } - elseif($_GET['ank_type'] == 'anketa_splosna'){ - - echo ''; - echo ''; - echo ''; - echo ''; - - $sql = sisplet_query("SELECT * FROM eval_data_splosna WHERE ank_id='".$ank_id."' ORDER BY student ASC"); - while($row = mysqli_fetch_array($sql)){ - - echo ''; - echo ''; - echo ''; - echo ''; - } - } - elseif($_GET['ank_type'] == 'anketa_podipl'){ - - echo ''; - echo ''; - echo ''; - echo ''; - - $sql = sisplet_query("SELECT * FROM eval_data_podipl WHERE ank_id='".$ank_id."' ORDER BY student ASC"); - while($row = mysqli_fetch_array($sql)){ - - echo ''; - echo ''; - echo ''; - echo ''; - } - } - elseif($_GET['ank_type'] == 'anketa_podipl2'){ - - echo ''; - echo ''; - echo ''; - echo ''; - - $sql = sisplet_query("SELECT * FROM eval_data_podipl2 WHERE ank_id='".$ank_id."' ORDER BY student ASC"); - while($row = mysqli_fetch_array($sql)){ - - echo ''; - echo ''; - echo ''; - echo ''; - } - } - elseif($_GET['ank_type'] == 'anketa_podipl3'){ - - echo ''; - echo ''; - echo ''; - echo ''; - - $sql = sisplet_query("SELECT * FROM eval_data_podipl3 WHERE ank_id='".$ank_id."' ORDER BY student ASC"); - while($row = mysqli_fetch_array($sql)){ - - echo ''; - echo ''; - echo ''; - echo ''; - } - } - - echo '
PredmetŠtudentID ankete
'.$row['predmet'].''.$row['student'].''.$row['ank_id'].'
PredmetŠtudentID ankete
'.$row['predmet'].''.$row['student'].''.$row['ank_id'].'
ŠtudentID ankete
'.$row['student'].''.$row['ank_id'].'
ŠtudentID ankete
'.$row['student'].''.$row['ank_id'].'
ŠtudentID ankete
'.$row['student'].''.$row['ank_id'].'
ŠtudentID ankete
'.$row['student'].''.$row['ank_id'].'
'; - } - // Drugače izpišemo tabelo z vsemi anketami - else{ - //echo '

Vsaka študentska anketa mora imeti sistemsko spremenljivko "sifstud" (da vemo za katerega študenta gre).

'; - echo '

Fakulteta se identificira na podlagi spremenljivke "siffaks" in ta se ob reševanju ustrezno napolni.

'; - echo '

Na podlagi spremenljivke "sifpredm" se ugotovi ali gre za splošne ankete (navadna oz. podiplomska - ti dve se loči glede na prisotnost spremenljivke "podipl") ali za ankete vezane na predmet (pred in po - ti dve se loči na podlagi pristonosti spremenljivke "sifizv1").

'; - - echo '
'; - - - // Tabela s fakultetami - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - - $sqlF = sisplet_query("SELECT * FROM eval_fakulteta ORDER BY vrstni_red ASC"); - while($rowF = mysqli_fetch_array($sqlF)){ - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - - echo ''; - - echo ''; - - echo ''; - - echo ''; - - echo ''; - - echo ''; - - echo ''; - } - - echo '
IDVrstni redImeKraticaUniverzaAnketa PREDAnketa POSplošna anketaPodiplomska anketaPodiplomska anketa 2Podiplomska anketa 3Aktivna
'.$rowF['id'].''.$rowF['vrstni_red'].''.$rowF['ime'].''.$rowF['kratica'].''.$rowF['univerza'].''; - echo ' '.$rowF['anketa_pred'].' (podatki)'; - echo ''; - echo ' '.$rowF['anketa_po'].' (podatki)'; - echo ''; - echo ' '.$rowF['anketa_splosna'].' (podatki)'; - echo ''; - echo ' '.$rowF['anketa_podipl'].' (podatki)'; - echo ''; - echo ' '.$rowF['anketa_podipl2'].' (podatki)'; - echo ''; - echo ' '.$rowF['anketa_podipl3'].' (podatki)'; - echo ''.$rowF['active'].'
'; - } - - echo '
'; - } - - // Poizvedbe ki testirajo pravilnost uvozenih tabel - function testDatabase(){ - - // Preverjanje za ujemanje imen v programih - /*$sql = sisplet_query("SELECT prog.id AS id, prog.program AS program, pred.id_program AS id_program, pred.program AS program2 - FROM eval_program prog, eval_student pred - WHERE prog.id=pred.id_program AND prog.program!=pred.program - GROUP BY prog.id"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka v ujemanju imena programa (programi in studenti):
'.$row['id'].' ('.$row['program'].' --- '.$row['program2'].')'; - echo '
'; - } - echo '
';*/ - - // Preverjanje za ujemanje programov - $sql = sisplet_query("SELECT pred.id_program, pred.program - FROM eval_student pred - WHERE pred.id_program NOT IN (SELECT id FROM eval_program) - GROUP BY pred.id_program"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka v ujemanju programa (programi in studenti): '.$row['id_program'].' ('.$row['program'].') ni prisoten v tabeli s programi!'; - echo '
'; - } - echo '
'; - - - // Preverjanje za ujemanje imen v predmetih - /*$sql = sisplet_query("SELECT prof.idp AS idp, prof.predmet AS predmet, pred.idp AS idp2, pred.predmet AS predmet2 - FROM eval_izvajalec prof, eval_student pred - WHERE prof.idp=pred.idp AND prof.predmet!=pred.predmet - GROUP BY prof.idp"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka v ujemanju imena predmeta (studenti in profesorji):
'.$row['idp'].' ('.$row['predmet'].' --- '.$row['predmet2'].')'; - echo '
'; - } - echo '
';*/ - - // Preverjanje za ujemanje semestra v predmetih - /*$sql = sisplet_query("SELECT prof.idp AS idp, prof.semester_izv AS semester, pred.idp AS idp2, pred.semester_izv AS semester2 - FROM eval_izvajalec prof, eval_student pred - WHERE prof.idp=pred.pid_program AND prof.semester_izv!=pred.semester_izv - GROUP BY prof.idp"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka v ujemanju semestra predmeta (studenti in profesorji):
'.$row['idp'].' ('.$row['semester'].' --- '.$row['semester2'].')'; - echo '
'; - } - echo '
';*/ - - // Preverjanje za ujemanje predmetov (v studetnih s predmeti in profesorjih) - /*$sql = sisplet_query("SELECT idp, predmet - FROM eval_student - WHERE idp NOT IN (SELECT idp FROM eval_izvajalec) - GROUP BY idp"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka v ujemanju predmeta (profesorji in studenti): '.$row['idp'].' ('.$row['predmet'].') ni prisoten v tabeli s profesorji!'; - echo '
'; - } - echo '
';*/ - - - // Preverjanje da ni duplikatov z istim predmetom in profesorjem - /*$sql = sisplet_query("SELECT idp, predmet, idpedagoga, ime_pedagoga, count(*) - FROM eval_izvajalec - GROUP BY idp, idpedagoga - HAVING count(*) > 1"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka zaradi duplikata predmeta in profesorja: '.$row['idp'].', '.$row['idpedagoga'].' ('.$row['predmet'].', '.$row['ime_pedagoga'].')'; - echo '
'; - } - echo '
';*/ - - // Preverjanje da ni predmetov z istim id-jem in razlicnim imenom - $sql = sisplet_query("SELECT a1.idp AS idp, a1.predmet AS predmet, a2.idp AS idp2, a2.predmet AS predmet2 - FROM eval_izvajalec a1, eval_izvajalec a2 - WHERE a1.idp=a2.idp AND a1.predmet!=a2.predmet - GROUP BY a1.idp, a1.predmet - ORDER BY a1.idp"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka zaradi napacnega imena: '.$row['idp'].' - '.$row['predmet2']; - echo '
'; - } - echo '
'; - - // Preverjanje da ni profesorjev z istim id-jem in razlicnim imenom - $sql = sisplet_query("SELECT a1.idpedagoga AS idpedagoga, a1.ime_pedagoga AS ime_pedagoga, a2.idpedagoga AS idpedagoga2, a2.ime_pedagoga AS ime_pedagoga2 - FROM eval_izvajalec a1, eval_izvajalec a2 - WHERE a1.idpedagoga=a2.idpedagoga AND a1.ime_pedagoga!=a2.ime_pedagoga - GROUP BY a1.idpedagoga, a1.ime_pedagoga - ORDER BY a1.idpedagoga"); - while($row = mysqli_fetch_array($sql)){ - echo 'Napaka zaradi napacnega imena: '.$row['idpedagoga'].' - '.$row['ime_pedagoga2']; - echo '
'; - } - echo '
'; - } - - - // Poizvedbe za posodabljanje eval_izvajalec pred 2. semestrom - function updateSemester(){ - global $site_url; - - echo ''; - echo ''; - - // Spremembe na samo enem polju - echo ''; - echo ''; - //echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - //echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - //echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - - // Sprememba vecih polj pri istih idp, id_pedagoga in izvedba - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - - // Dodajanje in brisanje vnosov pri istih idp, id_pedagoga in izvedba - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo '
VKLJUČNO S 1. SEMESTROM
Spremembe ID-ja predmeta//
Spremembe načina študija//
Spremembe ID-ja pedagoga//
Spremembe imena predmetaUPDATE imena predmeta
Spremembe imena pedagogaUPDATE imena pedagoga
Spremembe semestraUPDATE semestra
Spremembe KTUPDATE KT
Spremembe števila študentovUPDATE števila študentov
Spremembe nosilcaUPDATE nosilca
Spremembe stopnjeUPDATE stopnje
Spremembe prakseUPDATE prakse
 
Spremembe večih poljUPDATE več polj
 
Dodane vrsticeDODAJ nove vrstice
Pobrisane vrsticePOBRIŠI odvečne vrstice
'; - - - // Spremembe 2. in obeh semestrov (BREZ 1. semestra) - DEFAULT - echo ''; - echo ''; - - // Spremembe na samo enem polju - echo ''; - echo ''; - //echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - //echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - //echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - - // Sprememba vecih polj pri istih idp, id_pedagoga in izvedba - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - - // Dodajanje in brisanje vnosov pri istih idp, id_pedagoga in izvedba - echo ''; - echo ''; - echo ''; - echo ''; - - echo ''; - echo ''; - echo ''; - echo ''; - - echo '
BREZ 1. SEMESTRA
Spremembe ID-ja predmeta//
Spremembe načina študija//
Spremembe ID-ja pedagoga//
Spremembe imena predmetaUPDATE imena predmeta
Spremembe imena pedagogaUPDATE imena pedagoga
Spremembe semestraUPDATE semestra
Spremembe KTUPDATE KT
Spremembe števila študentovUPDATE števila študentov
Spremembe nosilcaUPDATE nosilca
Spremembe stopnjeUPDATE stopnje
Spremembe prakseUPDATE prakse
 
Spremembe večih poljUPDATE več polj
 
Dodane vrsticeDODAJ nove vrstice
Pobrisane vrsticePOBRIŠI odvečne vrstice
'; - - echo '
'; - - - // Ali updatamo ali selectamo - $action = (isset($_GET['action']) && $_GET['action']=='2') ? 'update' : 'select'; - - // Katero polje gledamo - $what = (isset($_GET['column'])) ? $_GET['column'] : 'st_stud'; - - - // Ustvarimo BACKUP tabele eval_izvajalec - if($action == 'backup'){ - - $this->createBackupTable('eval_izvajalec'); - } - // Updatanje sprememb vecih polj - elseif($action == 'update'){ - - // Izvedemo spremembe vecih polj - if($what == 'multi'){ - $query = $this->executeMultiChangeUpdate(); - } - // Izvedemo dodajanje novih vrstic - if($what == 'add'){ - $query = $this->executeAddChangeUpdate(); - } - // Izvedemo brisanje odvecnih vrstic - if($what == 'delete'){ - $query = $this->executeDeleteChangeUpdate(); - } - // Izvedemo spremembe na samo 1 polju - else{ - $query = $this->executeSingleChangeUpdate($what); - } - } - // Preverjanje sprememb polj ($action == 'select') - else{ - // Sprememba na vecih poljih - if($what == 'multi'){ - - $query = $this->getMultiChangeSelect(); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - echo '

'; - echo 'Število različnih vrstic: '.mysqli_num_rows($sql).'

'; - - while($row = mysqli_fetch_array($sql)){ - - //var_dump($row); - - echo $row['idp'].' ('.$row['predmet_old'].'), '.$row['idpedagoga'].' ('.$row['ime_pedagoga_old'].'), način študija '.$row['nacin_studija'].', semester '.$row['semester_izv_old'].''; - - echo '
'; - echo 'STARO: predmet: '.$row['predmet_old'].', ime_pedagoga: '.$row['ime_pedagoga_old'].', semester_izv: '.$row['semester_izv_old'].', st_kt: '.$row['st_kt_old'].', st_stud: '.$row['st_stud_old'].', nosilec: '.$row['nosilec_old'].', stopnja: '.$row['stopnja_old'].', praksa: '.$row['praksa_old'].''; - echo '
'; - echo 'NOVO: predmet:  '.$row['predmet_new'].', ime_pedagoga: '.$row['ime_pedagoga_new'].', semester_izv: '.$row['semester_izv_new'].', st_kt: '.$row['st_kt_new'].', st_stud: '.$row['st_stud_new'].', nosilec: '.$row['nosilec_new'].', stopnja: '.$row['stopnja_new'].', praksa: '.$row['praksa_new'].''; - - echo '

'; - } - } - // Na novo dodane vrstice - elseif($what == 'add'){ - - $query = $this->getAddChangeSelect(); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - echo '

'; - echo 'Število različnih vrstic: '.mysqli_num_rows($sql).'

'; - - while($row = mysqli_fetch_array($sql)){ - - //var_dump($row); - - echo $row['idp'].' ('.$row['predmet'].'), '.$row['idpedagoga'].' ('.$row['ime_pedagoga'].'), način študija '.$row['nacin_studija'].', semester '.$row['semester_izv'].''; - - echo '

'; - } - } - // Odvecne vrstice za brisanje - elseif($what == 'delete'){ - - $query = $this->getDeleteChangeSelect(); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - echo '

'; - echo 'Število različnih vrstic: '.mysqli_num_rows($sql).'

'; - - while($row = mysqli_fetch_array($sql)){ - - //var_dump($row); - - echo $row['idp'].' ('.$row['predmet'].'), '.$row['idpedagoga'].' ('.$row['ime_pedagoga'].'), način študija '.$row['nacin_studija'].', semester '.$row['semester_izv'].''; - - echo '

'; - } - } - // Sprememba na enem polju - else{ - - $query = $this->getSingleChangeSelect($what); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - echo '

'; - echo 'Število različnih vrstic: '.mysqli_num_rows($sql).'

'; - - while($row = mysqli_fetch_array($sql)){ - - //var_dump($row); - - echo $row['idp'].' ('.$row['predmet'].'), '.$row['idpedagoga'].' ('.$row['ime_pedagoga'].'), način študija '.$row['nacin_studija'].', semester '.$row['semester_izv'].''; - - echo '
'; - echo 'STARO POLJE: '.$what.': '.$row[$what.'_OLD'].''; - echo '
'; - echo 'NOVO POLJE:  '.$what.': '.$row[$what.'_NEW'].''; - - echo '

'; - } - } - } - } - - // Ustvarimo BACKUP tabele eval_izvajalec - private function createBackupTable($table_name='eval_izvajalec'){ - - $sql = sisplet_query("CREATE TABLE ".$table_name."_bck LIKE ".$table_name.""); - $sql = sisplet_query("INSERT ".$table_name."_bck SELECT * FROM ".$table_name.""); - } - - // Vrnemo query za SELECT enojnih sprememb na eval_izvajalec - private function getSingleChangeSelect($what){ - - $eval_izvajalec = array( - 'idp' => false, - 'predmet' => false, - 'idpedagoga' => false, - 'ime_pedagoga' => false, - 'nacin_studija' => false, - 'semester_izv' => false, - 'st_kt' => false, - 'st_stud' => false, - 'nosilec' => false, - 'stopnja' => false, - 'praksa' => false, - 'fakulteta' => false - ); - - $eval_izvajalec[$what] = true; - - $query = "SELECT a2.*, a2.".$what." ".$what."_NEW, a1.".$what." AS ".$what."_OLD"; - $query .= " FROM eval_izvajalec a1, eval_izvajalec2 a2 WHERE"; - - $i = 0; - foreach($eval_izvajalec as $field => $val){ - - if($i > 0) - $query .= " AND"; - - if($val == true) - $query .= " a1.".$field." != a2.".$field; - else - $query .= " a1.".$field." = a2.".$field; - - $i++; - } - - // Ce gledamo tudi prvi semester ali ne - $semester = (isset($_GET['semester'])) ? $_GET['semester'] : 0; - if($semester != 1 && $what == 'semester_izv') - $query .= " AND (a2.semester_izv='2' OR a2.semester_izv='3')"; - elseif($semester != 1) - $query .= " AND (a1.semester_izv='2' OR a1.semester_izv='3')"; - - $query .= " ORDER BY a1.idp"; - - - return $query; - } - - // Vrnemo query za SELECT vecih sprememb na eval_izvajalec - private function getMultiChangeSelect(){ - - $eval_izvajalec = array('predmet','ime_pedagoga','semester_izv','st_kt','st_stud','nosilec','stopnja','praksa'); - - // Ce gledamo tudi prvi semester ali ne - $semester = (isset($_GET['semester'])) ? $_GET['semester'] : 0; - $semester_query = ""; - if($semester != 1){ - //$semester_query = " AND (a1.semester_izv='2' OR a1.semester_izv='3') AND (a2.semester_izv='2' OR a2.semester_izv='3')"; - $semester_query = " AND (a2.semester_izv='2' OR a2.semester_izv='3' OR a1.semester_izv='1') AND (a1.stopnja=a2.stopnja AND a1.st_kt=a2.st_kt AND a1.praksa=a2.praksa)"; - } - - $query = "SELECT a1.idp, a1.idpedagoga, a1.nacin_studija, - a1.predmet AS predmet_old, - a1.ime_pedagoga AS ime_pedagoga_old, - a1.semester_izv AS semester_izv_old, - a1.st_kt AS st_kt_old, - a1.st_stud AS st_stud_old, - a1.nosilec AS nosilec_old, - a1.stopnja AS stopnja_old, - a1.praksa AS praksa_old, - a2.predmet AS predmet_new, - a2.ime_pedagoga AS ime_pedagoga_new, - a2.semester_izv AS semester_izv_new, - a2.st_kt AS st_kt_new, - a2.st_stud AS st_stud_new, - a2.nosilec AS nosilec_new, - a2.stopnja AS stopnja_new, - a2.praksa AS praksa_new - FROM eval_izvajalec a1, eval_izvajalec2 a2 - WHERE a1.idp=a2.idp AND a1.idpedagoga=a2.idpedagoga AND a1.nacin_studija=a2.nacin_studija ".$semester_query." - AND (a1.predmet != a2.predmet - OR a1.ime_pedagoga != a2.ime_pedagoga - OR a1.semester_izv != a2.semester_izv - OR a1.st_kt != a2.st_kt - OR a1.st_stud != a2.st_stud - OR a1.nosilec != a2.nosilec - OR a1.stopnja != a2.stopnja - OR a1.praksa != a2.praksa)"; - - - // Izkljucimo vse primere kjer je razlicen samo en stolpec - - for($i=0; $igetSingleChangeSelect($what); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - // Loopamo cez vse vrstice ki jih popravljamo in izvedemo update - while($row = mysqli_fetch_array($sql)){ - - $sqlU = sisplet_query("UPDATE eval_izvajalec - SET ".$what." = '".$row[$what.'_NEW']."' - WHERE idp='".$row['idp']."' AND idpedagoga='".$row['idpedagoga']."' AND nacin_studija='".$row['nacin_studija']."'"); - if (!$sqlU) echo mysqli_error($GLOBALS['connect_db']); - - - echo '
POPRAVEK:'; - //var_dump($row); - echo 'OK!

'; - } - } - - // Izvedemo UPDATE vecih sprememb na eval_izvajalec - private function executeMultiChangeUpdate(){ - - $query = $this->getMultiChangeSelect(); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - // Loopamo cez vse vrstice ki jih popravljamo - while($row = mysqli_fetch_array($sql)){ - - $sqlU = sisplet_query("UPDATE eval_izvajalec - SET predmet = '".$row['predmet_new']."', - ime_pedagoga = '".$row['ime_pedagoga_new']."', - semester_izv = '".$row['semester_izv_new']."', - st_kt = '".$row['st_kt_new']."', - st_stud = '".$row['st_stud_new']."', - nosilec = '".$row['nosilec_new']."', - stopnja = '".$row['stopnja_new']."', - praksa = '".$row['praksa_new']."' - WHERE idp = '".$row['idp']."' AND idpedagoga='".$row['idpedagoga']."' AND nacin_studija='".$row['nacin_studija']."'"); - if (!$sqlU) echo mysqli_error($GLOBALS['connect_db']); - - - echo '
POPRAVEK:'; - //var_dump($row); - echo 'OK!

'; - } - } - - // Izvedemo INSERT dodanih vrstic v eval_izvajalec - private function executeAddChangeUpdate(){ - - $query = $this->getAddChangeSelect(); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - // Loopamo cez vse vrstice ki jih popravljamo in izvedemo insert - while($row = mysqli_fetch_array($sql)){ - - $sqlU = sisplet_query("INSERT INTO eval_izvajalec - (idp, predmet, idpedagoga, ime_pedagoga, nacin_studija, semester_izv, st_kt, st_stud, nosilec, stopnja, praksa, fakulteta) - VALUES - ('".$row['idp']."', '".$row['predmet']."', '".$row['idpedagoga']."', '".$row['ime_pedagoga']."', '".$row['nacin_studija']."', '".$row['semester_izv']."', '".$row['st_kt']."', '".$row['st_stud']."', '".$row['nosilec']."', '".$row['stopnja']."', '".$row['praksa']."', '".$row['fakulteta']."') - "); - if (!$sqlU) echo mysqli_error($GLOBALS['connect_db']); - - - echo '
POPRAVEK:'; - //var_dump($row); - echo 'OK!

'; - } - } - - // Izvedemo DELETE pobrisanih vrstic iz eval_izvajalec - private function executeDeleteChangeUpdate(){ - - $query = $this->getDeleteChangeSelect(); - - // Izpisemo rezultat queryja - $sql = sisplet_query($query); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - - // Loopamo cez vse vrstice ki jih popravljamo in izvedemo update - while($row = mysqli_fetch_array($sql)){ - - $sqlU = sisplet_query("DELETE FROM eval_izvajalec - WHERE idp='".$row['idp']."' AND idpedagoga='".$row['idpedagoga']."' AND nacin_studija='".$row['nacin_studija']."' AND fakulteta='".$row['fakulteta']."'"); - if (!$sqlU) echo mysqli_error($GLOBALS['connect_db']); - - echo '
POPRAVEK:'; - //var_dump($row); - echo 'OK!

'; - } - } - - - // Posiljanje pdf-jev z rezultati profesorjem - public function displayEmailing(){ - global $lang; - global $site_url; - - $type = (isset($_POST['type'])) ? $_POST['type'] : 0; - - echo '
Pošiljanje rezultatov'; - - echo '
'; - - echo '
'; - - - echo '
'; - - // Nastavimo tip izpisa - echo '

'; - echo 'Tip pošiljanja: '; - echo ' '; - echo ' '; - echo '

'; - - - // Gumb za posiljanje pdf-jev - echo ''; - - // Gumb za praznjenje tabele - echo ''; - - echo '
'; - - echo '
'; - - - // Izpis trenutne izbrane tabele - echo '
'; - echo 'Navodila za CSV datoteko:
    '; - echo '
  • UTF 8 encoding (če bo ANSI ne bodo delali čšž-ji)!
  • '; - echo '
  • Brez naslovne vrstice
  • '; - echo '
  • Vsi stolpci se morajo ujemati po vrstnem redu in številu
  • '; - echo '
  • Podatki so ločeni z vejico (in ne podpičji!)
  • '; - echo '
'; - echo 'Dodaj podatke (CSV - polja ločena z vejico): '; - echo '
'; - - - // Tabela s predmeti in izvajalci - if($type == 1){ - $sql = sisplet_query("SELECT * FROM eval_pdf_mailer_predmeti ORDER BY ABS(v1) ASC"); - $sqlH = sisplet_query("SHOW COLUMNS FROM eval_pdf_mailer_predmeti"); - } - else{ - $sql = sisplet_query("SELECT * FROM eval_pdf_mailer_izvajalci ORDER BY ABS(v1) ASC"); - $sqlH = sisplet_query("SHOW COLUMNS FROM eval_pdf_mailer_izvajalci"); - } - - echo ''; - - echo ''; - while($rowH = mysqli_fetch_assoc($sqlH)){ - echo ''; - } - echo ''; - - // Naslovna vrstca za emailing predmetov - if($type == 1){ - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - } - // Naslovna vrstca za emailing profesorjem - else{ - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - echo ''; - } - - while($row = mysqli_fetch_assoc($sql)){ - echo ''; - foreach($row as $val){ - echo ''; - } - echo ''; - } - - echo '
'.$rowH['Field'].'
CNT1CNT2ID Profesorja??Predmetv5ImeAttachmentEmailv9v10
CNT1CNT2ID ProfesorjaImeAttachmentEmailv7v8v9v10
'.$val.'
'; - - - echo '
'; - - echo '
'; - } - - function uploadEmailingCSV(){ - global $site_path; - - if(!isset($_POST['type'])){ - echo 'Napaka! Niso nastavljeni vsi parametri uvoza!'; - exit(); - } - - $type = (isset($_POST['type'])) ? $_POST['type'] : 0; - - $target_file = $site_path.TEMP_FOLDER.'/'.basename($_FILES['import_csv']['name']); - - if(file_exists($target_file)){ - echo 'Datoteka, ki jo želite naložiti že obstaja!'; - return; - } - - if(move_uploaded_file($_FILES['import_csv']['tmp_name'], $target_file)){ - - $file = fopen($target_file, 'r'); - while(!feof($file)){ - $line = fgetcsv($file); - - if($type == 1) - $sql_table = 'eval_pdf_mailer_predmeti'; - else - $sql_table = 'eval_pdf_mailer_izvajalci'; - - // Preverimo ce se ujema stevilo stolpcev - $sqlC = sisplet_query("SHOW COLUMNS FROM ".$sql_table.""); - $cols = array(); - while($rowC = mysqli_fetch_assoc($sqlC)){ - $cols[] = $rowC['Field']; - } - - if(count($line) == count($cols)){ - - // String z vrednostmi ki jih vstavljamo - $values = ''; - foreach($line as $val){ - $values .= '\''.$val.'\','; - } - $values = substr($values, 0, -1); - - // String s stolpci v katere vstavljamo vrednosti - $columns = ''; - foreach($cols as $val){ - $columns .= $val.','; - } - $columns = substr($columns, 0, -1); - - // Vstavimo vrstico - $sql = sisplet_query("INSERT INTO ".$sql_table." (".$columns.") VALUES (".$values.")"); - if (!$sql) echo mysqli_error($GLOBALS['connect_db']); - } - else{ - echo 'Število stolpcev se ne ujema!'; - break; - } - } - fclose($file); - - // Na koncu pobrisemo datoteko - if (file_exists($target_file)) { - unlink($target_file); - } - } - else{ - echo 'Prišlo je do napake pri uvažanju.'; - } - } - - - // Polovimo array z header podatki - function getHeaderData() { - - if ($this->_headFileName != null && $this->_headFileName != '') { - $this->_HEADERS = unserialize(file_get_contents($this->_headFileName)); - } - else { - echo 'Error! Empty file name!'; - } - } - - // Napolnimo fakultete - function setFakultete(){ - - $sql = sisplet_query("SELECT * FROM eval_fakulteta ORDER BY vrstni_red ASC"); - while($row = mysqli_fetch_array($sql)){ - $this->fakultete[$row['id']] = $row; - } - } - - // Pridobimo id fakultete glede na id ankete - function getFakultetaId($ank_id){ - - $sql = sisplet_query("SELECT * - FROM eval_fakulteta - WHERE anketa_pred='".$ank_id."' - OR anketa_po='".$ank_id."' - OR anketa_splosna='".$ank_id."' - OR anketa_podipl='".$ank_id."' - OR anketa_podipl2='".$ank_id."' - OR anketa_podipl3='".$ank_id."' - "); - - if(mysqli_num_rows($sql) == 0){ - echo 'Anketa ne pripada nobeni članici!'; - return -1; - } - elseif(mysqli_num_rows($sql) > 1){ - echo 'Anketa pripada večim članicam!'; - return -1; - } - else{ - $row = mysqli_fetch_array($sql); - return $row['id']; - } - } - - - // Ajax klici - public function ajax(){ - global $lang; - global $site_path; - global $global_user_id; - - if (isset ($_POST['anketa'])) - $this->anketa = $_POST['anketa']; - if (isset ($_POST['fakulteta'])) - $this->fakulteta = $_POST['fakulteta']; - - // Nastavimo vse fakultete - $this->setFakultete(); - - // Priprava csv-jev (ZA TESTIRANJE) - if($_GET['a'] == 'execute_test_export'){ - - $this->exportSettings['fakulteta'] = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : -1; - $this->exportSettings['type'] = (isset($_POST['type'])) ? $_POST['type'] : 1; - - $this->exportSettings['anketa_pred'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_pred']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_pred'] : -1; - $this->exportSettings['anketa_po'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_po']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_po'] : -1; - $this->exportSettings['anketa_splosna'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_splosna']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_splosna'] : -1; - $this->exportSettings['anketa_podipl'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_podipl']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_podipl'] : -1; - $this->exportSettings['anketa_podipl2'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_podipl2']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_podipl2'] : -1; - $this->exportSettings['anketa_podipl3'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_podipl3']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_podipl3'] : -1; - - $this->testExport(); - } - - // Priprava izpisov - if($_GET['a'] == 'execute_export'){ - - $this->exportSettings['fakulteta'] = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : -1; - $this->exportSettings['type'] = (isset($_POST['type'])) ? $_POST['type'] : 1; - - $this->exportSettings['anketa_pred'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_pred']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_pred'] : -1; - $this->exportSettings['anketa_po'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_po']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_po'] : -1; - - - // Pozenemo generiranje izpisov - $this->executeExport(); - - // Na novo prikazemo pripravljene izpise - $this->displayExport(); - - echo 'Izpis po '; - if($this->exportSettings['type'] == 1) - echo 'profesorjih '; - if($this->exportSettings['type'] == 2) - echo 'programih '; - if($this->exportSettings['type'] == 3) - echo 'fakulteti '; - echo 'za fakulteto '.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].' pripravljeni!'; - - //var_dump($this->exportSettings); - } - - // Popup pred pripravo izpisov - if($_GET['a'] == 'execute_export_popup'){ - - $this->exportSettings['fakulteta'] = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : -1; - $this->exportSettings['type'] = (isset($_POST['type'])) ? $_POST['type'] : 1; - - $this->exportSettings['anketa_pred'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_pred']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_pred'] : -1; - $this->exportSettings['anketa_po'] = isset($this->fakultete[$this->exportSettings['fakulteta']]['anketa_po']) ? $this->fakultete[$this->exportSettings['fakulteta']]['anketa_po'] : -1; - - - echo '
Priprava PDF izvozov
'; - - - echo '
'; - - // Preverimo ce so izbrane vse vrednosti da lahko pripravimo pdf-je - $allow_export = true; - $error = ''; - if($this->exportSettings['fakulteta'] <= 0){ - $error .= 'Obvezna je izbira fakultete!
'; - $allow_export = false; - } - if($this->exportSettings['anketa_pred'] <= 0){ - $error .= 'Fakulteta nima nastavljene ankete, ki se je izvajala PRED izpitom!
'; - $allow_export = false; - } - if($this->exportSettings['anketa_po'] <= 0){ - $error .= 'Fakulteta nima nastavljene ankete, ki se je izvajala PO izpitu!
'; - $allow_export = false; - } - - // Vse je izbrano ok - lahko se pozene priprava pdf-jev - if($allow_export){ - echo '

Izvedla se bo priprava pdf poročil po '; - - if($this->exportSettings['type'] == 1) - echo 'profesorjih '; - if($this->exportSettings['type'] == 2) - echo 'programih '; - if($this->exportSettings['type'] == 3) - echo 'fakulteti '; - - echo 'za fakulteto '.$this->fakultete[$this->exportSettings['fakulteta']]['kratica'].'.

'; - - SurveyInfo::getInstance()->SurveyInit($this->exportSettings['anketa_pred']); - $row = SurveyInfo::getInstance()->getSurveyRow(); - echo '

Anketa, ki se je izvajala PRED izpitu:
'.$row['naslov'].' (ID '.$this->exportSettings['anketa_pred'].')

'; - - SurveyInfo::getInstance()->SurveyInit($this->exportSettings['anketa_po']); - $row = SurveyInfo::getInstance()->getSurveyRow(); - echo '

Anketa, ki se je izvajala PO izpitu:
'.$row['naslov'].' (ID '.$this->exportSettings['anketa_po'].')

'; - - echo '

Generiranje lahko traja tudi do 20 minut! Ali ste prepričani da želite nadaljevati?

'; - - //var_dump($this->exportSettings); - - echo '
'; - - - // Gumb za izvoz - echo '
'; - echo ''; - - } - else{ - echo '

Generiranje se ne more izvesti, ker niso izbrane vse ustrezne nastavitve.

'; - echo '

'.$error.'

'; - - echo '
'; - - - echo '
'; - } - - // Gumb za preklic - echo ''; - echo '
'; - } - - // Popup pred nalaganjem na GC - if($_GET['a'] == 'execute_GC_popup'){ - - $id = (isset($_POST['id'])) ? $_POST['id'] : -1; - $fakulteta = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : -1; - $type = (isset($_POST['type'])) ? $_POST['type'] : 1; - $date = (isset($_POST['date'])) ? $_POST['date'] : 1; - - - echo '
Nalaganje poročil na GC
'; - - echo '
'; - if($id > 0 && $fakulteta > 0){ - echo '

Izvedlo se bo nalaganje pdf poročil na GC po '; - - if($this->exportSettings['type'] == 1) - echo 'profesorjih '; - if($this->exportSettings['type'] == 2) - echo 'programih '; - if($this->exportSettings['type'] == 3) - echo 'fakulteti '; - - echo 'za fakulteto '.$this->fakultete[$fakulteta]['kratica'].', ki so bila zgenerirana '.date('d.m.Y H:i:s', strtotime($date)).'.

'; - - echo '

Ali ste prepričani da želite nadaljevati?

'; - } - else{ - echo '

Manjkajo parametri dokumenta!

'; - } - echo '
'; - - - echo '
'; - - // Gumb za izvoz - if($id > 0 && $fakulteta > 0){ - echo ''; - } - - // Gumb za preklic - echo ''; - - echo '
'; - } - - // Nalaganje pdf-jev na GC - if($_GET['a'] == 'execute_GC_upload'){ - - include_once ('class.GC.php'); - - $reports_id = (isset($_POST['id'])) ? $_POST['id'] : -1; - - echo 'Ustvarimo GC client...
'; - $GC = new GC(); - echo 'Ustvarjen!

'; - - // Unzipamo poročila in loopamo po njih - echo 'Začnemo z uploadom...
'; - $GC->executeUpload($reports_id); - echo 'Upload končan!

'; - } - - - // Uvoz - prikaz izbrane tabele - if($_GET['a'] == 'show_import'){ - - $this->importSettings['fakulteta'] = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : 0; - $this->importSettings['type'] = (isset($_POST['type'])) ? $_POST['type'] : 1; - $this->importSettings['test'] = (isset($_POST['test'])) ? $_POST['test'] : ''; - - // Na novo prikazemo pripravljene izpise - $this->displayImport($showData=true); - - //var_dump($this->importSettings); - } - - // Popup pred uvozom - if($_GET['a'] == 'execute_import_popup'){ - - $this->importSettings['fakulteta'] = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : -1; - $this->importSettings['type'] = (isset($_POST['type'])) ? $_POST['type'] : 1; - $this->importSettings['test'] = (isset($_POST['test'])) ? $_POST['test'] : ''; - - - echo '
Uvoz podatkov
'; - - - echo '
'; - - echo '

Izvedel se bo uvoz '; - - if($this->importSettings['type'] == 1) - echo 'PROFESORJEV S PREDMETI '; - elseif($this->importSettings['type'] == 2) - echo 'ŠTUDENTOV '; - elseif($this->importSettings['type'] == 3) - echo 'PROGRAMOV '; - elseif($this->importSettings['type'] == 4) - echo 'PODIPLOMSKIH ŠTUDENTOV '; - - echo 'za fakulteto '.$this->fakultete[$this->importSettings['fakulteta']]['kratica'].'.

'; - - //var_dump($this->exportSettings); - - echo '
'; - - - // Gumb za uvoz - echo '
'; - echo ''; - - // Gumb za preklic - echo ''; - echo '
'; - } - - // popup za brisanje izbrane tabele - if($_GET['a'] == 'execute_import_delete_popup'){ - - $this->importSettings['fakulteta'] = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : -1; - $this->importSettings['type'] = (isset($_POST['type'])) ? $_POST['type'] : 1; - $this->importSettings['test'] = (isset($_POST['test'])) ? $_POST['test'] : ''; - - - echo '
Brisanje podatkov
'; - - - echo '
'; - - echo '

Pobrisali boste tabelo '; - - if($this->importSettings['type'] == 1) - echo 'PROFESORJEV S PREDMETI '; - elseif($this->importSettings['type'] == 2) - echo 'ŠTUDENTOV '; - elseif($this->importSettings['type'] == 3) - echo 'PROGRAMOV '; - elseif($this->importSettings['type'] == 4) - echo 'PODIPLOMSKIH ŠTUDENTOV '; - - echo 'za fakulteto '.$this->fakultete[$this->importSettings['fakulteta']]['kratica'].'.

'; - - echo '

Ali ste prepričani da želite nadaljevati?

'; - - //var_dump($this->exportSettings); - - echo '
'; - - - // Gumb za brisanje - echo '
'; - echo ''; - - // Gumb za preklic - echo ''; - echo '
'; - } - - // brisanje izbrane tabele - if($_GET['a'] == 'execute_import_delete'){ - - $this->importSettings['fakulteta'] = (isset($_POST['fakulteta'])) ? $_POST['fakulteta'] : 0; - $this->importSettings['type'] = (isset($_POST['type'])) ? $_POST['type'] : 1; - $this->importSettings['test'] = (isset($_POST['test'])) ? $_POST['test'] : ''; - - - // Brisanje profesorjev s predmeti - if($this->importSettings['type'] == 1){ - $sql = sisplet_query("DELETE FROM eval_izvajalec".$this->importSettings['test']." WHERE fakulteta='".$this->importSettings['fakulteta']."'"); - } - // Brisanje studentov - elseif($this->importSettings['type'] == 2){ - $sql = sisplet_query("DELETE FROM eval_student"); - } - // Brisanje programov - ZAENKRAT NE PUSTIMO - elseif($this->importSettings['type'] == 3 && false){ - $sql = sisplet_query("DELETE FROM eval_program"); - } - // Brisanje podiplomskih studentov - elseif($this->importSettings['type'] == 4){ - $sql = sisplet_query("DELETE FROM eval_student_podipl"); - } - - - // Na novo prikazemo pripravljene izpise - $this->displayImport($showData=true); - } - - - // Praznjenje vseh folderjev userja - pdf (z koncnimi izvozi), temp z zacasnimi datotekami, results z rezultati - samo admini zaradi testiranja - if($_GET['a'] == 'clear_pdf'){ - - $pdfFolder = $site_path . PDF_FOLDER.'/'; - $resultsFolder = $site_path . RESULTS_FOLDER.'/'; - $tempFolder = $site_path . TEMP_FOLDER.'/'; - - // Pobrisemo vsa pdf porocila od userja - $files = glob($pdfFolder.'*'); - foreach($files as $file){ - if(is_file($file) && strpos(basename($file), '_'.$global_user_id.'_') !== false){ - unlink($file); - } - } - - // Pocistimo se bazo - $sql = sisplet_query("DELETE FROM eval_pdf_reports WHERE usr_id='".$global_user_id."'"); - - - // Pocistimo se mozne ostanke zacasnih datotek - $files = glob($resultsFolder.'*'); - foreach($files as $file){ - if(is_file($file)){ - unlink($file); - } - } - $files = glob($resultsFolder.'part-izvajalec-slike/*'); - foreach($files as $file){ - if(is_file($file)){ - unlink($file); - } - } - $files = glob($resultsFolder.'part-predmet-slike/*'); - foreach($files as $file){ - if(is_file($file)){ - unlink($file); - } - } - $files = glob($tempFolder.'*'); - foreach($files as $file){ - if(is_file($file) && basename($file) != 'navodila.xlsx' && basename($file) != 'navodila.csv'){ - unlink($file); - } - } - - // Na novo prikazemo pripravljene izpise - $this->displayExport(); - } - - - // Emailing - prikaz izbrane tabele - if($_GET['a'] == 'show_emailing_data'){ - - // Na novo prikazemo pripravljene izpise - $this->displayEmailing(); - } - - // Emailing - praznjenje izbrane tabele - if($_GET['a'] == 'delete_emailing_data'){ - - $type = (isset($_POST['type'])) ? $_POST['type'] : 0; - - if($type == 1) - $sql_table = 'eval_pdf_mailer_predmeti'; - else - $sql_table = 'eval_pdf_mailer_izvajalci'; - - $sql = sisplet_query("TRUNCATE ".$sql_table.""); - - // Na novo prikazemo pripravljene izpise - $this->displayEmailing(); - } - } -} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/class.GC.php b/admin/survey/modules/Evalvacija/class.GC.php deleted file mode 100644 index a73a1b0eb..000000000 --- a/admin/survey/modules/Evalvacija/class.GC.php +++ /dev/null @@ -1,1801 +0,0 @@ - AS_FAKULTETA_VODSTVO: 78118c23-f23a-4c32-92c7-695075d4e0f3 -* - poročilo za fakulteto 18512cb6-f626-4c04-aab0-9ed2ed54babd -* - poročilo za program 095bd968-d0f3-4f32-956e-79653db35150 -* - poročilo splošnih vidikov študijskega procesa (splošno poročilo) be0bd3f3-3a9b-40cd-a268-10ed3638760c -* - poročilo za doktorski študij (2 pdf izpisa) 01d8a96b-f5a2-481a-8a06-a50cc4a93ac9 -* - poročilo za katedro dc27121d-700d-41ff-8fe4-12d38591bb9a -* - poročilo za habilitacijsko komisijo 666acaf7-bfe8-4992-bb62-dd6611c84f58 -* - poročilo za študijske prakse 38cc004c-faac-4657-b827-b204d22e313e -* - pregledno poročilo fc78571a-6f8b-4b13-a01d-356727d18329 -* - poročilo za predmete 243378fe-531d-4d81-895e-61b1ac31646a -* - excel 600bb813-c8cb-4ca3-bf88-3740ccfa5ab9 -* -* Poročila za izvajalce (zadeva izvajalec) - responsible -> AS_FAKULTETA: -* - poročilo za izvajalca a32856de-b1d2-4dd7-a3fd-ba279d75bdb6 -* - poročilo za trende 1c28d5d5-3537-4d1f-80af-e96f03a903c7 -*/ - -set_time_limit(7200); # 120 minut -ini_set('default_socket_timeout', 1000); - - -define('CERT_FOLDER', "modules/Evalvacija/GC_cert"); - -// Produkcijski streznik -define('GC_URL', "https://gcwserac.uni-lj.si/IntegrationUL/Services/GcService.asmx"); -//define(WSDL_URL, "https://gcwserac.uni-lj.si/IntegrationUL/Services/GcService.asmx?WSDL"); - -// Direktno produkcijski strežnik za testiranje -//define(GC_URL, "https://193.2.64.32"); - -// Testni streznik -//define(GC_URL, "https://gcwserac-test.uni-lj.si/IntegrationUL/Services/GcService.asmx"); -//define(WSDL_URL, "https://gcwserac-test.uni-lj.si/IntegrationUL/Services/GcService.asmx?WSDL"); - - -class GC{ - - var $soapClient; // SOAP client - - var $login = 'AnketniSistem'; // User za login - var $password = 'AnketniSistem'; // Password za login - - //var $year = '2020_2021'; // Letnica za porocilo - var $year = '2021_2022'; // Letnica za porocilo - - var $izvajalec_table = ''; // Katero tabelo izvajalcev uporabljamo - navadna (eval_izvajalec) ali testna (eval_izvajalec2) - - var $pdf_path = ''; // Pot do pdf-jev, ki jih nalagamo - - - function __construct(){ - global $mysql_database_name; - global $site_url; - - // Preverjanje ce je na instalaciji vklopljen modul evalvacije (evalvacija je prisotna samo na anketa.uni-lj.si/student) - if(Common::checkModule('evalvacija') != '1'){ - echo 'Not anketa.uni-lj.si!'; - exit(); - } - - // Nastavimo linke do servica in wsdl-ja - //$wsdl = 'd:/WAMP/www/FDV/admin/survey/modules/Evalvacija/GC_cert/GcService.wsdl'; - //$wsdl = WSDL_URL; - //$wsdl = CERT_FOLDER.'/GcService_TEST.wsdl'; // Testni WSDL - $wsdl = CERT_FOLDER.'/GcService.wsdl'; // Produkcijski WSDL - - $endpoint = GC_URL; - - // Nastavimo certifikat - //$certificate = CERT_FOLDER.'/AnketniSistem.pfx'; - //$certificate = CERT_FOLDER.'/AnketniSistem2.pem'; // Star - potekel 18.9.2016 - //$certificate = CERT_FOLDER.'/AnketniSistemNew.pem'; // Star - veljaven do 20.9.2018 - //$certificate = CERT_FOLDER.'/AnketniSistem-07102021.pem'; // Nov - veljaven do 7.10.2021 - - $certificate = CERT_FOLDER.'/AnketniSistem.pem'; // Nov - veljaven do 27.10.2024 - //$certificate = CERT_FOLDER.'/AnketniSistem222.pem'; // Nov - veljaven do 27.10.2024 - //$certificate = CERT_FOLDER.'/AnketniSistem-27102021xxx.pem'; // Nov - veljaven do 27.10.2024 - - $options = array( - 'location' => $endpoint, - 'local_cert' => $certificate, - //'login' => $this->login, - 'passphrase' => $this->password, - 'trace' => 1, - 'exceptions' => 1, - //'stream_context' => stream_context_create(array('ssl' => array('ciphers'=>'RC4-SHA'))), - //x'cache_wsdl' => WSDL_CACHE_NONE, - //x'connection_timeout' => 1000, - //x'keep_alive' => false, - //'compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP | SOAP_COMPRESSION_DEFLATE, - //'encoding' => 'ISO-8859-1', - 'encoding' => 'UTF-8', - 'soap_version' => SOAP_1_2, - 'ssl_method' => SOAP_SSL_METHOD_TLS - ); - - // Ustvarimo SOAP client - try{ - $this->soapClient = new SoapClient($wsdl, $options); - } - catch(Exception $e){ - var_dump($e); - } - - /*var_dump($this->soapClient->__getFunctions()); - var_dump($this->soapClient->__getTypes()); - - echo '
' . print_r(get_defined_vars(), true) . '
';*/ - } - - - public function displayGC(){ - global $global_user_id; - global $site_url; - - ini_set('xdebug.var_display_max_depth', 15); - ini_set('xdebug.var_display_max_children', 256); - ini_set('xdebug.var_display_max_data', 1024); - //ini_set('default_socket_timeout', 6000); - - echo '
GC'; - - - // Nastavimo fakultete - $fakultete = array(); - $sql = sisplet_query("SELECT * FROM eval_fakulteta ORDER BY vrstni_red ASC"); - while($row = mysqli_fetch_array($sql)){ - $fakultete[$row['id']] = $row; - } - /* - * AG 3000043 Akademija za glasbo (posebni upload) - * - * ALUO 3000042 Akademija za likovno umetnost in oblikovanje - * BF 3000071 Biotehniska fakulteta - * FA 3000025 Fakulteta za arhitekturo - * FDV 3000021 Fakulteta za družbene vede - * FF 3000018 Filozofska fakulteta - * FFA 3000031 Fakulteta za farmacijo - * FGG 3000026 Fakulteta za gradbeništvo in geodezijo - * FMF 3000027 Fakulteta za matematiko in fiziko - * FPP 3000009 Fakulteta za pomorstvo in promet - * FS 3000023 Fakulteta za strojništvo - * FSD 3000006 Fakulteta za socialno delo - * FSP 3000022 Fakulteta za šport - * MF 3000041 Medicinska fakulteta - * NTF 3000029 Naravoslovnotehniška fakulteta - * PEF 3000001 Pedagoska fakulteta - * PF 3000020 Pravna fakulteta - * TEOF 3000050 Teološka fakulteta - * VF 3000037 Veterinarska fakulteta - * ZF 3000011 Zdravstvena fakulteta - * - * FKKT 3000030 Fakulteta za kemijo in kemijsko tehnologijo - * AGRFT 3000044 Akademija za gledališče, radio, film in televizijo - NIMA GC-JA - * FU 3000004 Fakulteta za upravo - NIMA GC-JA - * EF 3000019 Ekonomska fakulteta - * FRI 3000063 Fakulteta za računalništvo in informatiko - * FE 3000064 Fakulteta za elektrotehniko - */ - - $report_type_array = array( - '1_1' => 'izvajalci', - '1_2' => 'trendi', - - '2_1' => 'fakulteta', - '2_2' => 'programi', - '2_3' => 'praksa', - '2_4' => 'splosni vidiki', - '2_5' => 'katedra', - '2_6' => 'excel', - '2_7' => 'doktorska', - - '3_1' => 'habilitacija', - - '4_1' => 'predmeti' - ); - - $reports_id = '27102022'; - $report_type = '4_1'; - $fak_id = '3000001'; - $zip_name = ''; - - // Nastavimo pot do pdf-jev - //$this->pdf_path = 'modules/Evalvacija/pdf/unzipped/'; - //$this->pdf_path = 'modules/Evalvacija/pdf/unzipped/'.$fakultete[$fak_id]['kratica'].'/'; - $this->pdf_path = 'modules/Evalvacija/pdf/unzipped/'.$fakultete[$fak_id]['kratica'].'/'.$report_type_array[$report_type].'/'; - //$this->pdf_path = 'modules/Evalvacija/pdf/unzipped/'.$fakultete[$fak_id]['kratica'].'/povzetki/'; - - echo 'Parametri:'; - echo '
  • ID: '.$reports_id.'
  • '; - echo '
  • Tip poročila: '.$report_type.'
  • '; - echo '
  • ID fakultete: '.$fak_id.'
  • '; - echo '
  • Kratica fakultete: '.$fakultete[$fak_id]['kratica'].'
  • '; - echo '
  • Zip name: '.$zip_name.'
  • '; - echo '
  • Pot do dokumentov: '.$this->pdf_path.'
'; - - - // UPLOAD POROCIL - //$this->executeManualUpload($zip_name, $fak_id, $report_type, $reports_id, $unzip=false); - - // BRANJE POROCIL - IZVAJALEC - //$response = $this->readFolder($zadeva_id='RezultatiAnket_'.$fak_id.'_14', $fakultete[$fak_id]['kratica']); - - // BRANJE POROCIL - FAKULTETA - //$response = $this->readFolder($zadeva_id='RezultatiAnket_'.$fak_id.'_2021_2022', $fakultete[$fak_id]['kratica']); - - // BRANJE POROCIL - PREDMETI - //$response = $this->readFolder($zadeva_id='RezultatiAnket_predmeti_'.$fak_id.'_2021_2022', $fakultete[$fak_id]['kratica']); - - // BRANJE POROCIL - HABILITACIJA - //$response = $this->readFolder($zadeva_id='RezultatiAnket_habilitacija_'.$fak_id.'_2021_2022', $fakultete[$fak_id]['kratica']); - - - echo '
';
-        //var_dump($response);
-        highlight_string("");
-        echo '
'; - - - echo '
'; - } - - - // Izvedemo upload paketa pdf-jev - public function executeManualUpload($zip_name, $fak_id, $report_type, $reports_id, $unzip){ - global $global_user_id; - global $site_url; - - // Razpakiramo zip - if($unzip){ - $zip = new ZipArchive; - $res = $zip->open('modules/Evalvacija/pdf/'.$zip_name.'.zip', ZIPARCHIVE::CREATE); - if ($res === TRUE) { - $zip->extractTo('modules/Evalvacija/pdf/unzipped/'); - $zip->close(); - } - else{ - echo 'Napaka pri unzippu paketa!'; - echo die(); - } - } - - // Dobimo vse podatke o fakulteti - $sqlFakulteta = sisplet_query("SELECT * FROM eval_fakulteta WHERE id='".$fak_id."'"); - $rowFakulteta = mysqli_fetch_array($sqlFakulteta); - - // Kratica fakultete za šport je v GC drugačna (še stara) - $rowFakulteta['kratica'] = ($fak_id == '3000022') ? 'FSP' : $rowFakulteta['kratica']; - - - // Ustvarimo ustrezno zadevo in izvedemo ustrezen upload - // IZVAJALCI - zadeva IZVAJALEC - if($report_type == '1_1'){ - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - $info_array = explode("_", basename($report, ".pdf")); - //var_dump($info_array);die(); - - // Dobimo vse podatke o izvajalcu - $izv_id = $info_array[1]; - - $sqlIzvajalec = sisplet_query("SELECT * FROM eval_izvajalec".$this->izvajalec_table." WHERE idpedagoga='".$fak_id."_".$rowFakulteta['kratica']."_".$izv_id."' AND fakulteta='".$fak_id."'"); - // Za PEF je treba dodat se UL - PEFUL - //$sqlIzvajalec = sisplet_query("SELECT * FROM eval_izvajalec".$this->izvajalec_table." WHERE idpedagoga='".$fak_id."_".$rowFakulteta['kratica']."UL_".$izv_id."' AND fakulteta='".$fak_id."'"); - - if(mysqli_num_rows($sqlIzvajalec) > 0){ - - // Ce gre za povzetek - if($info_array[3] == 'povzetek'){ - $rowIzvajalec = mysqli_fetch_array($sqlIzvajalec); - echo 'Upload POVZETKA za izvajalca - '.$fak_id."_".$rowFakulteta['kratica']."_".$izv_id.' ('.$rowIzvajalec['ime_pedagoga'].')...
'; - //var_dump($rowIzvajalec); - - // Ustvarimo zadevo - $return = $this->createFolderIzvajalec($izv_id, $rowIzvajalec['ime_pedagoga'], $fak_id, $rowFakulteta['kratica']); - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentIzvajalecPovzetek( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$izv_id, - $filename = basename($report), - $filedate = date('d.m.y'), - $izv_id, - $rowIzvajalec['ime_pedagoga'], - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - } - else{ - $rowIzvajalec = mysqli_fetch_array($sqlIzvajalec); - echo 'Upload za izvajalca - '.$fak_id."_".$rowFakulteta['kratica']."_".$izv_id.' ('.$rowIzvajalec['ime_pedagoga'].')...
'; - //var_dump($rowIzvajalec); - - // Ustvarimo zadevo - $return = $this->createFolderIzvajalec($izv_id, $rowIzvajalec['ime_pedagoga'], $fak_id, $rowFakulteta['kratica']); - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentIzvajalec( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$izv_id, - $filename = basename($report), - $filedate = date('d.m.y'), - $izv_id, - $rowIzvajalec['ime_pedagoga'], - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - } - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - error_log('Dokoncan upload za izvajalca - '.$fak_id."_".$rowFakulteta['kratica']."_".$izv_id.' ('.$rowIzvajalec['ime_pedagoga'].')'); - } - else{ - echo 'Napaka! Izvajalca '.$izv_id.' ni v bazi!
'; - error_log('Napaka! Izvajalca '.$izv_id.' ni v bazi!'); - } - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - - echo '

'; - } - } - - // TRENDI - zadeva IZVAJALEC - elseif($report_type == '1_2'){ - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - $info_array = explode("_", basename($report, ".pdf")); - //var_dump($info_array); - - // Dobimo vse podatke o izvajalcu - //$izv_id = $info_array[2]; - $izv_id = $info_array[1]; - $sqlIzvajalec = sisplet_query("SELECT * FROM eval_izvajalec".$this->izvajalec_table." WHERE idpedagoga='".$fak_id."_".$rowFakulteta['kratica']."_".$izv_id."' AND fakulteta='".$fak_id."'"); - // Za PEF je treba dodat se UL - PEFUL - //$sqlIzvajalec = sisplet_query("SELECT * FROM eval_izvajalec".$this->izvajalec_table." WHERE idpedagoga='".$fak_id."_".$rowFakulteta['kratica']."UL_".$izv_id."' AND fakulteta='".$fak_id."'"); - - if(mysqli_num_rows($sqlIzvajalec) > 0){ - - $rowIzvajalec = mysqli_fetch_array($sqlIzvajalec); - echo 'Upload za izvajalca - TRENDI - '.$fak_id."_".$rowFakulteta['kratica']."_".$izv_id.' ('.$rowIzvajalec['ime_pedagoga'].')...
'; - //var_dump($rowIzvajalec); - - // Ustvarimo zadevo - $return = $this->createFolderIzvajalec($izv_id, $rowIzvajalec['ime_pedagoga'], $fak_id, $rowFakulteta['kratica']); - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentTrendi( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$izv_id, - $filename = basename($report), - $filedate = date('d.m.y'), - $izv_id, - $rowIzvajalec['ime_pedagoga'], - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - error_log('Dokoncan upload za izvajalca - TRENDI - '.$fak_id."_".$rowFakulteta['kratica']."_".$izv_id.' ('.$rowIzvajalec['ime_pedagoga'].')'); - } - else{ - echo 'Napaka! Izvajalca '.$izv_id.' ni v bazi!
'; - error_log('Napaka! Izvajalca '.$izv_id.' ni v bazi!'); - } - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - - echo '

'; - } - } - - - // FAKULTETA - zadeva VODSTVO - elseif($report_type == '2_1'){ - - // Ustvarimo zadevo - $return = $this->createFolderVodstvo($fak_id, $rowFakulteta['kratica']); - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentFakulteta( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.Y'), - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - } - } - - // PROGRAMI - zadeva VODSTVO - elseif($report_type == '2_2'){ - - // Ustvarimo zadevo - $return = $this->createFolderVodstvo($fak_id, $rowFakulteta['kratica']); - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - $info_array = explode("_", basename($report, ".pdf")); - //var_dump($info_array); - - // Dobimo vse podatke o izvajalcu - $program_id = $info_array[1]; - $sqlProgram = sisplet_query("SELECT * FROM eval_program WHERE id='".$program_id."'"); - $rowProgram = mysqli_fetch_array($sqlProgram); - - // Zgradimo ime programa (iz stopnje in imena) - da je enolično - if($rowProgram['stopnja'] == '2') - $stopnja = 'druga'; - elseif($rowProgram['stopnja'] == '3') - $stopnja = 'tretja'; - else - $stopnja = 'prva'; - $program_ime = $stopnja.', '.$rowProgram['program']; - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentProgram( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.Y'), - $program_id, - $program_ime, - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - } - } - - // PRAKSA - zadeva VODSTVO - elseif($report_type == '2_3'){ - - // Ustvarimo zadevo - $return = $this->createFolderVodstvo($fak_id, $rowFakulteta['kratica']); - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentPraksa( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.Y'), - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - } - } - - // SPLOSNO ZADOVOLJSTVO - zadeva VODSTVO - elseif($report_type == '2_4'){ - - // Ustvarimo zadevo - $return = $this->createFolderVodstvo($fak_id, $rowFakulteta['kratica']); - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentSplosna( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.Y'), - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - } - } - - // KATEDRA - zadeva VODSTVO - elseif($report_type == '2_5'){ - - // Ustvarimo zadevo - $return = $this->createFolderVodstvo($fak_id, $rowFakulteta['kratica']); - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentKatedra( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.Y'), - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - } - } - - // EXCEL - zadeva VODSTVO - elseif($report_type == '2_6'){ - - // Ustvarimo zadevo - $return = $this->createFolderVodstvo($fak_id, $rowFakulteta['kratica']); - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentExcel( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.Y'), - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - } - } - - // DOKTORSKI ŠTUDIJ - zadeva VODSTVO - elseif($report_type == '2_7'){ - - // Ustvarimo zadevo - $return = $this->createFolderVodstvo($fak_id, $rowFakulteta['kratica']); - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentDoktorska( - $zadeva_id = 'RezultatiAnket_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.Y'), - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - } - } - - - // HABILITACIJSKA POROCILA - zadeva HABILITACIJA - elseif($report_type == '3_1'){ - - $reports = glob($this->pdf_path.'*'); - - // Ali kreiramo folder (dovolj je samo prvic v letu) - $create_folder = true; - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - $info_array = explode("_", basename($report, ".pdf")); - //var_dump($info_array); - - // Dobimo vse podatke o izvajalcu - $izv_id = $info_array[1]; - $sqlIzvajalec = sisplet_query("SELECT * FROM eval_izvajalec".$this->izvajalec_table." WHERE idpedagoga='".$fak_id."_".$rowFakulteta['kratica']."_".$izv_id."' AND fakulteta='".$fak_id."'"); - // Za PEF je treba dodat se UL - PEFUL - //$sqlIzvajalec = sisplet_query("SELECT * FROM eval_izvajalec".$this->izvajalec_table." WHERE idpedagoga='".$fak_id."_".$rowFakulteta['kratica']."UL_".$izv_id."' AND fakulteta='".$fak_id."'"); - - if(mysqli_num_rows($sqlIzvajalec) > 0){ - - $rowIzvajalec = mysqli_fetch_array($sqlIzvajalec); - echo 'Upload za izvajalca - HABILITACIJA - '.$fak_id."_".$rowFakulteta['kratica']."_".$izv_id.' ('.$rowIzvajalec['ime_pedagoga'].')...
'; - //var_dump($rowIzvajalec); - - // Ustvarimo zadevo - if($create_folder) - $return = $this->createFolderHabilitacija($fak_id, $rowFakulteta['kratica']); - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentHabilitacija( - $zadeva_id = 'RezultatiAnket_habilitacija_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.y'), - $izv_id, - $rowIzvajalec['ime_pedagoga'], - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - - if($create_folder) - var_dump($return); - - var_dump($return2); - var_dump($return3); - - error_log('Dokoncan upload za izvajalca - HABILITACIJA - '.$fak_id.'_'.$rowFakulteta['kratica'].'_'.$izv_id.' ('.$rowIzvajalec['ime_pedagoga'].')'); - //sleep(10); - } - else{ - echo 'Napaka! Izvajalca '.$izv_id.' ni v bazi!
'; - error_log('Napaka! Izvajalca '.$izv_id.' ni v bazi!'); - } - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - - echo '

'; - } - } - - - // PREDMETI - zadeva PREDMETI - elseif($report_type == '4_1'){ - - $reports = glob($this->pdf_path.'*'); - - // Loop po vseh poročilih - foreach($reports as $report){ - if(is_file($report)){ - - $info_array = explode("_", basename($report, ".pdf")); - //var_dump($info_array); - - // Dobimo vse podatke o predmetu - $predmet_id = $info_array[1]; - $nacin_studija = $info_array[2]; - $sqlPredmet = sisplet_query("SELECT * FROM eval_izvajalec".$this->izvajalec_table." WHERE idp='".$predmet_id."' AND nacin_studija='".$nacin_studija."' AND fakulteta='".$fak_id."'"); - - if(mysqli_num_rows($sqlPredmet) > 0){ - - $rowPredmet = mysqli_fetch_array($sqlPredmet); - echo 'Upload za predmet - '.$fak_id."_".$rowFakulteta['kratica']."_".$predmet_id.' ('.$rowPredmet['predmet'].' '.($nacin_studija == '2' ? '(izredni)' : '(redni)') .' )...
'; - //var_dump($rowPredmet); - - // Ustvarimo zadevo - $return = $this->createFolderPredmeti($fak_id, $rowFakulteta['kratica']); - - // Ustvarimo dokument in pripnemo porocilo - $return2 = $this->createDocumentPredmet( - $zadeva_id = 'RezultatiAnket_predmeti_'.$fak_id.'_'.$this->year, - $filename = basename($report), - $filedate = date('d.m.y'), - $predmet_id.'_'.$nacin_studija, - $rowPredmet['predmet'], - $nacin_studija, - $fak_id, - $rowFakulteta['kratica'], - $reports_id - ); - - // Zakljucimo dokument - $return3 = $this->closeDocument($return2, $rowFakulteta['kratica']); - var_dump($return); - var_dump($return2); - var_dump($return3); - error_log('Dokoncan upload za predmet - '.$fak_id."_".$rowFakulteta['kratica']."_".$predmet_id.' ('.$rowPredmet['predmet'].' '.($nacin_studija == '2' ? '(izredni)' : '(redni)') .' )'); - } - else{ - echo 'Napaka! Predmeta '.$predmet_id.' ni v bazi!
'; - error_log('Napaka! Predmeta '.$predmet_id.' ni v bazi!'); - } - } - else{ - echo 'Napaka! Poročilo ne obstaja!
'; - } - - echo '

'; - } - } - } - - - // Ustvari zadevo v GC za izvajalca - public function createFolderIzvajalec($izv_id, $izv_ime, $fak_id, $fak_kratica){ - - // Nastavimo podatke - $backendID = 'RezultatiAnket_'.$fak_id.'_'.$izv_id; - $title = 'Rezultati anket - '.$izv_ime; - $description = 'Rezultati anket za izvajalca/nosilca - '.$izv_ime.' - '.$fak_kratica; - - // we set folder data - $folderData = array( - 'Title' => $title, - 'Description' => $description, - 'ClassificationCode' => '724', - 'StorageUntil' => '5', - 'BackendId' => $backendID, - 'Responsible' => 'AS_'.$fak_kratica, - //'BackupResponsibleList' => array('SignirniZnak1', 'SignirniZnak2'), - //'Shourtcut' => 'HitraOznakaZaUvrščanje', - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateFolder(array('folderData'=>$folderData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari zadevo v GC za vodstvo - public function createFolderVodstvo($fak_id, $fak_kratica){ - - // Nastavimo podatke - $backendID = 'RezultatiAnket_'.$fak_id.'_'.$this->year; - $title = 'Rezultati anket za vodstvo – '.str_replace('_', '/', $this->year); - $description = 'Rezultati anket za vodstvo in organe članice - '.$fak_kratica.' - '.str_replace('_', '/', $this->year); - - // we set folder data - $folderData = array( - 'Title' => $title, - 'Description' => $description, - 'ClassificationCode' => '724', - 'StorageUntil' => 'A', - 'BackendId' => $backendID, - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - //'BackupResponsibleList' => array('SignirniZnak1', 'SignirniZnak2'), - //'Shourtcut' => 'HitraOznakaZaUvrščanje', - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateFolder(array('folderData'=>$folderData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari zadevo v GC za vodstvo - habilitacijska poročila - public function createFolderHabilitacija($fak_id, $fak_kratica){ - - // Nastavimo podatke - $backendID = 'RezultatiAnket_habilitacija_'.$fak_id.'_'.$this->year; - $title = 'Rezultati anket – habilitacijska poročila - '.str_replace('_', '/', $this->year); - $description = 'Rezultati anket za habilitacijsko komisijo - '.$fak_kratica.' - '.str_replace('_', '/', $this->year); - - // we set folder data - $folderData = array( - 'Title' => $title, - 'Description' => $description, - 'ClassificationCode' => '724', - 'StorageUntil' => 'A', - 'BackendId' => $backendID, - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - //'BackupResponsibleList' => array('SignirniZnak1', 'SignirniZnak2'), - //'Shourtcut' => 'HitraOznakaZaUvrščanje', - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateFolder(array('folderData'=>$folderData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari zadevo v GC za vodstvo - predmeti - public function createFolderPredmeti($fak_id, $fak_kratica){ - - // Nastavimo podatke - $backendID = 'RezultatiAnket_predmeti_'.$fak_id.'_'.$this->year; - $title = 'Rezultati anket – predmeti - '.str_replace('_', '/', $this->year); - $description = 'Rezultati anket po predmetih - '.$fak_kratica.' - '.str_replace('_', '/', $this->year); - - // we set folder data - $folderData = array( - 'Title' => $title, - 'Description' => $description, - 'ClassificationCode' => '724', - 'StorageUntil' => 'A', - 'BackendId' => $backendID, - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - //'BackupResponsibleList' => array('SignirniZnak1', 'SignirniZnak2'), - //'Shourtcut' => 'HitraOznakaZaUvrščanje', - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateFolder(array('folderData'=>$folderData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za izvajalca - public function createDocumentIzvajalec($zadeva_id, $filename, $filedate, $izv_id, $izv_ime, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - /*ob_clean(); - flush();*/ - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_'.$fak_id.'_'.$izv_id.'_'.$this->year.'_'.$package_id; - $date = date('c', strtotime($filedate)); - $title = 'Rezultati anket – '.$izv_ime.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - //'DocumentType' => '277e8662-5d21-4461-8211-52fb9600b318', - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => 'a32856de-b1d2-4dd7-a3fd-ba279d75bdb6', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica, - //'ReturnWebServiceUrl' => 'http://cypher/IntegrationUL/Services/GcService.asmx', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za izvajalca - public function createDocumentIzvajalecPovzetek($zadeva_id, $filename, $filedate, $izv_id, $izv_ime, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - /*ob_clean(); - flush();*/ - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_'.$fak_id.'_'.$izv_id.'_povzetek_'.$this->year.'_'.$package_id; - $date = date('c', strtotime($filedate)); - $title = 'Rezultati anket – '.$izv_ime.' - povzetek – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - //'DocumentType' => '277e8662-5d21-4461-8211-52fb9600b318', - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => 'a32856de-b1d2-4dd7-a3fd-ba279d75bdb6', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica, - //'ReturnWebServiceUrl' => 'http://cypher/IntegrationUL/Services/GcService.asmx', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za izvajalca (TRENDI) - public function createDocumentTrendi($zadeva_id, $filename, $filedate, $izv_id, $izv_ime, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - /*ob_clean(); - flush();*/ - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_trendi_'.$fak_id.'_'.$izv_id.'_'.$this->year.'_'.$package_id; - $date = date('c', strtotime($filedate)); - $title = 'Rezultati anket – trendi - '.$izv_ime.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - //'DocumentType' => '277e8662-5d21-4461-8211-52fb9600b318', - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '1c28d5d5-3537-4d1f-80af-e96f03a903c7', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica, - //'ReturnWebServiceUrl' => 'http://cypher/IntegrationUL/Services/GcService.asmx', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za program - public function createDocumentProgram($zadeva_id, $filename, $filedate, $program_id, $program_ime, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - /*ob_clean(); - flush();*/ - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_'.$program_id.'_'.$this->year.'_'.$package_id; - date('c', strtotime($filedate)); - $title = 'Rezultati anket - '.$program_ime.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - // document attachments - /*'Attachments' => array( - array( - 'Content' => fread($file, filesize($this->pdf_path.$filename)), - 'FileName' => $filename - ) - ),*/ - //'BackendId' => substr($filename, 0, -4).'_'.$filedate, - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - //'DocumentType' => '277e8662-5d21-4461-8211-52fb9600b318', - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '095bd968-d0f3-4f32-956e-79653db35150', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - //'ReturnWebServiceUrl' => 'http://cypher/IntegrationUL/Services/GcService.asmx', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za fakulteto - public function createDocumentFakulteta($zadeva_id, $filename, $filedate, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - /*ob_clean(); - flush();*/ - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_'.$fak_id.'_'.$this->year.'_'.$package_id; - date('c', strtotime($filedate)); - $title = 'Rezultati anket – '.$fak_kratica.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - // document attachments - /*'Attachments' => array( - array( - 'Content' => fread($file, filesize($this->pdf_path.$filename)), - 'FileName' => $filename - ) - ),*/ - //'BackendId' => substr($filename, 0, -4).'_'.$filedate, - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - //'DocumentType' => '277e8662-5d21-4461-8211-52fb9600b318', - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '18512cb6-f626-4c04-aab0-9ed2ed54babd', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - //'ReturnWebServiceUrl' => 'http://cypher/IntegrationUL/Services/GcService.asmx', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - //var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za prakso - public function createDocumentPraksa($zadeva_id, $filename, $filedate, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - /*ob_clean(); - flush();*/ - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_praksa_'.$fak_id.'_'.$this->year.'_'.$package_id; - date('c', strtotime($filedate)); - $title = 'Rezultati anket – praksa - '.$fak_kratica.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '38cc004c-faac-4657-b827-b204d22e313e', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - //var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za splosno anketo o zadovoljstvu - public function createDocumentSplosna($zadeva_id, $filename, $filedate, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,8192); - } - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_splosnoZadovoljstvo_'.$fak_id.'_'.$this->year.'_'.$package_id; - date('c', strtotime($filedate)); - $title = 'Rezultati anket – splošno zadovoljstvo - '.$fak_kratica.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => 'be0bd3f3-3a9b-40cd-a268-10ed3638760c', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - //var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za katedro - public function createDocumentKatedra($zadeva_id, $filename, $filedate, $fak_id, $fak_kratica, $package_id){ - - // Nastavimo ime in kratico katedre - $ime_katedre = ''; - $kratica_katedre = ''; - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,8192); - } - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_katedra_'.$kratica_katedre.'_'.$this->year.'_'.$package_id; - date('c', strtotime($filedate)); - $title = 'Rezultati anket – katedra - '.$ime_katedre.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => 'dc27121d-700d-41ff-8fe4-12d38591bb9a', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - // Ce nismo nastavili imena in kratice katedre ne pustimo nalaganja - if($ime_katedre == '' || $kratica_katedre == ''){ - echo 'Napaka! Katedra ni nastavljena!'; - } - else{ - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - //var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen xls za anketo pred in po - public function createDocumentExcel($zadeva_id, $filename, $filedate, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_excel_'.$fak_id.'_'.$this->year.'_'.$package_id; - date('c', strtotime($filedate)); - $title = 'Rezultati anket - excel rezultati - '.$fak_kratica.' - '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '600bb813-c8cb-4ca3-bf88-3740ccfa5ab9', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - //var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za doktorsko anketo - public function createDocumentDoktorska($zadeva_id, $filename, $filedate, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,8192); - } - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_doktorskiStudij_'.$fak_id.'_'.$this->year.'_'.$package_id; - date('c', strtotime($filedate)); - $title = 'Rezultati anket – doktorski študij - '.$fak_kratica.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '01d8a96b-f5a2-481a-8a06-a50cc4a93ac9', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - //var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za izvajalca (Habilitacija) - public function createDocumentHabilitacija($zadeva_id, $filename, $filedate, $izv_id, $izv_ime, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_habilitacija_'.$fak_id.'_'.$izv_id.'_'.$this->year.'_'.$package_id; - $date = date('c', strtotime($filedate)); - $title = 'Rezultati anket – habilitacijsko poročilo - '.$izv_ime.' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - //'DocumentType' => '277e8662-5d21-4461-8211-52fb9600b318', - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '666acaf7-bfe8-4992-bb62-dd6611c84f58', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - //'ReturnWebServiceUrl' => 'http://cypher/IntegrationUL/Services/GcService.asmx', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - - // Ustvari nov dokument v zadevi in pripne ustrezen pdf za predmet - public function createDocumentPredmet($zadeva_id, $filename, $filedate, $predmet_id, $predmet_ime, $nacin_studija, $fak_id, $fak_kratica, $package_id){ - - // Pripravimo pdf za upload - $fh = fopen($this->pdf_path.$filename, "r"); - $str = ''; - while (!feof($fh)){ - $str .= fread($fh,1024); - } - fclose($fh); - $file = $str; - - // Nastavimo podatke - $backendID = 'RezultatiAnket_predmet_'.$fak_id.'_'.$predmet_id.'_'.$this->year.'_'.$package_id; - $date = date('c', strtotime($filedate)); - $title = 'Rezultati anket – predmet - '.$predmet_ime.' '.($nacin_studija == '2' ? '(izredni)' : '(redni)') .' – '.str_replace('_', '/', $this->year); - - $documentData = array( - 'GcId' => 0, - 'BackendId' => $backendID, - 'DocumentDate' => $date, - 'DocumentTitle' => $title, - //'DocumentType' => '277e8662-5d21-4461-8211-52fb9600b318', - 'DocumentType' => '67fb602c-da50-448f-92bc-43d326c1817d', - 'DocumentSubType' => '243378fe-531d-4d81-895e-61b1ac31646a', - 'MainContent' => array( - 'Content' => $file, - 'FileName' => $filename - ), - 'Responsible' => 'AS_'.$fak_kratica.'_VODSTVO', - //'ReturnWebServiceUrl' => 'http://cypher/IntegrationUL/Services/GcService.asmx', - 'SubjectId' => '', - 'FolderId' => array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId' => $zadeva_id, - 'SystemId' => '1ka' - ) - ), - 'OrganizationId' => $fak_kratica - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->CreateDocument(array('documentData'=>$documentData, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - //echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $backendID; - } - - - // Zakljuci dokument po ustvarjanju - public function closeDocument($document_id, $fak_kratica){ - - $documentAction = array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId'=>$document_id, - 'SystemId'=>'1ka' - ), - 'ActionList' => array('http://www.marg.si/xmlns/BusinessConnect/doc/eArhiv/Osnutek/action/VPripraviZakljuci') - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->DoActionOnDocument(array('doActionOnDocumentData'=>$documentAction, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $result; - } - - - // Prebere seznam vseh dokumentov v zadevi - public function readFolder($zadeva_id, $fak_kratica){ - - $folderRequest = array( - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId'=>$zadeva_id, - 'SystemId'=>'1ka' - ) - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->ReadFolder(array('requestFolderData'=>$folderRequest, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $result; - } - - - // Pobrise dokument iz zadeve - V DELU - public function deleteFolder($doc_id, $fak_kratica){ - - $documentRequest = array( - 'ActionList' => array( - 'http://www.marg.si/xmlns/BusinessConnect/doc/eArhiv/Osnutek/action/ZakljucenReaktiviraj', - 'http://www.marg.si/xmlns/BusinessConnect/doc/eArhiv/Osnutek/action/Delete' - ), - 'GcId' => null, - //'ClassificationId' => '', - 'OrganizationId' => $fak_kratica, - 'BackendIdData' => array( - 'ItemId'=>$doc_id, - 'SystemId'=>'1ka' - ) - ); - - // we set system data - $sysData = array( - 'SystemId' => '1ka' - ); - - - try{ - $result = $this->soapClient->DoActionOnDocument(array('doActionOnDocumentData'=>$documentRequest, 'backendSystemData'=>$sysData)); - } - catch(Exception $e){ - var_dump($e); - echo '
' . print_r(get_defined_vars(), true) . '
'; - } - - return $result; - } -} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/evalvacija.js b/admin/survey/modules/Evalvacija/evalvacija.js deleted file mode 100644 index 8311f1aff..000000000 --- a/admin/survey/modules/Evalvacija/evalvacija.js +++ /dev/null @@ -1,120 +0,0 @@ -function executeReportPopup(){ - - var fakulteta = $('#export_fakulteta').val(); - var type = $('input[name=export_type]:checked').val(); - - $('#fade').fadeTo('slow', 1); - - $('#ul_exports_popup').show().load('ajax.php?t=evalvacija&a=execute_export_popup', {type:type, fakulteta:fakulteta}); -} -function closeReportPopup(){ - - $('#ul_exports_popup').hide(); - $('#fade').fadeOut('slow'); -} -function executeReport(){ - - var fakulteta = $('#export_fakulteta').val(); - var type = $('input[name=export_type]:checked').val(); - - $('#ul_exports_popup').hide(); - $('#fade').fadeOut('slow'); - - $('#ul_exports').load('ajax.php?t=evalvacija&a=execute_export', {type:type, fakulteta:fakulteta}); -} - -function executeTestExport(){ - - var fakulteta = $('#export_fakulteta').val(); - var type = $('input[name=export_type]:checked').val(); - - $.post('ajax.php?t=evalvacija&a=execute_test_export', {type:type, fakulteta:fakulteta}, function(response){ - if(response != ''){ - window.location.href = response; - } - }); -} - -function executeUploadGCPopup(id, fakulteta, type, date){ - - $('#fade').fadeTo('slow', 1); - - $('#ul_exports_popup').show().load('ajax.php?t=evalvacija&a=execute_GC_popup', {id:id, type:type, fakulteta:fakulteta, date:date}); -} -function executeUploadGC(id){ - - $('#ul_exports_popup').hide(); - $('#fade').fadeOut('slow'); - - $('#ul_exports').load('ajax.php?t=evalvacija&a=execute_GC_upload', {id:id}); -} - - -function showImport(){ - - var fakulteta = $('#import_fakulteta').val(); - var type = $('input[name=import_type]:checked').val(); - var test = $('input[name=import_test]:checked').val(); - - $('#ul_imports').load('ajax.php?t=evalvacija&a=show_import', {type:type, fakulteta:fakulteta, test:test}); -} - -function executeImportPopup(){ - - var fakulteta = $('#import_fakulteta').val(); - var type = $('input[name=import_type]:checked').val(); - var test = $('input[name=import_test]:checked').val(); - - $('#fade').fadeTo('slow', 1); - - $('#ul_imports_popup').show().load('ajax.php?t=evalvacija&a=execute_import_popup', {type:type, fakulteta:fakulteta, test:test}); -} - -function closeImportPopup(){ - - $('#ul_imports_popup').hide(); - $('#fade').fadeOut('slow'); -} - -function executeImportDeletePopup(){ - - var fakulteta = $('#import_fakulteta').val(); - var type = $('input[name=import_type]:checked').val(); - var test = $('input[name=import_test]:checked').val(); - - $('#fade').fadeTo('slow', 1); - - $('#ul_imports_popup').show().load('ajax.php?t=evalvacija&a=execute_import_delete_popup', {type:type, fakulteta:fakulteta, test:test}); -} - -function executeImportDelete(){ - - var fakulteta = $('#import_fakulteta').val(); - var type = $('input[name=import_type]:checked').val(); - var test = $('input[name=import_test]:checked').val(); - - $('#ul_imports_popup').hide(); - $('#fade').fadeOut('slow'); - - $('#ul_imports').load('ajax.php?t=evalvacija&a=execute_import_delete', {type:type, fakulteta:fakulteta, test:test}); -} - - -function clearPdf(){ - - $('#ul_exports').load('ajax.php?t=evalvacija&a=clear_pdf', {anketa:srv_meta_anketa_id}); -} - -function showEmailingData(){ - - var type = $('input[name=type]:checked').val(); - - $('#ul_emailing').load('ajax.php?t=evalvacija&a=show_emailing_data', {type:type}); -} - -function deleteEmailingData(){ - - var type = $('input[name=type]:checked').val(); - - $('#ul_emailing').load('ajax.php?t=evalvacija&a=delete_emailing_data', {type:type}); -} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/latexkosi/a-glava-katedra.tex b/admin/survey/modules/Evalvacija/latexkosi/a-glava-katedra.tex deleted file mode 100644 index bc2c94d9a..000000000 --- a/admin/survey/modules/Evalvacija/latexkosi/a-glava-katedra.tex +++ /dev/null @@ -1,103 +0,0 @@ -\documentclass[11pt,a4paper]{report} -\usepackage[cm]{fullpage} -\setlength{\headheight}{12pt} -\usepackage[cp1250]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{../latexkosi/sloven2e} -\usepackage{amsmath} -\usepackage{soul} -\usepackage{textcomp} - -\usepackage{graphicx} -\usepackage{xcolor} -\definecolor{firebrick3}{HTML}{cd2626} -\definecolor{dodgerblue3}{HTML}{1874cd} -\definecolor{BrickRed}{HTML}{B6321C} -\definecolor{OrangeRed}{HTML}{F58137} -\definecolor{PineGreen}{HTML}{008B72} -\definecolor{Orange}{HTML}{F58137} -\definecolor{Green}{HTML}{00A64F} -\definecolor{Atlantis}{HTML}{8CBA2E} -\definecolor{Blue Stone}{HTML}{006666} -\definecolor{Black}{HTML}{000000} -\definecolor{Red}{HTML}{FF0006} -\definecolor{Chateau Green}{HTML}{36BF4B} -\definecolor{Gray}{HTML}{AAAAAA} -\definecolor{Dusty Gray}{HTML}{999999} -\definecolor{Dove Gray}{HTML}{696969} -\usepackage{times} -\usepackage{float} -\usepackage{multirow} - -\usepackage{setspace} -\setcounter{secnumdepth}{3} -\renewcommand\thesubsubsection{\thesection.\arabic{subsubsection}} -\renewcommand\thesubsection{\thesection.\arabic{subsection}} -\renewcommand\thesection{\thechapter.\arabic{section}} -\usepackage{chngcntr} -\counterwithin*{section}{chapter} -\counterwithin*{subsubsection}{section} - -\usepackage{titlesec} -\titleformat{\chapter}[hang]{\LARGE\bfseries}{\thechapter{. }}{12pt}{\LARGE\bfseries} -\titlespacing*{\chapter}{0pt}{-13pt}{10pt} -\usepackage{longtable} -\usepackage{setspace} -\usepackage{array,calc} -\newcolumntype{A}[1]{>{\begin{minipage}{#1}\vspace{\tabcolsep}}l<{\vspace{\tabcolsep}\end{minipage}}} -\newenvironment{Complement}[1][0.75cm]{\hspace{#1}\begin{minipage}{\linewidth-#1}\hspace{-#1}\ignorespaces}{\end{minipage}} - - - -\usepackage{fancyhdr} -\pagestyle{fancyplain} -\renewcommand{\chaptermark}[1]{\markboth{#1}{}} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{!naslov! 2014/2015} \hfill {{\nouppercase{\leftmark}}}} -\fancyfoot[L]{\small{Komentarji in vpra\v{s}anja na \url{https://1ka.si/KUL}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\setcounter{tocdepth}{1} -\usepackage{hyperref} -\hypersetup{ - colorlinks=true, - linkcolor=black, - urlcolor=blue, - pdfstartview={XYZ null null 1}, - pdftitle={Evalvacijsko poro\v{c}ilo: !naslov!} -} -\urlstyle{same} - -\setlength{\parindent}{0cm} -\LTcapwidth=\textwidth %to keep longtable captions in one row - - - -\begin{document} - \begin{titlepage} - \begin{center} - \includegraphics[width=7.5cm]{../latexkosi/logo/!logo!.png}~\\[4cm] - \textsc{\LARGE \v{S}tudentske ankete Univerze v Ljubljani \\[1em] Evalvacijsko Poro\v{c}ilo}\\[0.70cm] - \textup{\LARGE \textbf{ \color{Black} !ime.fak!}}\\[0.25cm] - \hfill%prostorZaStopnjoStudija - \\[0.25cm] - {\doublespacing{\huge \bfseries { \color{Red} !naslov!}}\\[0.5cm]} - \hfill%prostorZaIzvedbo - \\[1.5cm] - {\Large !leto!} - \\[2cm] - \textup{ \Large Metodolo\v{s}ke komentarje sporo\v{c}ite na} - \\[0.70cm] - {\Large \url{https://1ka.si/KUL}}\\[0.25cm] - \vfill - {\Large Ljubljana, \today} - \end{center} - \end{titlepage} -\tableofcontents diff --git a/admin/survey/modules/Evalvacija/latexkosi/a-glava-program.tex b/admin/survey/modules/Evalvacija/latexkosi/a-glava-program.tex deleted file mode 100644 index b21a98eb1..000000000 --- a/admin/survey/modules/Evalvacija/latexkosi/a-glava-program.tex +++ /dev/null @@ -1,100 +0,0 @@ -\documentclass[11pt,a4paper]{report} -\usepackage[cm]{fullpage} -\setlength{\headheight}{12pt} -\usepackage[cp1250]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{../latexkosi/sloven2e} -\usepackage{amsmath} -\usepackage{soul} -\usepackage{textcomp} - -\usepackage{graphicx} -\usepackage{xcolor} -\definecolor{firebrick3}{HTML}{cd2626} -\definecolor{dodgerblue3}{HTML}{1874cd} -\definecolor{BrickRed}{HTML}{B6321C} -\definecolor{OrangeRed}{HTML}{F58137} -\definecolor{PineGreen}{HTML}{008B72} -\definecolor{Orange}{HTML}{F58137} -\definecolor{Green}{HTML}{00A64F} -\definecolor{Atlantis}{HTML}{8CBA2E} -\definecolor{Blue Stone}{HTML}{006666} -\definecolor{Black}{HTML}{000000} -\definecolor{Red}{HTML}{FF0006} -\definecolor{Chateau Green}{HTML}{36BF4B} -\definecolor{Gray}{HTML}{AAAAAA} -\definecolor{Dusty Gray}{HTML}{999999} -\definecolor{Dove Gray}{HTML}{696969} -\usepackage{times} -\usepackage{float} -\usepackage{multirow} - -\usepackage{setspace} -\setcounter{secnumdepth}{3} -\renewcommand\thesubsubsection{\thesection.\arabic{subsubsection}} -\renewcommand\thesubsection{\thesection.\arabic{subsection}} -\renewcommand\thesection{\thechapter.\arabic{section}} -\usepackage{chngcntr} -\counterwithin*{section}{chapter} -\counterwithin*{subsubsection}{section} - -\usepackage{titlesec} -\titleformat{\chapter}[hang]{\LARGE\bfseries}{\thechapter{. }}{12pt}{\LARGE\bfseries} -\titlespacing*{\chapter}{0pt}{-13pt}{10pt} -\usepackage{longtable} -\usepackage{setspace} -\usepackage{array,calc} -\newcolumntype{A}[1]{>{\begin{minipage}{#1}\vspace{\tabcolsep}}l<{\vspace{\tabcolsep}\end{minipage}}} -\newenvironment{Complement}[1][0.75cm]{\hspace{#1}\begin{minipage}{\linewidth-#1}\hspace{-#1}\ignorespaces}{\end{minipage}} - - - -\usepackage{fancyhdr} -\pagestyle{fancyplain} -\renewcommand{\chaptermark}[1]{\markboth{#1}{}} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{!naslov! 2014/2015} \hfill {{\nouppercase{\leftmark}}}} -\fancyfoot[L]{\small{Komentarji in vpra\v{s}anja na \url{https://1ka.si/KUL}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\setcounter{tocdepth}{1} -\usepackage{hyperref} -\hypersetup{ - colorlinks=true, - linkcolor=black, - urlcolor=blue, - pdfstartview={XYZ null null 1}, - pdftitle={Evalvacijsko poro\v{c}ilo: !naslov!} -} -\urlstyle{same} - -\setlength{\parindent}{0cm} -\LTcapwidth=\textwidth %to keep longtable captions in one row - - - -\begin{document} - \begin{titlepage} - \begin{center} - \includegraphics[width=7.5cm]{../latexkosi/logo/!logo!.png}~\\[4cm] - \textsc{\LARGE \v{S}tudentske ankete Univerze v Ljubljani \\[1em] Evalvacijsko Poro\v{c}ilo za programe I in II stopnje}\\[0.50cm] - {\LARGE \bfseries { \color{Black} !naslov! \\[1cm] \huge{ \color{Red} Dodiplomski in podiplomski \v{S}tudij}}\\[0.25cm]} - \hfill%prostorZaIzvedbo - \\[1.5cm] - {\Large !leto!} - \\[2cm] - \textup{ \Large Metodolo\v{s}ke komentarje sporo\v{c}ite na} - \\[0.70cm] - {\Large \url{https://1ka.si/KUL}}\\[0.25cm] - \vfill - {\Large Ljubljana, \today} - \end{center} - \end{titlepage} -\tableofcontents diff --git a/admin/survey/modules/Evalvacija/latexkosi/a-glava.tex b/admin/survey/modules/Evalvacija/latexkosi/a-glava.tex deleted file mode 100644 index 2d236e60d..000000000 --- a/admin/survey/modules/Evalvacija/latexkosi/a-glava.tex +++ /dev/null @@ -1,105 +0,0 @@ -\documentclass[11pt,a4paper]{report} -\usepackage[cm]{fullpage} -\setlength{\headheight}{12pt} -\usepackage[cp1250]{inputenc} -\usepackage[T1]{fontenc} -\usepackage{../latexkosi/sloven2e} -\usepackage{amsmath} -\usepackage{soul} -\usepackage{textcomp} - -\usepackage{graphicx} -\usepackage{xcolor} -\definecolor{firebrick3}{HTML}{cd2626} -\definecolor{dodgerblue3}{HTML}{1874cd} -\definecolor{BrickRed}{HTML}{B6321C} -\definecolor{OrangeRed}{HTML}{F58137} -\definecolor{PineGreen}{HTML}{008B72} -\definecolor{Orange}{HTML}{F58137} -\definecolor{Green}{HTML}{00A64F} -\definecolor{Atlantis}{HTML}{8CBA2E} -\definecolor{Blue Stone}{HTML}{006666} -\definecolor{Black}{HTML}{000000} -\definecolor{Red}{HTML}{FF0006} -\definecolor{Chateau Green}{HTML}{36BF4B} -\definecolor{Gray}{HTML}{AAAAAA} -\definecolor{Dusty Gray}{HTML}{999999} -\definecolor{Dove Gray}{HTML}{696969} -\usepackage{times} -\usepackage{float} -\usepackage{multirow} -\usepackage{tikz} -\usepackage[thmmarks]{ntheorem} -\usepackage{setspace} -\setcounter{secnumdepth}{3} -\renewcommand\thesubsubsection{\thesection.\arabic{subsubsection}} -\renewcommand\thesubsection{\thesection.\arabic{subsection}} -\renewcommand\thesection{\thechapter.\arabic{section}} -\usepackage{chngcntr} -\counterwithin*{section}{chapter} -\counterwithin*{subsubsection}{section} - -\usepackage{titlesec} -\titleformat{\chapter}[hang]{\LARGE\bfseries}{\thechapter{. }}{12pt}{\LARGE\bfseries} -\titlespacing*{\chapter}{0pt}{-13pt}{10pt} -\titleformat*{\subsubsection}{\Large\bfseries} -\usepackage{longtable} -\usepackage{setspace} -\usepackage{array,calc} -\newcolumntype{A}[1]{>{\begin{minipage}{#1}\vspace{\tabcolsep}}l<{\vspace{\tabcolsep}\end{minipage}}} -\newenvironment{Complement}[1][0.75cm]{\hspace{#1}\begin{minipage}{\linewidth-#1}\hspace{-#1}\ignorespaces}{\end{minipage}} - - - -\usepackage{fancyhdr} -\pagestyle{fancyplain} -\renewcommand{\chaptermark}[1]{\markboth{#1}{}} -\fancyhf{} -\renewcommand{\headrulewidth}{0.4pt} -\renewcommand{\footrulewidth}{0.4pt} -\fancyhead[L]{\small{Izvajalec: !naslov!} \hfill {{\nouppercase{\leftmark}}}} -\fancyfoot[L]{\small{Komentarji in pripombe - \url{https://1ka.si/KUL}}} -\fancyfoot[R]{\small{Stran \thepage}} -\headsep 20pt -\fancypagestyle{plain}{ - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} -} - -\setcounter{tocdepth}{1} -\usepackage{hyperref} -\hypersetup{ - colorlinks=true, - linkcolor=black, - urlcolor=blue, - pdfstartview={XYZ null null 1}, - pdftitle={Evalvacijsko poro\v{c}ilo: !naslov!} -} -\urlstyle{same} - -\setlength{\parindent}{0cm} -\LTcapwidth=\textwidth %to keep longtable captions in one row - - - -\begin{document} - \begin{titlepage} - \begin{center} - \includegraphics[width=7.5cm]{../latexkosi/logo/!logo!.png}~\\[4cm] - \textsc{\LARGE \v{S}tudentske ankete Univerze v Ljubljani \\[1em] Evalvacijsko Poro\v{c}ilo za programe I in II stopnje }\\[0.80cm] - \textup{\LARGE \textbf{ \color{black} !ime.fak!}}\\[0.25cm] - \hfill%prostorZaStopnjoStudija - \\[0.25cm] - {\doublespacing{\huge \bfseries \color{Red} !naslov!}\\[0.5cm]} - \hfill%prostorZaIzvedbo - \\[1.5cm] - {\Large !leto!} - \\[2cm] - \textup{\Large Metodolo\v{s}ke komentarje sporo\v{c}ite na} - \\[0.70cm] - {\Large \url{https://1ka.si/KUL}}\\[0.25cm] - \vfill - {\Large Ljubljana, \today} - \end{center} - \end{titlepage} -\tableofcontents diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo.pdf b/admin/survey/modules/Evalvacija/latexkosi/logo/logo.pdf deleted file mode 100644 index 67325cade..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo.pdf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo.png deleted file mode 100644 index 18b8aa1a2..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_AG.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_AG.png deleted file mode 100644 index 08167f2a1..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_AG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_AGRFT.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_AGRFT.png deleted file mode 100644 index 0ce636ac9..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_AGRFT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_ALU.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_ALU.png deleted file mode 100644 index ebc2a3376..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_ALU.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_BF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_BF.png deleted file mode 100644 index 18b8aa1a2..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_BF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_EF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_EF.png deleted file mode 100644 index 93a99535b..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_EF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FA.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FA.png deleted file mode 100644 index a1556aa8f..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FA.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FDV.pdf b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FDV.pdf deleted file mode 100644 index 67325cade..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FDV.pdf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FDV.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FDV.png deleted file mode 100644 index cd760790d..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FDV.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FE.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FE.png deleted file mode 100644 index 2004f96c0..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FE.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FF.png deleted file mode 100644 index 9a7853e20..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FFARM.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FFARM.png deleted file mode 100644 index e3a1ec3f8..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FFARM.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FGG.pdf b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FGG.pdf deleted file mode 100644 index 93827a3f8..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FGG.pdf and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FGG.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FGG.png deleted file mode 100644 index 89ea50719..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FGG.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FKKT.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FKKT.png deleted file mode 100644 index e32a5e6b9..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FKKT.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FMF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FMF.png deleted file mode 100644 index fbe338733..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FMF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FPP.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FPP.png deleted file mode 100644 index 798ad486b..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FPP.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FRI.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FRI.png deleted file mode 100644 index 541a49607..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FRI.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSD.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSD.png deleted file mode 100644 index 7a77dff35..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSD.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSSS.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSSS.png deleted file mode 100644 index 142f68468..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSSS.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSTR.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSTR.png deleted file mode 100644 index e8e27fed1..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_FSTR.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_MF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_MF.png deleted file mode 100644 index 0c6d4de60..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_MF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_NTF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_NTF.png deleted file mode 100644 index c7122d172..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_NTF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_PEF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_PEF.png deleted file mode 100644 index ef610a1b0..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_PEF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_PF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_PF.png deleted file mode 100644 index 2a394a128..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_PF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_TEOF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_TEOF.png deleted file mode 100644 index 05eb09138..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_TEOF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_VF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_VF.png deleted file mode 100644 index a08aced59..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_VF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_ZF.png b/admin/survey/modules/Evalvacija/latexkosi/logo/logo_ZF.png deleted file mode 100644 index cc781bc7a..000000000 Binary files a/admin/survey/modules/Evalvacija/latexkosi/logo/logo_ZF.png and /dev/null differ diff --git a/admin/survey/modules/Evalvacija/latexkosi/metodolosko.pojasnilo.tex b/admin/survey/modules/Evalvacija/latexkosi/metodolosko.pojasnilo.tex deleted file mode 100644 index 1436b92d8..000000000 --- a/admin/survey/modules/Evalvacija/latexkosi/metodolosko.pojasnilo.tex +++ /dev/null @@ -1,76 +0,0 @@ -\chapter{Metodolo\v{s}ko pojasnilo} -\section{Splo\v{s}na metodologija} -Analiza je izdelana na osnovi ankete o predmetu in izvajalcih (pedagogih), ki jo \v{s}tudent izpolnjuje PRED izpitom, ter ankete o predmetu, ki jo \v{s}tudent izpolnjuje PO izpitu. \v{C}e je izpitna ocena predmeta \v{z}e vpisana, ankete PRED izpitom ni mogo\v{c}e izpolnjevati. Ankete PO izpitu pa ni mogo\v{c}e izpolnjevati, \v{c}e ocena \v{s}e ni vpisana. -\\[1em] -Ankete izpolnjujejo \v{s}tudenti prve in druge stopnje, ki so imeli v odgovarjajo\v{c}em semestru predmet formalno vpisan in so ga tudi poslu\v{s}ali. \v{S}tudenti imajo pri vsaki anketi mo\v{z}nost, da ozna\v{c}ijo, da predmeta v tem \v{s}tudijskem letu niso poslu\v{s}ali, \v{c}eprav so ga formalno vpisali (npr. ponavljalci, priznanje izpita). Ravno tako lahko evalvacijo dolo\v{c}enega predmeta zavrnejo tudi zaradi kateregakoli drugega razloga (npr. zaradi pomanjkanja \v{c}asa). \v{S}tudenti so lahko znotraj vpra\v{s}alnika izpustili odgovor na dolo\v{c}eno vpra\v{s}anje. Pri tem so zgolj opomnjeni ("soft reminder"), ne prepre\v{c}i pa se jim nadaljevanje ankete ("hard reminder"). Ostale podrobnosti in vpra\v{s}alniki so v \textit{Izvedbenih priporo\v{c}ilih} (\url{http://ul.1ka.si/}). -\\[1em] -Anketa PRED izpitom za predmete v zimskem semestru poteka praviloma od 15.12. do 30.9., za predmete v poletnem pa od 15.5. do 30.9. Anketa PO izpitu je na\v{c}eloma omogo\v{c}ena od za\v{c}etka prvega izpitnega obdobja (26.1.). V primeru posebnosti (npr. 4 mestri, 3 mestri, posebne izvedbe) pa se lahko datumi tudi razlikujejo. Odziv (bodisi sodelovanje bodisi izrecna zavrnitev) na anketni vpra\v{s}alnik je bil predpogoj za prijavo \v{s}tudenta na izpite in tudi za vpis v naslednji letnik oziroma dodatno leto. -\\[1em] -Ankete se ne izvajajo na vzorcu, ampak na celotni populaciji \v{s}tudentov. Tako npr. odgovori 5 \v{s}tudentov pri predmetu, kjer je tudi vpisanih 5 \v{s}tudentov, pomenijo osnovo za izra\v{c}un dejanskega povpre\v{c}ja na populaciji. Ker ne gre za vzor\v{c}no oceno, statisti\v{c}no sklepanje in intervali zaupanja niso potrebni. -\\[1em] -Ni\v{z}je sodelovanje v anketi pomeni dolo\v{c}eno tveganje pri interpretaciji, saj imajo manjkajo\v{c}i \v{s}tudenti lahko druga\v{c}no mnenje. Izku\v{s}nje sicer ka\v{z}ejo, da v primeru povpre\v{c}ij (npr. na lestvici, od 1-5) zni\v{z}ana stopnja sodelovanja (npr. zmanj\v{s}anje od 65\% na 45\%) ne spremeni sicer\v{s}njega nivoja povpre\v{c}nih vrednosti, saj npr. ostaja povpre\v{c}no zadovoljstvo s predmeti v anketi PRED izpitom nespremenjeno (na dodiplomskem \v{s}tudiju :IME: :DODI: in na podiplomskem \v{s}tudiju :PODI:). -\\[1em] -Ocene, ki temeljijo na manj kot 4 enotah, zaradi slab\v{s}e kvalitete ocen in varovanja zasebnosti niso prikazane, zato je ponekod v analizah \v{s}tevilo predmetov oziroma izvajalcev ni\v{z}je kot v tabeli \textbf{Izvedba evalvacijske ankete :IME: (anketa PRED izpitom in anketa PO izpitu)} na naslednji strani. -\\[1em] -Ker sta nizko \v{s}tevilo odgovorov in stopnja sodelovanja pomembni za interpretacijo rezultatov, je v izpisih posebej ozna\v{c}eno \v{s}tevilo enot in stopnja sodelovanja, kjer obstaja pove\v{c}ano tveganje za manj kvalitetne ocene. Gre za naslednje vrednosti: -\begin{itemize} -\item Absolutno \v{s}tevilo odgovorov in absolutno \v{s}tevilo vpisanih \v{s}tudentov manj\v{s}e od 10 je ozna\v{c}eno z enojnim oklepajem, manj\v{s}e od 5 pa z dvojnim oklepajem; imamo torej (9), (8), (7), (6), (5) ter ((4)), ((3)), ((2)), ((1)). -\item Dele\v{z} "Odgovoril" (stopnja odgovorov) je v primeru vrednosti ve\v{c}jih od 25\% ozna\v{c}en z enojnim oklepajem (), v primeru vrednosti manj\v{s}ih od 10\% pa z dvojnim oklepajem (()). -\item Dele\v{z}a "Zavrnil" in "Ni pristopil" sta v primeru vrednosti manj\v{s}ih od 50\% ozna\v{c}ena z enojnim oklepajem (), v primeru vrednosti ve\v{c}jih od 75\% pa z dvojnim oklepajem (()). -\end{itemize} -Poleg vpra\v{s}anj na lestvici 1-5 so \v{s}tudenti odgovarjali tudi na odprta vpra\v{s}anja. Pri tem je treba upo\v{s}tevati, da so tovrstni odgovori razmeroma redki, zato lahko prevladujejo (nasprotujo\v{c}a) ekstremna mnenja zadovoljnih ali nezadovoljnih \v{s}tudentov, ki pa jih ni mogo\v{c}e posplo\v{s}evati. - -\newpage - -\section{Izvedba na :IME: 2014/2015} -V spodnji Tabeli \textbf{Izvedba evalvacijske ankete :IME: (anketa PRED izpitom in anketa PO izpitu)} je prikazano skupno \v{s}tevilo predmetov, izvajalcev (pedagogov), izvajalcev oziroma izvedb pri predmetih (IPP) in formalno vpisanih \v{s}tudentov v \v{s}tudijskem letu 2014/2015. Navedeno je tudi skupno \v{s}tevilo anketnih vpra\v{s}alnikov ter odstotki odgovorjenih oziroma neodgovorjenih (zavrnil, ni pristopil) vpra\v{s}alnikov. -\\[1em] -Kategorija "Zavrnil" vklju\v{c}uje \v{s}tudente, ki so predmet vpisali in tudi poslu\v{s}ali, vendar ga niso \v{z}eleli oceniti (npr. zaradi pomanjkanja \v{c}asa), kot tudi \v{s}tudente, ki predmeta niso poslu\v{s}ali v tem \v{s}tudijskem letu, \v{c}eprav so ga formalno vpisali. Kategorija "Ni pristopil" obsega \v{s}tudente, ki k evalvaciji dolo\v{c}enega predmeta \v{s}e niso pristopili (torej niso na anketni vpra\v{s}alnik niti odgovorili niti ga niso izrecno zavrnili). -\\[1em] -Pri \v{s}tevilu \v{s}tudentov so izlo\v{c}eni vsi absolventi, pavzerji, \v{s}tudenti na mednarodni izmenjavi ter ob\v{c}ani. Ravno tako so lahko dodatno izlo\v{c}eni izvajalci ali predmeti, ki so jih slu\v{z}be \v{c}lanice predhodno odstranile (npr. izvajalci imajo pri predmetu manj kot 5 ur, predmeti nimajo kontaktnih ur). -\\[1em] -\begin{table}[h] -\centering -\caption{Izvedba evalvacijske ankete :IME: v \v{s}tudijskem letu 2014/2015 (anketa PRED izpitom in anketa PO izpitu)} -\label{my-label} -\renewcommand\arraystretch{1.1} -\renewcommand\tabcolsep{3pt} -\begin{tabular}{lcccccccc} - & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} \\ \hline -\hline -\multicolumn{1}{l|}{\multirow{2}{*}{\textbf{\begin{tabular}[c]{@{}l@{}}SEMESTER\\ IN ANKETA\end{tabular}}}} & \multirow{2}{*}{Predmeti} & \multirow{2}{*}{Izvajalci} & \multirow{2}{*}{IPP*} & \multicolumn{1}{c|}{\multirow{2}{*}{\v{S}tudenti}} & \multicolumn{4}{c}{Anketni vpra\v{s}alniki**} \\ \cline{6-9} -\multicolumn{1}{l|}{} & & & & \multicolumn{1}{c|}{} & \multicolumn{1}{r|}{Skupaj} & \multicolumn{1}{r}{Odgovoril} & \multicolumn{1}{r}{Zavrnil} & \multicolumn{1}{l}{Ni pristopil} \\ \hline -\multicolumn{1}{l|}{SEM I - PRED} & :XXX: & :YYY: & :RRR: & \multicolumn{1}{c|}{:ZZZ:} & \multicolumn{1}{c|}{:X1:} & :XX:\% & :YY:\% & :ZZ:\% \\ -\multicolumn{1}{l|}{SEM I - PO} & :XXX: & :YYY: & :RRR: & \multicolumn{1}{c|}{:ZZZ:} & \multicolumn{1}{c|}{:X1:} & :ZZ1:\% & :ZZ2:\% & :ZZ3:\% \\ \hline -\multicolumn{1}{l|}{SEM II - PRED} & :XXX1: & :YYY1: & :UUU1: & \multicolumn{1}{c|}{:ZZZ:} & \multicolumn{1}{c|}{:Y1:} & :XX1:\% & :XX2:\% & :XX3:\% \\ -\multicolumn{1}{l|}{SEM II - PO} & :XXX1: & :YYY1: & :UUU1: & \multicolumn{1}{c|}{:ZZZ:} & \multicolumn{1}{c|}{:Y1:} & :ZZ1L:\% & :ZZ2L:\% & :ZZ3L:\% \\ \hline -\multicolumn{4}{l}{* IPP - Izvedbe (oziroma izvajalci) pri predmetih.} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{1}{l}{} \\ -\multicolumn{9}{l}{\begin{tabular}[c]{@{}l@{}}** Stanje na dan izvoza podatkov (:DATUM:).\end{tabular}} -\end{tabular} -\end{table} -\\[1em] -Iz tabele je posredno razvidno, da npr. v I. semestru vsak predmet v povpre\v{c}ju izvaja :IZR: (:RRR:/:XXX:) izvajalcev, vsak izvajalec pa v povpre\v{c}ju izvaja :IZR1: (:RRR:/:YYY:) predmetov. Razmerja se nekoliko spremenijo, \v{c}e upo\v{s}tevamo le predmete, kjer so odgovarjali vsaj 4 \v{s}tudenti. -\\[1em] -Iz tabele tudi razberemo, da so npr. v prvem semestru \v{s}tudenti v anketah PRED izpitom odgovorili na :XX:\% vseh anketnih vpra\v{s}alnikov, v :YY:\% primerov so zavrnili sodelovanje, v :ZZ:\% primerih pa k vpra\v{s}alniku niso pristopili. V anketah PO izpitu je sodelovalo :ZZ1:\%, zavrnilo :ZZ2:\%, pristopilo pa ni :ZZ3:\% \v{s}tudentov. -\\[1em] -Razmeroma velik dele\v{z} kategorije "Ni pristopil" nastaja predvsem zaradi \v{s}tudentov, ki izpitov niso opravljali in se konec \v{s}tudijskega leta tudi niso vpisali v vi\v{s}ji letnik oziroma v dodatno leto, ker so bodisi \v{s}tudij opustili bodisi so se v naslednjem \v{s}tudijskem letu odlo\v{c}ili za ponoven vpis ali za pavziranje. Nastaja pa tudi zaradi \v{s}tudentov, ki so se lahko vpisali v naslednji letnik oziroma v dodatno leto brez opravljenih obveznosti (izpitov) pri dolo\v{c}enih predmetih. -\\[1em] -Dodati velja, da je v prvem semestru vse ankete PRED izpitom zavrnilo :metod_X4.pct:\% vseh vpisanih \v{s}tudentov, k nobeni anketi ni pristopilo :metod_X5.pct:\% \v{s}tudentov, :metod_X6.pct:\% \v{s}tudentov pa je sodelovalo v vsaj eni anketi. Vse ankete PO izpitu je zavrnilo :metod_Y4.pct:\% \v{s}tudentov, k nobeni ni pristopilo :metod_Y5.pct:\% \v{s}tudentov, :metod_Y6.pct:\% \v{s}tudentov pa je sodelovalo v vsaj eni anketi. V drugem semestru so dele\v{z}i za anketo PRED izpitom: :metod_X41.pct:\%, :metod_X51.pct:\%, :metod_X61.pct:\%, za anketo PO izpitu pa: :metod_Y41.pct:\%, :metod_Y51.pct:\%, :metod_Y61.pct:\%. - -\newpage - -\section{Kriti\v{c}ne vrednosti in zaokro\v{z}evanja} -Ocenam so v izpisih dodana obarvanja, ki ozna\v{c}ujejo odstopanja glede na absolutne in glede na relativne kriterije. Obarvanja podajajo okvirne orientacijske vrednosti za interpretacijo. Pri tem so ocene na ravni fakultete ali programa izra\v{c}unane na osnovi povpre\v{c}ij ocen predmetov oziroma izvajalcev (in ne na osnovi ocen vseh \v{s}tudentov). Predmeti z malo ali veliko \v{s}tudenti imajo zato enako te\v{z}o. -\\[1em] -\textbf{Ocene povpre\v{c}ij na lestvici 1-5}: (1) sploh se ne strinjam, (2) se bolj ne strinjam kot strinjam, (3) niti se ne strinjam, niti se strinjam, (4) se bolj strinjam kot ne strinjam in (5) popolnoma se strinjam. Obarvana so povpre\v{c}ja, ki so ni\v{z}ja od dolo\v{c}ene spodnje meje. Z {\color{Orange}\textbf{oran\v{z}no}} barvo so ozna\v{c}ene {\color{Orange}\textbf{opozorilne}} vrednosti, z {\color{BrickRed}\textbf{rde\v{c}o}} barvo pa {\color{BrickRed}\textbf{kriti\v{c}ne}} vrednosti. Uporabljeni meji sta 4.0 (oziroma {\color{Orange}\textbf{3.9}}) in 3.0 (oziroma {\color{BrickRed}\textbf{2.9}}). Vrednost 4.0 je namre\v{c} za vpra\v{s}anja na lestvicah 1-5 uveljavljen kriterij odli\v{c}nosti, ki je v zahtevnej\v{s}ih pedago\v{s}kih okoljih tudi \v{z}e postal standard. Vrednosti {\color{Orange}\textbf{3.0-3.9}} so sicer \v{s}e vedno pozitivne, vendar {\color{Orange}\textbf{opozarjajo}}, da obstaja znaten prostor za izbolj\v{s}anje. Vrednosti pod 3.0 (torej {\color{BrickRed}\textbf{1.0-2.9}}) pa pomenijo {\color{BrickRed}\textbf{kriti\v{c}no}} nizke ocene in ka\v{z}ejo, da pri predmetu oziroma izvajalcu zelo verjetno obstaja resen problem. Razmejitvi 3.0 in 4.0 sta postavljeni neodvisno od povpre\v{c}ij celotne fakultete (ki so obi\v{c}ajno nad 4.0), saj gre za standardni meji pri merjenju zadovoljstva na lestvicah 1-5. -\\[1em] -\textbf{Ocene porabe ur} so prav tako merjene na lestvici 1-5 in tudi obarvane, vendar optimalna vrednost tokrat ni 5.0, ampak 3.0. Gre za odgovore na vpra\v{s}anje, ali so \v{s}tudenti (glede na kreditne to\v{c}ke) porabili predvideno \v{s}tevilo ur, in sicer: (1) veliko manj, (2) nekoliko manj, (3) predvideno, (4) nekoliko ve\v{c}, (5) veliko ve\v{c}. {\color{Orange}\textbf{Oran\v{z}no}} ({\color{Orange}\textbf{opozorilno}}) obarvanje pomeni, da porabljene ure opazno odstopajo od pri\v{c}akovanega sredinskega intervala (2.7-3.3), bodisi navzgor ({\color{Orange}\textbf{3.4-3.6}}) bodisi navzdol ({\color{Orange}\textbf{2.6-2.4}}). {\color{BrickRed}\textbf{Rde\v{c}e}} ({\color{BrickRed}\textbf{kriti\v{c}no}}) obarvanje pa pomeni, da porabljene ure mo\v{c}no odstopajo od predvidenih (2.7-3.3) bodisi navzgor (nad {\color{BrickRed}\textbf{3.7}}) bodisi navzdol (pod {\color{BrickRed}\textbf{2.3}}). -\\[1em] -\textbf{Kvantilni rangi} ka\v{z}ejo polo\v{z}aj predmeta oziroma izvajalca (pedagoga) med vsemi predmeti oziroma izvajalci na fakulteti ali na programu. Vrednost npr. 24 (oziroma 0.24) pomeni, da je 24\% vseh predmetov prejelo ni\v{z}jo oceno od obravnavanega predmeta, vrednost npr. 98 (oziroma 0.98) pa pomeni, da sta imela le 2\% predmetov vi\v{s}jo oceno. Pri izpisu kvantilnih rangov se zgornja \v{c}etrtina ({\color{Chateau Green}\textbf{75-100}}) obarva {\color{Chateau Green}\textbf{zeleno}} ({\color{Chateau Green}\textbf{pohvalno}}). Spodnja \v{c}etrtina ({\color{Orange}\textbf{0-25}}), se obarvana {\color{Orange}\textbf{oran\v{z}no}} ({\color{Orange}\textbf{opozorilno}}). Osrednja polovica (kvantilni rangi 25-75) ni obarvana. Dodatno je {\color{Blue Stone}\textbf{poudarjeno zeleno}} ({\color{Blue Stone}\textbf{odli\v{c}no}}) obarvanih zgornjih 10\% ({\color{Blue Stone}\textbf{90-100}}). {\color{BrickRed}\textbf{Poudarjeno rde\v{c}e}} ({\color{BrickRed}\textbf{kriti\v{c}no}}) je obarvanih spodnjih 10\% ({\color{BrickRed}\textbf{0-10}}) enot. Kvantilni rang sicer ozna\v{c}uje sredino odgovarjajo\v{c}ega intervala kvantilnih vrednosti; v primeru 10 enot ima torej najbolje ocenjena enota kvantilni rang 95 (oziroma 0.95) in ne 100 (oziroma 1.00), najslab\v{s}e ocenjena enota pa ima v takem primeru kvantilni rang 5 (oziroma 0.05) in ne 0 (oziroma 0.00). Dodati velja, da se obarvanja kvantilnih rangov z obarvanji absolutnih vrednosti (povpre\v{c}ij) sicer v grobem ujemajo, ne pa seveda pri vsakem predmetu, saj gre za dva povezana (\v{c}eprav razli\v{c}na kriterija). -\\[1em] -\textbf{Kvantlini rangi za ocene porabljenih ur} imajo tudi zgornje vrednosti (nad {\color{Orange}\textbf{75\%}}) obarvane {\color{Orange}\textbf{oran\v{z}no}} ({\color{Orange}\textbf{opozorilno}}), zgornjo desetino (nad {\color{BrickRed}\textbf{90\%}}) pa {\color{BrickRed}\textbf{rde\v{c}e}} ({\color{BrickRed}\textbf{kriti\v{c}no}}), saj gre za neza\v{z}elena odstopanja – za predmete, ki glede na \v{s}tevilo kreditnih to\v{c}k zahtevajo najve\v{c}ji obseg ur. Vrednost npr. {\color{BrickRed}\textbf{95\%}} tako pomeni, da ima kar {\color{BrickRed}\textbf{95\%}} predmetov ni\v{z}jo oceno obsega porabljenih ur; tak predmet torej sodi med {\color{BrickRed}\textbf{5\%}} (najbolj »te\v{z}kih«) predmetov. Pri spodnji \v{c}etrtini oziroma spodnji desetini ni sprememb v obarvanju. Vrednost npr. {\color{Orange}\textbf{15\%}} pomeni, da so \v{s}tudenti pri {\color{Orange}\textbf{15\%}} vseh predmetov porabili manj\v{s}e \v{s}tevilo ur. Vrednost {\color{BrickRed}\textbf{3\%}} pa pomeni, da so \v{s}tudenti le pri {\color{BrickRed}\textbf{3\%}} predmetov porabili (relativno) manj \v{c}asa V obeh primerih gre torej za razmeroma »lahek« predmet. Tudi tokrat velja enaka zaklju\v{c}na opomba kot zgoraj. -\\[1em] -Za razliko od obarvanja povpre\v{c}jih, kjer gre za odstopanja od absolutnih mejnikov na skalah 1-5 (vrednosti 3.0 oziroma 4.0), gre pri kvantilnih rangih za relativni polo\v{z}aj glede na vse predmete oziroma izvajalce. Obstaja tudi mo\v{z}nost, da so vsi predmeti ocenjeni odli\v{c}no (npr. 4.7-5.0) in v tem primeru rde\v{c}e obarvanje kvantlinih rangov za spodnjo \v{c}etrtino nikakor ne ozna\v{c}uje kriti\v{c}nih vrednosti, ampak le polo\v{z}aj (spodnjo \v{c}etrtino) med vsemi ocenami (ki pa so vse odli\v{c}ne). -\\[1em] -\textbf{Decimalna mesta:} -Izra\v{c}uni za povpre\v{c}ja se prikazujejo na eno decimalno mesto, odstotki pa so zaokro\v{z}eni brez decimalnih mest. Pri kvantilnih rangih lahko zato prihaja do manj\v{s}ih neujemanj, saj je bila npr. vrednost 4.35 zaokro\v{z}ena na 4.4, v histogramu pa kri\v{z}ec \textbf{(X)} \v{s}e vedno ozna\v{c}uje vrednost 4.35. Podobno lahko zaradi zaokro\v{z}evanj prihaja tudi do manj\v{s}ih neujemanj pri vsotah in povpre\v{c}jih. \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/latexkosi/sloven2e.sty b/admin/survey/modules/Evalvacija/latexkosi/sloven2e.sty deleted file mode 100644 index a25f70321..000000000 --- a/admin/survey/modules/Evalvacija/latexkosi/sloven2e.sty +++ /dev/null @@ -1,42 +0,0 @@ -% -% slovene.sty - prilagoditev zvrsti ARTICLE, BOOK in REPORT slovenscini -% -\@ifundefined{slovensko}{\def\slovensko{}}{\endinput} -\typeout{Document Style Option 'Sloven2e' ver 0.1. / 11-Nov-95 / V.B.} - -% naslovi - -\def\abstractname{Povzetek} -\def\appendixname{Dodatek} -\def\bibname{Literatura} -\def\ccname{cc} -\def\chaptername{Poglavje} -\def\contentsname{Kazalo} -\def\enclname{Priloge} -\def\figurename{Slika\ } -\def\headpagename{Stran} -\def\headtoname{Komu} -\def\indexname{Stvarno kazalo} -\def\listfigurename{Slike} -\def\listtablename{Tabele} -\def\partname{Del} -\def\prefacename{Predgovor} -\def\seename{glej} -\def\alsoseename{glej tudi} -\def\refname{Viri} -\def\tablename{Tabela\ } - -% tekoci datum - -\def\today{\number\day. \ifcase\month\or - januar\or februar\or marec\or april\or maj\or junij\or - julij\or avgust\or september\or oktober\or november\or december\fi - \space\number\year} - - -% slovenski narekovaji - -\def\lqlq{\leavevmode\hbox{,\kern-.1em,}} -\def\rqrq{\leavevmode\hbox{`\kern-.1em`}} - -\endinput diff --git a/admin/survey/modules/Evalvacija/latexkosi/tabela.tex b/admin/survey/modules/Evalvacija/latexkosi/tabela.tex deleted file mode 100644 index f34b536a3..000000000 --- a/admin/survey/modules/Evalvacija/latexkosi/tabela.tex +++ /dev/null @@ -1,11 +0,0 @@ -\documentclass[landscape]{report} -\usepackage[cp1250]{inputenc} -\usepackage{csz} -\usepackage{sloven2e} -\usepackage{longtable} -\usepackage{geometry} -\newgeometry{left=0cm,bottom=0cm} -\begin{document} -\footnotesize -\renewcommand*{\arraystretch}{1.25} -\renewcommand{\tabcolsep}{1mm} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/latexkosi/z-noga.tex b/admin/survey/modules/Evalvacija/latexkosi/z-noga.tex deleted file mode 100644 index 815ab681a..000000000 --- a/admin/survey/modules/Evalvacija/latexkosi/z-noga.tex +++ /dev/null @@ -1 +0,0 @@ -\end{document} \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/pdf/unzipped/.gitignore b/admin/survey/modules/Evalvacija/pdf/unzipped/.gitignore deleted file mode 100644 index f607e1a2c..000000000 --- a/admin/survey/modules/Evalvacija/pdf/unzipped/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -* -!navodila.xlsx -!.gitignore \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/results/part-izvajalec-slike/.gitignore b/admin/survey/modules/Evalvacija/results/part-izvajalec-slike/.gitignore deleted file mode 100644 index c96a04f00..000000000 --- a/admin/survey/modules/Evalvacija/results/part-izvajalec-slike/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/results/part-predmet-slike/.gitignore b/admin/survey/modules/Evalvacija/results/part-predmet-slike/.gitignore deleted file mode 100644 index c96a04f00..000000000 --- a/admin/survey/modules/Evalvacija/results/part-predmet-slike/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/sql.sql b/admin/survey/modules/Evalvacija/sql.sql deleted file mode 100644 index ec3823315..000000000 --- a/admin/survey/modules/Evalvacija/sql.sql +++ /dev/null @@ -1,433 +0,0 @@ -## BACKUUP IN PRIPRAVA NA ZACETKU NOVEGA LETA ## -CREATE TABLE eval_1718_fakulteta LIKE eval_fakulteta; -CREATE TABLE eval_1718_izvajalec LIKE eval_izvajalec; -CREATE TABLE eval_1718_izvajalec2 LIKE eval_izvajalec2; -CREATE TABLE eval_1718_izvajalec_bck LIKE eval_izvajalec_bck; -CREATE TABLE eval_1718_program LIKE eval_program; -CREATE TABLE eval_1718_student LIKE eval_student; -CREATE TABLE eval_1718_student_podipl LIKE eval_student_podipl; - -INSERT eval_1718_fakulteta SELECT * FROM eval_fakulteta; -INSERT eval_1718_izvajalec SELECT * FROM eval_izvajalec; -INSERT eval_1718_izvajalec2 SELECT * FROM eval_izvajalec2; -INSERT eval_1718_izvajalec_bck SELECT * FROM eval_izvajalec_bck; -INSERT eval_1718_program SELECT * FROM eval_program; -INSERT eval_1718_student SELECT * FROM eval_student; -INSERT eval_1718_student_podipl SELECT * FROM eval_student_podipl; - -TRUNCATE TABLE eval_izvajalec; -TRUNCATE TABLE eval_izvajalec2; -TRUNCATE TABLE eval_izvajalec_bck; -TRUNCATE TABLE eval_program; -TRUNCATE TABLE eval_student; -TRUNCATE TABLE eval_student_podipl; - -UPDATE eval_fakulteta SET active='0'; - -## PRIPRAVA 2018 2019 -UPDATE eval_fakulteta SET anketa_pred='524' WHERE id='3000043'; -UPDATE eval_fakulteta SET anketa_po='525' WHERE id='3000043'; -UPDATE eval_fakulteta SET anketa_splosna='526' WHERE id='3000043'; -UPDATE eval_fakulteta SET anketa_podipl='527' WHERE id='3000043'; -UPDATE eval_fakulteta SET anketa_podipl2='528' WHERE id='3000043'; -UPDATE eval_fakulteta SET anketa_pred='635' WHERE id='3000044'; -UPDATE eval_fakulteta SET anketa_po='638' WHERE id='3000044'; -UPDATE eval_fakulteta SET anketa_splosna='639' WHERE id='3000044'; -UPDATE eval_fakulteta SET anketa_podipl='640' WHERE id='3000044'; -UPDATE eval_fakulteta SET anketa_podipl2='641' WHERE id='3000044'; -UPDATE eval_fakulteta SET anketa_pred='542' WHERE id='3000042'; -UPDATE eval_fakulteta SET anketa_po='544' WHERE id='3000042'; -UPDATE eval_fakulteta SET anketa_splosna='543' WHERE id='3000042'; -UPDATE eval_fakulteta SET anketa_podipl='545' WHERE id='3000042'; -UPDATE eval_fakulteta SET anketa_podipl2='546' WHERE id='3000042'; -UPDATE eval_fakulteta SET anketa_pred='642' WHERE id='3000071'; -UPDATE eval_fakulteta SET anketa_po='643' WHERE id='3000071'; -UPDATE eval_fakulteta SET anketa_splosna='644' WHERE id='3000071'; -UPDATE eval_fakulteta SET anketa_podipl='645' WHERE id='3000071'; -UPDATE eval_fakulteta SET anketa_podipl2='646' WHERE id='3000071'; -UPDATE eval_fakulteta SET anketa_pred='655' WHERE id='3000025'; -UPDATE eval_fakulteta SET anketa_po='657' WHERE id='3000025'; -UPDATE eval_fakulteta SET anketa_splosna='658' WHERE id='3000025'; -UPDATE eval_fakulteta SET anketa_podipl='659' WHERE id='3000025'; -UPDATE eval_fakulteta SET anketa_podipl2='660' WHERE id='3000025'; -UPDATE eval_fakulteta SET anketa_pred='661' WHERE id='3000022'; -UPDATE eval_fakulteta SET anketa_po='662' WHERE id='3000022'; -UPDATE eval_fakulteta SET anketa_splosna='663' WHERE id='3000022'; -UPDATE eval_fakulteta SET anketa_podipl='664' WHERE id='3000022'; -UPDATE eval_fakulteta SET anketa_podipl2='665' WHERE id='3000022'; -UPDATE eval_fakulteta SET anketa_pred='627' WHERE id='3000021'; -UPDATE eval_fakulteta SET anketa_po='631' WHERE id='3000021'; -UPDATE eval_fakulteta SET anketa_splosna='628' WHERE id='3000021'; -UPDATE eval_fakulteta SET anketa_podipl='630' WHERE id='3000021'; -UPDATE eval_fakulteta SET anketa_podipl2='629' WHERE id='3000021'; -UPDATE eval_fakulteta SET anketa_pred='622' WHERE id='3000031'; -UPDATE eval_fakulteta SET anketa_po='626' WHERE id='3000031'; -UPDATE eval_fakulteta SET anketa_splosna='623' WHERE id='3000031'; -UPDATE eval_fakulteta SET anketa_podipl='625' WHERE id='3000031'; -UPDATE eval_fakulteta SET anketa_podipl2='624' WHERE id='3000031'; -UPDATE eval_fakulteta SET anketa_pred='617' WHERE id='3000026'; -UPDATE eval_fakulteta SET anketa_po='621' WHERE id='3000026'; -UPDATE eval_fakulteta SET anketa_splosna='618' WHERE id='3000026'; -UPDATE eval_fakulteta SET anketa_podipl='620' WHERE id='3000026'; -UPDATE eval_fakulteta SET anketa_podipl2='619' WHERE id='3000026'; -UPDATE eval_fakulteta SET anketa_pred='611' WHERE id='3000027'; -UPDATE eval_fakulteta SET anketa_po='615' WHERE id='3000027'; -UPDATE eval_fakulteta SET anketa_splosna='612' WHERE id='3000027'; -UPDATE eval_fakulteta SET anketa_podipl='614' WHERE id='3000027'; -UPDATE eval_fakulteta SET anketa_podipl2='613' WHERE id='3000027'; -UPDATE eval_fakulteta SET anketa_pred='606' WHERE id='3000009'; -UPDATE eval_fakulteta SET anketa_po='610' WHERE id='3000009'; -UPDATE eval_fakulteta SET anketa_splosna='607' WHERE id='3000009'; -UPDATE eval_fakulteta SET anketa_podipl='609' WHERE id='3000009'; -UPDATE eval_fakulteta SET anketa_podipl2='608' WHERE id='3000009'; -UPDATE eval_fakulteta SET anketa_pred='601' WHERE id='3000006'; -UPDATE eval_fakulteta SET anketa_po='605' WHERE id='3000006'; -UPDATE eval_fakulteta SET anketa_splosna='602' WHERE id='3000006'; -UPDATE eval_fakulteta SET anketa_podipl='604' WHERE id='3000006'; -UPDATE eval_fakulteta SET anketa_podipl2='603' WHERE id='3000006'; -UPDATE eval_fakulteta SET anketa_pred='596' WHERE id='3000023'; -UPDATE eval_fakulteta SET anketa_po='600' WHERE id='3000023'; -UPDATE eval_fakulteta SET anketa_splosna='597' WHERE id='3000023'; -UPDATE eval_fakulteta SET anketa_podipl='599' WHERE id='3000023'; -UPDATE eval_fakulteta SET anketa_podipl2='598' WHERE id='3000023'; -UPDATE eval_fakulteta SET anketa_pred='591' WHERE id='3000018'; -UPDATE eval_fakulteta SET anketa_po='595' WHERE id='3000018'; -UPDATE eval_fakulteta SET anketa_splosna='592' WHERE id='3000018'; -UPDATE eval_fakulteta SET anketa_podipl='594' WHERE id='3000018'; -UPDATE eval_fakulteta SET anketa_podipl2='593' WHERE id='3000018'; -UPDATE eval_fakulteta SET anketa_pred='590' WHERE id='3000041'; -UPDATE eval_fakulteta SET anketa_po='589' WHERE id='3000041'; -UPDATE eval_fakulteta SET anketa_splosna='586' WHERE id='3000041'; -UPDATE eval_fakulteta SET anketa_podipl='588' WHERE id='3000041'; -UPDATE eval_fakulteta SET anketa_podipl2='587' WHERE id='3000041'; -UPDATE eval_fakulteta SET anketa_pred='581' WHERE id='3000029'; -UPDATE eval_fakulteta SET anketa_po='585' WHERE id='3000029'; -UPDATE eval_fakulteta SET anketa_splosna='582' WHERE id='3000029'; -UPDATE eval_fakulteta SET anketa_podipl='584' WHERE id='3000029'; -UPDATE eval_fakulteta SET anketa_podipl2='583' WHERE id='3000029'; -UPDATE eval_fakulteta SET anketa_pred='576' WHERE id='3000001'; -UPDATE eval_fakulteta SET anketa_po='580' WHERE id='3000001'; -UPDATE eval_fakulteta SET anketa_splosna='577' WHERE id='3000001'; -UPDATE eval_fakulteta SET anketa_podipl='579' WHERE id='3000001'; -UPDATE eval_fakulteta SET anketa_podipl2='578' WHERE id='3000001'; -UPDATE eval_fakulteta SET anketa_pred='571' WHERE id='3000020'; -UPDATE eval_fakulteta SET anketa_po='575' WHERE id='3000020'; -UPDATE eval_fakulteta SET anketa_splosna='572' WHERE id='3000020'; -UPDATE eval_fakulteta SET anketa_podipl='574' WHERE id='3000020'; -UPDATE eval_fakulteta SET anketa_podipl2='573' WHERE id='3000020'; -UPDATE eval_fakulteta SET anketa_pred='566' WHERE id='3000050'; -UPDATE eval_fakulteta SET anketa_po='570' WHERE id='3000050'; -UPDATE eval_fakulteta SET anketa_splosna='567' WHERE id='3000050'; -UPDATE eval_fakulteta SET anketa_podipl='569' WHERE id='3000050'; -UPDATE eval_fakulteta SET anketa_podipl2='568' WHERE id='3000050'; -UPDATE eval_fakulteta SET anketa_pred='561' WHERE id='3000037'; -UPDATE eval_fakulteta SET anketa_po='565' WHERE id='3000037'; -UPDATE eval_fakulteta SET anketa_splosna='562' WHERE id='3000037'; -UPDATE eval_fakulteta SET anketa_podipl='564' WHERE id='3000037'; -UPDATE eval_fakulteta SET anketa_podipl2='563' WHERE id='3000037'; -UPDATE eval_fakulteta SET anketa_pred='556' WHERE id='3000011'; -UPDATE eval_fakulteta SET anketa_po='560' WHERE id='3000011'; -UPDATE eval_fakulteta SET anketa_splosna='557' WHERE id='3000011'; -UPDATE eval_fakulteta SET anketa_podipl='559' WHERE id='3000011'; -UPDATE eval_fakulteta SET anketa_podipl2='558' WHERE id='3000011'; - - - - - -# Najprej dropamo vse stare tabele (ce slucajno obstajajo) -DROP TABLE anketa_fdv; -DROP TABLE anketa_uni; - -DROP TABLE anketa_fdv_predmeti; -DROP TABLE anketa_uni_predmeti; - -DROP TABLE anketa_fdv_student; -DROP TABLE anketa_uni_student; - -DROP TABLE anketa2_fdv_student; -DROP TABLE anketa2_uni_student; - -DROP TABLE anketa_fdv_student2; -DROP TABLE anketa_uni_student2; - -DROP TABLE anketa_fdv_user; -DROP TABLE anketa_uni_user; - -DROP TABLE eval_fakulteta; -DROP TABLE eval_fdv_data_podipl; -DROP TABLE eval_fdv_program; -DROP TABLE eval_fdv_student_podipl; -DROP TABLE eval_uni_data_podipl; -DROP TABLE eval_uni_program; -DROP TABLE eval_uni_student_podipl; - -DROP TABLE eval_pdf_reports; -DROP TABLE eval_pdf_mailer_izvajalci; -DROP TABLE eval_pdf_mailer_predmeti; - - -# Tabela izvajalcev in njihovih predmetov (prej anketa_uni) -CREATE TABLE eval_izvajalec( - idp INT(11) NOT NULL, - predmet VARCHAR(200) NOT NULL, - idpedagoga VARCHAR(100) NOT NULL, - ime_pedagoga VARCHAR(200) NOT NULL, - nacin_studija TINYINT(1) NOT NULL, - semester_izv TINYINT(1) NOT NULL, - st_kt INT(11) NOT NULL, - st_stud INT(11) NOT NULL, - nosilec TINYINT(1) NOT NULL, - stopnja TINYINT(1) NOT NULL, - praksa TINYINT(1) NOT NULL DEFAULT 0, - fakulteta INT(11) NOT NULL, - PRIMARY KEY (idp, idpedagoga) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela studentov in njihovih programov (prej anketa_uni_predmeti) -CREATE TABLE eval_student( - id_student VARCHAR(50) NOT NULL, - id_program INT(11) NOT NULL, - program VARCHAR(100) NOT NULL, - smer VARCHAR(100) NOT NULL, - letnik INT(11) NOT NULL, - fakulteta INT(11) NOT NULL, - PRIMARY KEY (id_student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela podiplomskih studentov in njihovih programov (prej eval_uni_student_podipl) -CREATE TABLE eval_student_podipl( - id_student VARCHAR(50) NOT NULL, - id_program INT(11) NOT NULL, - program VARCHAR(100) NOT NULL, - letnik INT(11) NOT NULL, - smer VARCHAR(100) NOT NULL, - vrsta_vpisa VARCHAR(100) NOT NULL, - fakulteta INT(11) NOT NULL, - PRIMARY KEY (id_student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela programov -CREATE TABLE eval_program( - id INT(11) NOT NULL, - program VARCHAR(100) NOT NULL, - st_letnik INT(11) NOT NULL, - stopnja TINYINT(1) NOT NULL, - PRIMARY KEY (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela clanic (fakultet) -CREATE TABLE eval_fakulteta( - id INT(11) NOT NULL, - vrstni_red INT(11) NOT NULL, - ime VARCHAR(100) NOT NULL, - kratica VARCHAR(10) NOT NULL, - univerza VARCHAR(10) NOT NULL, - anketaPred INT(11) NOT NULL DEFAULT '0', - anketaPo INT(11) NOT NULL DEFAULT '0', - anketaSplosna INT(11) NOT NULL DEFAULT '0', - anketaPodipl INT(11) NOT NULL DEFAULT '0', - PRIMARY KEY (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -# Napolnimo tabelo clanic z ustreznimi podatki -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000021', '0', 'Fakulteta za družbene vede', 'FDV', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000026', '1', 'Fakulteta za gradbeništvo in geodezijo', 'FGG', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000001', '2', 'Pedagoška fakulteta', 'PEF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000004', '3', 'Fakulteta za upravo', 'FU', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000006', '4', 'Fakulteta za socialno delo', 'FSD', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000009', '5', 'Fakulteta za pomorstvo in promet', 'FPP', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000011', '6', 'Zdravstvena fakulteta', 'ZF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000018', '7', 'Filozofska fakulteta', 'FF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000019', '8', 'Ekonomska fakulteta', 'EF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000020', '9', 'Pravna fakulteta', 'PF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000022', '10', 'Fakulteta za šport', 'FŠ', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000023', '11', 'Fakulteta za strojništvo', 'FS', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000025', '12', 'Fakulteta za arhitekturo', 'FA', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000027', '13', 'Fakulteta za matematiko in fiziko', 'FMF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000029', '14', 'Naravoslovnotehniška fakulteta', 'NTF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000030', '15', 'Fakulteta za kemijo in kemijsko tehnologijo', 'FKKT', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000031', '16', 'Fakulteta za farmacijo', 'FFA', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000037', '17', 'Veterinarska fakulteta', 'VF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000041', '18', 'Medicinska fakulteta', 'MF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000042', '19', 'Akademija za likovno umetnost in oblikovanje', 'ALUO', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000043', '20', 'Akademija za glasbo', 'AG', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000044', '21', 'Akademija za gledališče, radio, film in televizijo', 'AGRFT', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000050', '22', 'Teološka fakulteta', 'TEOF', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000063', '23', 'Fakulteta za računalništvo in informatiko', 'FRI', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000064', '24', 'Fakulteta za elektrotehniko', 'FE', 'UL'); -INSERT INTO eval_fakulteta (id, vrstni_red, ime, kratica, univerza) VALUES ('3000071', '25', 'Biotehniška fakulteta', 'BF', 'UL'); - - - -# Tabela s podatki za ANKETO PRED (prej anketa_uni_student) -CREATE TABLE eval_data_anketaPred( - predmet INT(11) NOT NULL, - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - PRIMARY KEY (predmet, student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela s podatki za ANKETO PO (prej anketa_uni_student2) -CREATE TABLE eval_data_anketaPo( - predmet INT(11) NOT NULL, - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - PRIMARY KEY (predmet, student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela s podatki za SPLOSNO ANKETO (prej anketa2_uni_student) -CREATE TABLE eval_data_splosna( - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - PRIMARY KEY (student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela s podatki za PODIPLOMSKO SPLOSNO ANKETO (prej eval_uni_data_podipl) -CREATE TABLE eval_data_podipl ( - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - PRIMARY KEY (student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela z respondenti ki so resevali anketo (usr_id iz tabele srv_user), da jih lahko prepoznamo ce se vrnejo in jim napolnimo cookie (prej anketa_uni_user) -CREATE TABLE eval_data_userCookie( - predmet INT(11) NOT NULL, - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - usr_id INT(11) NOT NULL, - PRIMARY KEY (predmet, student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - - -# Tabela z generiranimi pdf porocili (da vemo kateri uporabnik je generiral katera porocila in kdaj) -CREATE TABLE eval_pdf_reports( - id INT(11) NOT NULL AUTO_INCREMENT, - usr_id INT(11) NOT NULL DEFAULT '0', - filename VARCHAR(100) NOT NULL DEFAULT '', - date DATETIME NOT NULL, - type INT(11) NOT NULL DEFAULT '0', - fak_id INT(11) NOT NULL DEFAULT '0', - ank_pred_id INT(11) NOT NULL DEFAULT '0', - ank_po_id INT(11) NOT NULL DEFAULT '0', - PRIMARY KEY (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela za posiljanje porocil pdf preko maila - ZA IZVAJALCE - CREATE TABLE eval_pdf_mailer_izvajalci( - v1 varchar(250) NOT NULL, - v2 varchar(250) NOT NULL, - v3 varchar(250) NOT NULL, - v4 varchar(250) NOT NULL, - v5 varchar(250) NOT NULL, - v6 varchar(250) NOT NULL, - v7 varchar(250) NOT NULL, - v8 varchar(250) NOT NULL, - v9 varchar(250) NOT NULL, - v10 varchar(250) NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# Tabela za posiljanje porocil pdf preko maila - ZA PREDMETE - CREATE TABLE eval_pdf_mailer_predmeti( - v1 varchar(250) NOT NULL, - v2 varchar(250) NOT NULL, - v3 varchar(250) NOT NULL, - v4 varchar(250) NOT NULL, - v5 varchar(250) NOT NULL, - v6 varchar(250) NOT NULL, - v7 varchar(250) NOT NULL, - v8 varchar(250) NOT NULL, - v9 varchar(250) NOT NULL, - v10 varchar(250) NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -# NAKNADNI POPRAVKI -ALTER TABLE eval_fakulteta ADD anketa_podipl2 INT(11) NOT NULL DEFAULT '0'; -ALTER TABLE eval_fakulteta CHANGE anketaPred anketa_pred INT(11) NOT NULL DEFAULT '0'; -ALTER TABLE eval_fakulteta CHANGE anketaPo anketa_po INT(11) NOT NULL DEFAULT '0'; -ALTER TABLE eval_fakulteta CHANGE anketaSplosna anketa_splosna INT(11) NOT NULL DEFAULT '0'; -ALTER TABLE eval_fakulteta CHANGE anketaPodipl anketa_podipl INT(11) NOT NULL DEFAULT '0'; - -ALTER TABLE eval_izvajalec DROP PRIMARY KEY; -ALTER TABLE eval_izvajalec CHANGE idp idp VARCHAR(100) NOT NULL; -ALTER TABLE eval_izvajalec ADD PRIMARY KEY (idp, idpedagoga, nacin_studija); - -ALTER TABLE eval_student ADD nacin_studija TINYINT(1) NOT NULL AFTER letnik; -ALTER TABLE eval_student ADD lokacija VARCHAR(200) NOT NULL AFTER nacin_studija; -ALTER TABLE eval_student_podipl ADD nacin_studija TINYINT(1) NOT NULL AFTER vrsta_vpisa; -ALTER TABLE eval_student_podipl ADD lokacija VARCHAR(200) NOT NULL AFTER nacin_studija; -ALTER TABLE eval_fakulteta ADD active TINYINT(1) NOT NULL DEFAULT '0'; -ALTER TABLE eval_student DROP smer; -ALTER TABLE eval_student DROP fakulteta; -ALTER TABLE eval_student_podipl DROP fakulteta; -ALTER TABLE eval_student DROP PRIMARY KEY; -ALTER TABLE eval_student ADD PRIMARY KEY (id_student, id_program); - -ALTER TABLE eval_data_anketaPred CHANGE predmet predmet VARCHAR(100) NOT NULL; -ALTER TABLE eval_data_anketaPo CHANGE predmet predmet VARCHAR(100) NOT NULL; - -ALTER TABLE eval_izvajalec CHANGE idp idp INT(11) NOT NULL; - -ALTER TABLE eval_student ADD fakulteta INT(11) NOT NULL; - -# 14.12.2015 -ALTER TABLE eval_data_userCookie CHANGE predmet predmet VARCHAR(100) NOT NULL; - -# 10.2.2016 -ALTER TABLE eval_program ADD vrsta VARCHAR(200) NOT NULL; - -# 25.3.2016 -# Testna tabela izvajalcev in njihovih predmetov - za pomoc pri uvozu popravkov 2. semestra -CREATE TABLE eval_izvajalec2( - idp INT(11) NOT NULL, - predmet VARCHAR(200) NOT NULL, - idpedagoga VARCHAR(100) NOT NULL, - ime_pedagoga VARCHAR(200) NOT NULL, - nacin_studija TINYINT(1) NOT NULL, - semester_izv TINYINT(1) NOT NULL, - st_kt INT(11) NOT NULL, - st_stud INT(11) NOT NULL, - nosilec TINYINT(1) NOT NULL, - stopnja TINYINT(1) NOT NULL, - praksa TINYINT(1) NOT NULL DEFAULT 0, - fakulteta INT(11) NOT NULL, - PRIMARY KEY (idp, idpedagoga, nacin_studija) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -ALTER TABLE eval_student_podipl ADD fakulteta INT(11) NOT NULL; - -# 23.10.2016 -CREATE TABLE eval_data_user( - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - usr_id INT(11) NOT NULL, - PRIMARY KEY (ank_id, usr_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -# 2.9.2019 -CREATE TABLE eval_data_podipl2 ( - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - PRIMARY KEY (student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -# 21.7.2021 -ALTER TABLE eval_fakulteta ADD anketa_podipl3 INT(11) NOT NULL DEFAULT '0' AFTER anketa_podipl2; - -CREATE TABLE eval_data_podipl3 ( - student VARCHAR(50) NOT NULL, - ank_id INT(11) NOT NULL, - PRIMARY KEY (student) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; diff --git a/admin/survey/modules/Evalvacija/temp/.gitignore b/admin/survey/modules/Evalvacija/temp/.gitignore deleted file mode 100644 index f607e1a2c..000000000 --- a/admin/survey/modules/Evalvacija/temp/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -* -!navodila.xlsx -!.gitignore \ No newline at end of file diff --git a/admin/survey/modules/Evalvacija/temp/navodila.xlsx b/admin/survey/modules/Evalvacija/temp/navodila.xlsx deleted file mode 100644 index d2becc98c..000000000 Binary files a/admin/survey/modules/Evalvacija/temp/navodila.xlsx and /dev/null differ diff --git a/settings.php b/settings.php deleted file mode 100644 index c6e19e0db..000000000 --- a/settings.php +++ /dev/null @@ -1,45 +0,0 @@ - [id_user, skrita_koda]] - */ - -$data_export_ajax_access = []; -?> diff --git a/settings.php.example b/settings.php.example index 36d27ce00..ce8c6661b 100644 --- a/settings.php.example +++ b/settings.php.example @@ -3,27 +3,32 @@ /** * Splošne nastavitve spletne strani */ -$site_domain = ''; // Domena spletne strani (primer: 1ka.si) -$site_url = ''; // Url, kjer se nahaja domena (primer: http://1ka.si/) +$site_domain = 'localhost'; // Domena spletne strani (primer: 1ka.si) +$site_url = 'http://localhost:81/'; // Url, kjer se nahaja domena (primer: http://1ka.si/) $site_root = $_SERVER['DOCUMENT_ROOT'] .'/'; -$site_path = ''; // Pot do direktorija na strežniku (primer: /var/www/1ka/) -$site_frontend = 'drupal'; // Lahko izberamo med dvema: drupal ali simple +$site_path = '/var/www/html/'; // Pot do direktorija na strežniku (primer: /var/www/1ka/) +$site_frontend = 'simple'; // Lahko izberamo med dvema: drupal ali simple -$cookie_domain = ''; // (primer: 1ka.si) +$cookie_domain = 'localhost'; // (primer: 1ka.si) /** * Za generiranje salt stringa se uporabi utils/create_salt.php, ki ga kopirate v spremenljivko $pass_salt * Uporabite enojne narekovaje '' */ -$pass_salt = ''; +$pass_salt = 'w45p789zgu6rza%EJDF/(IJKDu7tjsprt8hjny9pr568hag4XydfvdsfvdfGFHntUZIMiuIUUZ76575645z4$#%Z64h4'; /** * Nastavitve podatkovne baze */ -$mysql_server = 'localhost'; -$mysql_username = ''; -$mysql_password = ''; -$mysql_database_name = ''; +$mysql_server = 'db'; +$mysql_username = '1ka'; + +# Nastavi geslo. Privzeto za docker je "1ka". +$mysql_password = '1ka'; +$mysql_database_name = '1ka'; + + +$minify_builder_password = 'admin'; /** @@ -42,4 +47,4 @@ $fieldwork_install = false; */ $data_export_ajax_access = []; - +?>