2020-08-14 13:36:36 +02:00

90 lines
3.2 KiB
R

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