Open jakazarnik opened 5 years ago
Trenutno imaš fit
zgrajen tako, da napoveduješ leto iz leta, kar seveda ni smiselno. Verjetno želiš napovedovati število iz leta:
fit <- lm(data = tabela_mladi, stevilo ~ leto)
Mimogrede, opažam, da so se v commitu 4a60c6dd šumniki zamenjali z dvema vprašajema. Sklepam, da si datoteke odprl v RStudiu mimo projekta in tako ni bilo uporabljeno pravo kodiranje znakov. Da to popraviš, odpri projekt (APPR-2018-19.Rproj
), nato pa v RStudiu odpri spremenjene datoteke in v njih popravi šumnike.
šumnike sem popravil, vendar sedaj ko na svojem racubnalniku pozenem naprimer moj.uvoz sezatakne pri prvem sumniku in mi sporoca error (sem poiskusil reopen with enc. UTF8). analizo sem tudi popravil in mi izrise lepo premico, vendar vrednosti, ki jih ta aproksimira manjkajo. analizo sem poiskusil pognati tudi na binderju in ta mi javi napako v vrstici predict: Error in eval(predvars, data, env) : invalid 'envir' argument of type 'closure' V binderju mi tudi celotnega projekta ne odpre vec tako kot bi bilo treba,
Glede šumnikov poskusi uporabiti ukaz Sys.setlocale('LC_ALL', 'Slovenian')
. Tega daj nekam na začetek .Rmd datoteke, recimo pod uvoz knjižnic.
Napako dobivaš, ker želiš delati predict
na objektu a
, ki ga nimaš nikjer definiranega. Morda si želel uporabiti predict(fit, cas)
? S tem boš dobil napovedi na željenem obdobju.
Meni binder odpre projekt. Na kak način ti ga ne odpre?
Napaka se pojavi, ker ne definiraš spremenljivke a
(oziroma jo definira ena od uvoženih knjižnic) - verjetno hočeš uporabiti cas
(prav tako pri definiciji spremenljivke napoved
).
Na grafu trenutno prikazuješ samo napovedane podatke. V tabela_mladi
imaš podatke za vsako regijo posebej - lahko bi delal napoved za vsako posebej, lahko pa jih enostavno sešteješ in delaš napoved za sumarne podatke, npr.
tabela_mladi_sum <- tabela_mladi %>% group_by(leto) %>% summarise(stevilo=sum(stevilo))
Potem lahko graf s podatki in napovedjo narišeš tako:
mladi_graf3 <- ggplot(tabela_mladi_sum, aes(x=leto, y=stevilo)) +
geom_smooth(method=lm, se=FALSE, fullrange=TRUE) +
geom_point(data=napoved, color="red", size=3) +
labs(title="Napoved števila mladih", y="število prebivalcev 0-14 let") +
geom_point()
Iz grafa je sicer razvidno, da linearni model v tem primeru ni najboljši.
Kar se tiče šumnikov - ali si prepričan, da imaš odprt projekt (v RStudiu je torej zgoraj desno ime mapi s tvojim projektom in ne Project: (None))? Ali so ti šumniki prej delovali na tem računalniku? Lahko poskusiš še tako, da pri ukazih source
v poročilu dodaš še parameter encoding="UTF-8"
.
sem popravil spremenljivke, vmes sem jo preimenoval in pozabi spremeniti a-je. Sem tudi izbral podatke za celo Slovenijo. Graf mi sedaj deluje vredu vendar so podatki prevec linearni in jih premica natancno prekrije, ce si pravilno ptedstavljam (rdece pike so natancno na premici).
V desnem zgornjem kotu mi pise pravilno APPR-2018-19.
v binderju pa zgleda tako, ko odprem. ce je tako samo na mojem racunalniku nic narobe, bom poiskusil na domacem z windowsi ce dela okej.
slika je napacna, nisem odpiral svojega projekta... Na binderju mi ga lepo odpre.
Sedaj mi vse deluje okej kar se tice odpiranja porocila, zanima me samo se to zakaj se mi na trenutni napovedi se vedno pojavi samo premica, saj podatki za osredjeslo. regijo niso linearni in rdece tocke nebi vec smele lezati na njej? Hvala za pomoc!
Pri ggplot
še vedno podajaš razpredelnico napoved
(namesto npr. tabela_mladi
, iz katere delaš napoved) - če to spremeniš, črne pike ne bodo na premici. Rdeče pike prav tako rišeš iz napoved
in bodo seveda ležale na premici.
V analiza.r zelim narediti linearno (oz. lahko bi tud kaksno drugacno), aproksimacijo. Zadevo sem sestavil po vzorcu, ki bi vsaj priblizno moral delat, vendar mi ko pozenem predict sporoca napako: