Open AnjaTrobec opened 5 years ago
Zdravo, bom kar po točkah poskušal odgovoriti na zastavljena vprašanja:
$
(ali katerikoli R-jev operator). Tako ima lahko stolpec ime npr. prve.sklenitve.zenin
(oz. lahko tudi kakšno ustrezno krajše poimenovanje, saj dolgo poimenovanje stolpcev v nadaljevanju zagotovo ne bo praktično).col.names
ne deluje, lahko pa imena stolpcev spremeniš v naslednji vrstici z ukazom
colnames(tabela2) <- c("starostni.tip", paste0("", 2011:2018))
Podobno lahko narediš tudi pri ostali tabelah pri katerih imaš podobne težave.
regija
, v katerega shraniš ime regije, na koncu pa vse te posamezne tabele združiš v skupno tabelo z uporabo funkcije rbind
, ki deluje tako da podane tabele združi po vrsticah (praktično vrstice ene tabele le prilepi skupni tabeli). Tu pazi, da imajo tabele enako število stolpcev, morda morajo biti ti tudi enako poimenovani. Za 3 tabele bi to naredil na sledeči način:
poroceni.koroska <- read_csv2("podatki/poroceni-koroska.csv", skip=5, col_names = c("starostni.tip", paste0("", 2011:2018)), locale = locale(decimal_mark = ",", grouping_mark = "."))
poroceni.koroska$regija <- c("Koroška")
poroceni.gorenjska <- read_csv2("podatki/poroceni-gorenjska.csv", skip=5, col_names = c("starostni.tip", paste0("", 2011:2018)), locale = locale(decimal_mark = ",", grouping_mark = "."))
poroceni.gorenjska$regija <- c("Gorenjska")
poroceni.primorska <- read_csv2("podatki/poroceni-primorska.csv", skip=5, col_names = c("starostni.tip", paste0("", 2011:2018)), locale = locale(decimal_mark = ",", grouping_mark = "."))
poroceni.primorska$regija <- c("Primorska")
poroceni <- rbind(poroceni.koroska, poroceni.gorenjska, poroceni.primorska)
Podobno lahko narediš še za dodatne tabele in na koncu vse te tabele združiš v končno tabelo. Tako bi uvoz moral delovati.
Dodal pa bi, da potem ta končna tabela (v morem primeru tabela poroceni
) še ni v obliki tidy data
. Do te oblike jo lahko preurediš z uporabo funkcije melt
, ki smo jo obravnavali na prejšnjih vajah (lahko pa kaj več o njej izveš tudi tako, da v konzolo napišeš ?melt
in to poženeš).
Najlepša hvala za pomoč! Ampak žal velika tabela poroceni ne deluje in ne razumem zakaj.
Namesto read.csv2
(s piko) uporabljaj read_csv2
(s podčrtajem). Slednja funkcija se uvozi s knjižnico readr
in je veliko bolj fleksibilna kot prejšnja (vgrajena) funkcija.
Če si že sproti pozorna na R
-ove odgovore, ti R
neprestano vrača napake (tj. Error
-je, tako se tudi začne R-ov "odgovor") in ne samo opozoril (tj. Warning
-ov). Problem je, ker se ti že vse pozamezne tabele (npr. poroceni.koroska
in ostale) niso uvozile. Problem je v tem, ker sam sam uporabil za uvoz funkcijo read_csv2
in ne funkcije read.csv2
(razlike med funkcijama sicer niso zelo velike, pri poimenovanju je pa razlika le v podčrtaju), ti funkciji se pa razlikujeta tudi po imenih parametrov (read_csv2
spejme parameter col_names
, read.csv2
pa parameter col.names
za imena stolpcev, pa tudi uporaba funckije locale
je drugačna). Funckijo read_csv2
sem uporabil zato, ker smo jo tudi na vajah več uporabljali. Tako da, v kolikor uporabiš funkcijo read_csv2
iz knjižice readr
(v kolikor te knjižice še nimaš jo najprej uvozi, nato pa pokliči z uproabo library(readr)
, bi uvoz s temi parametri moral delovati.
Bodi pa pozorna, da ti v uvozu vsake tabele posebej parameter skip
iz začetka odšteje pravo število vrstic (sam namreč nisem pregledoval vseh .csv
datotek, tako da nevem če je število začetnih nepotrebnih vrstic enako).
Najlepša hvala za pomoč!
Pozdravljeni, zanima več stvari. Medtem ko sem ustvarjala datoteko za uvoz, sem pod opombe pisala kaj se mi ne izide. Prosila bi vas če se sprehodite po moji (kratki) datoteki in mi pomagate z naslednjimi težavami:
Hvala za pomoč!