nyttdf <- select(df, breyta, breyta, breyta)Breyta gagnasafni
Velja breytur:
nyttdf <- select(df, breyta:breyta)- Nú haldast þessar breytur og allar þar á milli
nyttdf <- subset(df, select=c(breyta, breyta, breyta))nyttdf <- df[1:5,] #breytur nr. 1-5 er haldið í nýju gagnasafniEitt gildi (level) á tiltekinni breytu:
nyttdf <- df[df$variable == value,]nyttdf <- filter(df, variable == value)Eitt gildi (level) á mörgum breytum:
nyttdf <- df [which(df$breyta =="orð" & breyta2 > 50), ] #bara gildi yfir 50 á breytu2
detach(df)Mörg gildi (levels) á tiltekinni breytu:
nyttdf <- filter(df, breyta %in% c(“gildi1”,“gildi2”,“gildi3”))- Viðbótin %>% droplevels() fjarlægir þau gildi sem við erum ekki lengur að nota.
Flóknari leið sem gæti gagnast:
#Bý til hlut sem skilgreinir gildin sem ég vil halda.
hlutur <- c(“gildi”,“gildi”,“gildi”)
#Sía gildi á breytunni út frá skilgreiningu hlutarins sem ég bjó til og fjarlægi þau gildi sem eru ekki lengur í notkun.
df <- filter(df, breyta %in% hlutur) %>% droplevels()Mörg gildi á einni breytu, aðeins eitt gildi á annarri:
nyttdf <- filter(df, breyta1 %in% c(gildi1, gildi2, gildi3), breyta2=="gildi") %>% droplevels()nyttdf <- filter(df, breyta1=="gildi1" | breyta1=="gildi2" | breyta1=="gildi3", breyta2=="gildi") %>% droplevels() #ath. það þarf ekki gæsalappir ef gildin eru tölur í stað orða- Athugið að pípur (%>%) koma frá pakkanum dplyr
Bara raðir þar sem gildi breytu eru á ákveðnu bili.
nyttdf <- filter(df, breyta1 >= 50 & breyta1 <=60) #Vel úr raðir sem taka gildi á bilinu 50 til 60 á breytu 1 nyttdf <- subset(df, breyta >= gildi | breyta2 < gildi, select=c(breyta, breyta))Sameina gagnaskrár.
nyttdf <- merge(df1, df2)nyttdf <- rbind(df1, df2) #Þetta sameinar gögn út frá röðumnyttdf <- cbind(df1, df2) #Þetta sameinar gögn út frá dálkumSameina tvær gagnaskrár byggt á eiginleikum
bind_rows(list(df1, df2), .id="nafn hópa")bind_rows("nafn á hóp1" = df1, "nafn á hóp2" = df2, .id ="hópar")Fjarlægja breytur
Fjarlægja eina breytu
df$breyta <- NULLFjarlægja margar breytur
df <- df %>% select(-c(breyta1, breyta2))df$breyta1 <- df$breyta2 <- NULLhlutur <- names(df) %in% c("breyta","breyta","breyta") #Bý til hlut sem skilgreinir þær breytur sem eiga að fara
nyttdf <- df[!hlutur] #Nýtt gagnasafn úr eldra gagnasafni sem inniheldur ekki breyturnarAnnað
Fjarlægja attributes í gagnasafni
df[] <- lapply(df, function(x) { attributes(x) <- NULL; x })Taka handahófskennt úrtak (sample) úr gagnasafni
- Ný gildi fást í hvert sinn sem skipunin er keyrð, hægt að nota set.seed(0410) til að fá alltaf sömu niðurstöður. # ath. að gildunum má skipta út fyrir hvað sem er
#Fæ 500 handahófskennd gildi úr df
df <- df[sample(1:dim(df)[1],500,] #Fæ aftur 500 handahófskennd gildi úr df
df <- sample_n(df,500) hlutur <- df[sample(nrow(df), 500), ]Fjarlægja missing
df <- na.omit(df)df <- data[complete.cases(df), ]Skilgreina missing
#Hér er ég að skilgreina að gildið 99 endurspegli missing.
df$breyta[df$breyta == 99] <- NA