R okvir podataka: Kako stvoriti, dodati, odabrati & Podskup

Sadržaj:

Anonim

Što je okvir podataka?

Okvir podataka je popis vektora koji su jednake duljine. Matrica sadrži samo jednu vrstu podataka, dok podatkovni okvir prihvaća različite vrste podataka (numeričke, znakove, faktore itd.).

U ovom vodiču naučit ćete-

  • Što je okvir podataka?
  • Kako stvoriti okvir podataka
  • Dodaj stupac u okvir podataka
  • Odaberite stupac podatkovnog okvira
  • Podskup podatkovnog okvira

Kako stvoriti okvir podataka

Okvir podataka možemo stvoriti u R dodavanjem varijable a, b, c, d u funkciju data.frame (). Možemo R stvoriti okvir podataka i imenovati stupce imenom () i jednostavno odrediti naziv varijabli.

data.frame(df, stringsAsFactors = TRUE)

Argumenti :

  • df : To može biti matrica za pretvaranje kao okvir podataka ili zbirka varijabli koje treba pridružiti
  • stringsAsFactors : Pretvori niz u faktor prema zadanim postavkama

Možemo stvoriti okvir podataka u R za naš prvi skup podataka kombiniranjem četiri varijable iste duljine.

# 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

Izlaz:

## 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

Možemo vidjeti da zaglavlja stupaca imaju isto ime kao i varijable. Naziv stupca u R možemo promijeniti s imenima funkcija (). U nastavku pogledajte primjer R create dataframe:

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

Izlaz:

## 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)

Izlaz:

## '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

Prema zadanim postavkama okvir podataka vraća varijable niza kao faktor.

Okvir podataka za kriške

Moguće je SLICE vrijednosti podatkovnog okvira. Odabiremo retke i stupce koje ćemo vratiti u zagradu prethodeći imenu okvira podataka.

Okvir podataka sastoji se od redaka i stupaca, df [A, B]. A predstavlja retke, a B stupce. Narezati možemo određivanjem redaka i / ili stupaca.

Na slici 1 lijevi dio predstavlja redove, a desni dio stupce . Imajte na umu da simbol: sredstva za . Na primjer, 1: 3 namjerava odabrati vrijednosti od 1 do 3.

U donjem dijagramu prikazan je način pristupa različitom odabiru okvira podataka:

  • Žuta strelica odabire redak 1 u stupcu 2
  • Zelena strelica odabire retke 1 do 2
  • Crvena strelica odabire stupac 1
  • Plava strelica odabire retke 1 do 3 i stupce 3 do 4

Imajte na umu da će, ako pustimo lijevi dio praznim, R odabrati sve retke . Po analogiji, ako pustimo desni dio praznim, R će odabrati sve stupce .

Kôd možemo pokrenuti u konzoli:

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

Izlaz:

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

Izlaz:

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

Izlaz:

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

Izlaz:

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

Također je moguće odabrati stupce s njihovim imenima. Na primjer, kod u nastavku izdvaja dva stupca: ID i spremište.

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

Izlaz:

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

Dodaj stupac u okvir podataka

Također možete dodati stupac Data Frameu. Morate upotrijebiti simbol $ za dodavanje varijable podatkovnog okvira R i dodavanje stupca podatkovnom okviru u R.

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

Izlaz:

## 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

Napomena: Broj elemenata u vektoru mora biti jednak broju elemenata u podatkovnom okviru. Izvršavanje sljedeće izjave za dodavanje stupca u okvir podataka R

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

Daje pogrešku:

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

Odaberite stupac podatkovnog okvira

Ponekad moramo pohraniti stupac podatkovnog okvira za buduću upotrebu ili izvesti operaciju na stupcu. Znakom $ možemo odabrati stupac iz okvira podataka.

# Select the column IDdf$ID

Izlaz:

## [1] 1 2 3 4

Podskup podatkovnog okvira

U prethodnom smo odjeljku odabrali čitav stupac bez uvjeta. Moguće je izvršiti podskup na temelju toga je li određeni uvjet bio istinit.

Koristimo funkciju podskup ().

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

Želimo vratiti samo predmete čija je cijena veća od 10, možemo učiniti:

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

Izlaz:

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