BulaRebula / APPR-2019-20

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

Izbris nekaterih vrsic iz tabele #2

Closed BulaRebula closed 4 years ago

BulaRebula commented 4 years ago

Pozdravljeni!

Že več kot en teden se mučim s težavo, da ne morem izbrisati nekaterih vrstic iz moje tabele: Imam tabelo držav, kjer je podatek o njihovem zadovoljstvu in nekatere države tega podatka nimajo (NA). Uspelo mi je narediti seznam teh držav, a na noben način ne morem izbrisati vrstic kjer so omenjene te države. tabela data1 ima podatke iz 2013, tabela data2 pa podatke iz 2018. drzave_kjer_NA_2013 <- data1 %>% filter(is.na(Ocena) == TRUE) %>% select(Drzava) \n drzave_kjer_NA_2018 <- data2 %>% filter(is.na(Ocena) == TRUE) %>% select(Drzava) \n odpadle_drzave <- rbind(drzave_kjer_NA_2013, drzave_kjer_NA_2018) \n seznam <- as.list(odpadle_drzave) \n seznam <- unname(seznam, force=FALSE) \n Objavil bom dva izmed poskusov, ki ne delujejo; data3 <- data1[! data1$Drzava %in% seznam,] \n data4 <- data2[-data2[seznam, which=TRUE]]

katarinabrilej commented 4 years ago

Pri uvozu csv datotek najprej pazi, da pot do datoteke podaš relativne glede na vrhnjo mapo repozitorija kot Podatki/datoteka.csv in ne samo datoteka.csv. Pri drugi tabeli, kjer imaš vrstice z manjkajočimi vrednostmi, dodaš ukaz %>% drop_na(), da odstraniš te vrstice.

data1 <- read_csv2("Podatki/Average_rating_1-10.csv", col_names=c("Drzava","2013"), skip_empty_rows=TRUE, skip=103,n_max=34, na=":",
                    locale=locale(encoding="CP1250"))

 data2 <- read_csv2("Podatki/Average_rating_1-10.csv", col_names=c("Drzava","2018"), skip_empty_rows=TRUE, skip=148,n_max=34, na=":",
                     locale=locale(encoding="CP1250")) %>% drop_na() 

Tabeli potem združiš z inner_join (samo države, ki so skupne obema tabelama), združuješ pa po stolpcu Drzava.

  data <- inner_join(data1,data2, by = c("Drzava"))

Na koncu še preoblikuješ s funkcijo gather.

  data <- gather(data, -Drzava, key = "Leto", value = "Ocena")