jakazarnik / APPR-2018-19

Repozitorij z gradivi za predmet Analiza podatkov s programom R v študijskem letu 2018/19
MIT License
0 stars 0 forks source link

zemljevid, problem z uvozom #6

Open jakazarnik opened 5 years ago

jakazarnik commented 5 years ago

mapa moj_uvoz.r se mi noce source-at, pognat jo moram z run-om vsako vrstico posebej oziroma lahko oznacim vse in jih pozenem z run. Posledicno ne deluje tudi moj_projekt.rmd, saj ne najde objekta iz mape moj_uvoz ("Error object 'povrsine' not found").

Druga stvar: zemljevid mi lepo deluje, vendar se nekatere regije ne barvajo. Mislim da so tezava sumniki.

MarvinHerzog commented 5 years ago

https://github.com/jakazarnik/APPR-2018-19/blob/568734e4bbba01445a6a2464089766aed214289a/uvoz/moj_uvoz.R#L33-L34

Na vrsticah 33-34 delaš join na tabelo povrsine, ki jo uvoziš komaj v 46 vrstici.
https://github.com/jakazarnik/APPR-2018-19/blob/568734e4bbba01445a6a2464089766aed214289a/uvoz/moj_uvoz.R#L46 Zamenjaj vrstni red teh pa bo delovalo. Glede zemljevida: res ima težave s šumniki

> Slovenija$NAME_1 %>%  unique
 [1] Gorenjska             Goriška              Spodnjeposavska       Zasavska              Jugovzhodna Slovenija
 [6] Koroška              Notranjsko-kraška    Obalno-kraška        Osrednjeslovenska     Podravska            
[11] Pomurska              Savinjska          

Temu se izogneš tako, da v klic funkcije uvozi.zemljevid dodaš encoding = "UTF-8". To bo pobarvalo nekaj dodatnih regij, ne pa vseh. Pri preostalih je problem neujemanje v imenih regij v objektu za zemljevid Slovenija ter v tabela_selitve (npr. "Primorsko-notranjska"). Imena teh boš moral ročno poenotiti med obema tabelama, preden narediš join.

jakazarnik commented 5 years ago

glede sumnikov v zemljevidu sem popravil, ne vem pa kako naj popravim imena pokrajin Spodnjeposavska v Posavska in Notranjsko-kraška v Primorsko-notranjska. Rad bi jih spremenil v objektu zemljevid Slovenija, ker so povsod drugod pravilna imena, tam pa zastarela.

se vedno pa mi noce sourcati uvoza: Error in source("~/Documents/Faks/2. letnik/Analiza podatkov s programom R/PROJEKT/APPR-2018-19/uvoz/moj_uvoz.R", : /Documents/Faks/2. letnik/Analiza podatkov s programom R/PROJEKT/APPR-2018-19/uvoz/moj_uvoz.R:56:28: unexpected INCOMPLETE_STRING 55: tabela_umrli <- umrli %>% group_by(regija, spol) %>% summarise(stevilo=sum(stevilo)) 56: tabela_umrli[tabela_umrli=="Umrli -

In addition: Warning message: In readLines(file, warn = FALSE) : invalid input found on input connection '~/Documents/Faks/2. letnik/Analiza podatkov s programom R/PROJEKT/APPR-2018-19/uvoz/moj_uvoz.R'

MarvinHerzog commented 5 years ago

Imena lahko popraviš tako:

Slovenija<-Slovenija %>%  mutate(NAME_1 = replace(NAME_1 %>% as.character,NAME_1=="Spodnjeposavska","Posavska")) %>%
  mutate(NAME_1 = replace(NAME_1,NAME_1=="Notranjsko-kra\U00161ka","Primorsko-notranjska") %>% as.factor)

Preveri prosim, če se je pravilno zamenjalo z ukazom

Slovenija$NAME_1 %>% unique

Tisti šumnik v Notranjsko-kraška zna delat probleme pri dplyr zamenjavi, zato nisem prepričan če bo tudi tebi delalo pravilno.

Glede sourcanja uvoza, ustavi se ti v 56 vrstici, kjer želiš menjati vrednosti stolpca spol v tabela_umrli. Naslednja vrstica ne bi smela delovati, saj nisi označil, da želiš preverjati enakost v stolpcu za spol.

tabela_umrli[tabela_umrli=='Umrli - ženske'] <-'zenska'

Pravilen zapis bi zgledal nekako tako:

tabela_umrli$spol[tabela_umrli$spol=="Umrli - ženske"] <- 'zenska'

Je pa tu (vsaj pri meni) težava z ujemanjem na characterjih, ki vsebujejo šumnike (podobno kot pri zemljevidu). Morda obstaja bolj elegantna rešitev, jaz sem to ponovno rešil z unicode znaki.

tabela_umrli$spol[tabela_umrli$spol==paste0("Umrli - \U0017E","enske")] <- "zenska"

Oz. če želiš rešitev po principu dplyr-a, lahko to narediš takole:

tabela_umrli<-tabela_umrli %>% mutate(spol=replace(spol,spol==paste0("Umrli - \U0017E","enske"),"zenska"))

Na tak način popravi vrstice, kjer delaš tovrstne zamenjave. Zna pa biti, da ti ne prevede te vrstice zaradi šumnikov. Če še nisi, pojdi pod R zavihki zgoraj desno > file>reopen with encoding > UTF-8. V primeru, da še vedno ne bo delovalo, pa kar napiši tu spodaj.