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

read.csv2 oziroma read_csv2 #2

Open jakazarnik opened 5 years ago

jakazarnik commented 5 years ago

v uvoz.moj sem tabele uvozil z obema metodama in so mi stvari nekako funkcionirale. Kasneje sem izvedel, da je read_csv2 bolj primeren in sem poskusal vse spremeniti na to opcijo, vendar po spremembi dobim error. npr. pri zivorojeni: zivorojeni <- read_csv2(file = 'podatki/rojstva_regije.csv', header=FALSE, skip=2, encoding='Windows-1250', col.names = c("regija", "leto", "spol", "stevilo"), na=c(" ")) ne deluje. error: Error in read_csv2(file = "podatki/rojstva_regije.csv", header = FALSE, : unused arguments (header = FALSE, encoding = "Windows-1250", col.names = c("regija", "leto", "spol", "stevilo"))

zivorojeni <- read.csv2(file = 'podatki/rojstva_regije.csv', header=FALSE, skip=2, encoding='Windows-1250', col.names = c("regija", "leto", "spol", "stevilo"), na=c(" ")) deluje pa okej.

prav tako sem poiskusil nastaviti: loc <- locale(encoding = "UTF-8", decimal_mark = ".") namesto trenutnih nastavitev in tudi to mi trenutno ne deluje.

Vse pustil v takem stanju, da lahko pozenem in gre skoz.

MarvinHerzog commented 5 years ago

Pozdravljen,

poskusi tako:

loc <- locale(encoding = "Windows-1250", decimal_mark = ".")
zivorojeni <- read_csv2(file = 'podatki/rojstva_regije.csv',skip=2,  col_names = c("regija", "leto", "spol", "stevilo"), na=c(" "),locale = loc)

read_csv2 sprejme malo drugačne parametre kot read.csv2. V drugem delu errorja piše, da ne ve kaj naj z header, encoding - tu encoding parameter nastaviš v locale(), tega pa mu podaš kot locale parameter - ter col.names (uporabiti moraš col_names).

Encoding UTF-8 ti ne bo deloval pri tej csv datoteki. Pri read.csv si že imel izbran pravi encoding, toda če boš kdaj v dvomih, lahko pride prav funkcija guess_encoding.

> guess_encoding("podatki/rojstva_regije.csv")
# A tibble: 2 x 2
  encoding     confidence
  <chr>             <dbl>
1 windows-1250       0.28
2 windows-1252       0.27
jakazarnik commented 5 years ago

Pozdravljen,

poskusi tako:

loc <- locale(encoding = "Windows-1250", decimal_mark = ".")
zivorojeni <- read_csv2(file = 'podatki/rojstva_regije.csv',skip=2,  col_names = c("regija", "leto", "spol", "stevilo"), na=c(" "),locale = loc)

read_csv2 sprejme malo drugačne parametre kot read.csv2. V drugem delu errorja piše, da ne ve kaj naj z header, encoding - tu encoding parameter nastaviš v locale(), tega pa mu podaš kot locale parameter - ter col.names (uporabiti moraš col_names).

Encoding UTF-8 ti ne bo deloval pri tej csv datoteki. Pri read.csv si že imel izbran pravi encoding, toda če boš kdaj v dvomih, lahko pride prav funkcija guess_encoding.

> guess_encoding("podatki/rojstva_regije.csv")
# A tibble: 2 x 2
  encoding     confidence
  <chr>             <dbl>
1 windows-1250       0.28
2 windows-1252       0.27

Hvala!