R Data Frame: Kako ustvariti, dodati, izbrati & Podnabor

Kazalo:

Anonim

Kaj je podatkovni okvir?

Podatkovni niz je seznam vektorjev, ki so enako dolgi. Matrica vsebuje samo eno vrsto podatkov, medtem ko podatkovni okvir sprejema različne vrste podatkov (številske, znakovne, faktorjske itd.).

V tej vadnici boste izvedeli-

  • Kaj je podatkovni okvir?
  • Kako ustvariti podatkovni okvir
  • Dodaj stolpec v podatkovni okvir
  • Izberite stolpec podatkovnega okvira
  • Podnastavite podatkovni okvir

Kako ustvariti podatkovni okvir

Podatkovni okvir lahko ustvarimo v R, tako da spremenljivko a, b, c, d prenesemo v funkcijo data.frame (). R lahko ustvarimo podatkovni okvir in stolpce poimenujemo z imenom () in preprosto določimo ime spremenljivk.

data.frame(df, stringsAsFactors = TRUE)

Argumenti :

  • df : Lahko je matrika za pretvorbo kot podatkovni okvir ali zbirka spremenljivk, ki jih želite združiti
  • stringsAsFactors : Privzeto pretvori niz v faktor

Podatkovni okvir v R lahko ustvarimo za prvi nabor podatkov s kombiniranjem štirih spremenljivk iste dolžine.

# Create a, b, c, d variablesa <- c(10,20,30,40)b <- c('book', 'pen', 'textbook', 'pencil_case')c <- c(TRUE,FALSE,TRUE,FALSE)d <- c(2.5, 8, 10, 7)# Join the variables to create a data framedf <- data.frame(a,b,c,d)df

Izhod:

## a b c d## 1 1 book TRUE 2.5## 2 2 pen TRUE 8.0## 3 3 textbook TRUE 10.0## 4 4 pencil_case FALSE 7.0

Opazimo, da imajo glave stolpcev enako ime kot spremenljivke. Ime stolpca v R lahko spremenimo z imeni funkcij (). Spodaj preverite primer R create dataframe:

# Name the data framenames(df) <- c('ID', 'items', 'store', 'price')df

Izhod:

## ID items store price## 1 10 book TRUE 2.5## 2 20 pen FALSE 8.0## 3 30 textbook TRUE 10.0## 4 40 pencil_case FALSE 7.0
# Print the structurestr(df)

Izhod:

## 'data.frame': 4 obs. of 4 variables:## $ ID : num 10 20 30 40## $ items: Factor w/ 4 levels "book","pen","pencil_case",… : 1 2 4 3## $ store: logi TRUE FALSE TRUE FALSE## $ price: num 2.5 8 10 7

Privzeto podatkovni okvir kot faktor vrne spremenljivke niza.

Rezalni okvir podatkov

Možno je SLICE vrednosti podatkovnega okvira. Izberemo vrstice in stolpce, ki se vrnejo v oklepaje, pred katerimi je ime podatkovnega okvira.

Podatkovni okvir je sestavljen iz vrstic in stolpcev, df [A, B]. A predstavlja vrstice, B pa stolpce. Narežemo lahko tako, da določimo vrstice in / ali stolpce.

Na sliki 1 levi del predstavlja vrstice, desni pa stolpce . Upoštevajte, da simbol: sredstva za . Na primer 1: 3 namerava izbrati vrednosti od 1 do 3.

V spodnjem diagramu je prikazano, kako dostopati do drugačne izbire podatkovnega okvira:

  • Rumena puščica izbere vrstico 1 v stolpcu 2
  • Zelena puščica izbere vrstice 1 do 2
  • Rdeča puščica izbere stolpec 1
  • Modra puščica izbere vrstice 1 do 3 in stolpce 3 do 4

Če pustimo levi del prazen, bo R izbral vse vrstice . Če po analogiji pustimo desni del prazen, bo R izbral vse stolpce .

Kodo lahko zaženemo v konzoli:

## Select row 1 in column 2df[1,2]

Izhod:

## [1] book## Levels: book pen pencil_case textbook
## Select Rows 1 to 2df[1:2,]

Izhod:

## ID items store price## 1 10 book TRUE 2.5## 2 20 pen FALSE 8.0
## Select Columns 1df[,1]

Izhod:

## [1] 10 20 30 40
## Select Rows 1 to 3 and columns 3 to 4df[1:3, 3:4]

Izhod:

## store price## 1 TRUE 2.5## 2 FALSE 8.0## 3 TRUE 10.0

Možno je tudi izbrati stolpce z njihovimi imeni. Spodnja koda na primer izvleče dva stolpca: ID in shrambo.

# Slice with columns namedf[, c('ID', 'store')]

Izhod:

## ID store## 1 10 TRUE## 2 20 FALSE## 3 30 TRUE## 4 40 FALSE

Dodaj stolpec v podatkovni okvir

Stolpec lahko dodate tudi v podatkovni okvir. Za dodajanje spremenljivke podatkovnega okvira R in dodajanje stolpca podatkovnemu okviru v R. morate uporabiti simbol $

# Create a new vectorquantity <- c(10, 35, 40, 5)# Add `quantity` to the `df` data framedf$quantity <- quantitydf

Izhod:

## ID items store price quantity## 1 10 book TRUE 2.5 10## 2 20 pen FALSE 8.0 35## 3 30 textbook TRUE 10.0 40## 4 40 pencil_case FALSE 7.0 5

Opomba: Število elementov v vektorju mora biti enako številu elementov v podatkovnem okviru. Izvedba naslednje izjave za dodajanje stolpca v podatkovni okvir R

quantity <- c(10, 35, 40)# Add `quantity` to the `df` data framedf$quantity <- quantity

Daje napako:

Error in `$<-.data.frame`(`*tmp*`, quantity, value = c(10, 35, 40))replacement has 3 rows, data has 4 

Izberite stolpec podatkovnega okvira

Včasih moramo shraniti stolpec podatkovnega okvira za prihodnjo uporabo ali izvesti operacijo v stolpcu. Z znakom $ lahko izberemo stolpec iz podatkovnega okvira.

# Select the column IDdf$ID

Izhod:

## [1] 1 2 3 4

Podnastavite podatkovni okvir

V prejšnjem razdelku smo izbrali celoten stolpec brez pogoja. Podmnožico je mogoče določiti glede na to, ali je bil določen pogoj resničen.

Uporabljamo funkcijo subset ().

subset(x, condition)arguments:- x: data frame used to perform the subset- condition: define the conditional statement

Vrniti želimo samo izdelke s ceno nad 10, lahko naredimo:

# Select price above 5subset(df, subset = price > 5)

Izhod:

ID items store price2 20 pen FALSE 83 30 textbook TRUE 104 40 pencil_case FALSE 7