R-tietokehys: Kuinka luoda, liittää, valita & Alajoukko

Sisällysluettelo:

Anonim

Mikä on tietokehys?

Datakehys on luettelo vektorit, jotka ovat yhtä pitkiä. Matriisi sisältää vain yhden tyyppisen datan, kun taas datakehys hyväksyy erilaisia ​​tietotyyppejä (numeerinen, merkki, tekijä jne.).

Tässä opetusohjelmassa opit-

  • Mikä on tietokehys?
  • Tietokehyksen luominen
  • Liitä sarake tietokehykseen
  • Valitse tietokehyksen sarake
  • Alaryhmä tietokehys

Tietokehyksen luominen

Voimme luoda datakehyksen R: ssä siirtämällä muuttujan a, b, c, d funktioon data.frame (). Voimme R luoda datakehyksen ja nimetä sarakkeet nimellä () ja yksinkertaisesti määrittää muuttujien nimet.

data.frame(df, stringsAsFactors = TRUE)

Väitteet :

  • df : Se voi olla matriisi, joka muunnetaan datakehykseksi tai muuttujien kokoelma liittymistä varten
  • stringsAsFactors : Muunna merkkijono tekijäksi oletuksena

Voimme luoda tietokehyksen R: ään ensimmäiselle tietojoukollemme yhdistämällä neljä samanpituista muuttujaa.

# 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

Tuotos:

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

Voimme nähdä, että sarakeotsikoilla on sama nimi kuin muuttujilla. Voimme muuttaa sarakkeen nimen R-funktioiden nimillä (). Tarkista alla oleva R create dataframe -esimerkki:

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

Tuotos:

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

Tuotos:

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

Datakehys palauttaa oletusarvoisesti merkkijonomuuttujat tekijänä.

Viipaloitu tietokehys

Datakehyksen arvot voidaan leikata. Valitsemme suluiksi palautettavat rivit ja sarakkeet ennen tietokehyksen nimeä.

Datakehys koostuu riveistä ja sarakkeista, df [A, B]. A edustaa rivejä ja B sarakkeita. Voimme leikata joko määrittämällä rivit ja / tai sarakkeet.

Kuvasta 1 vasen osa edustaa rivejä ja oikea osa on sarakkeita . Huomaa, että symboli: keinot on . Esimerkiksi 1: 3 aikoo valita arvot 1 - 3.

Alla olevassa kaaviossa näytämme, kuinka pääset eri kehykseen tietokehyksestä:

  • Keltainen nuoli valitsee rivin 1 sarakkeessa 2
  • Vihreä nuoli valitsee rivit 1-2
  • Punainen nuoli valitsee sarakkeen 1
  • Sininen nuoli valitsee rivit 1-3 ja sarakkeet 3-4

Huomaa, että jos annamme vasemman osan tyhjäksi, R valitsee kaikki rivit . Vastaavasti, jos annamme oikean osan tyhjäksi, R valitsee kaikki sarakkeet .

Voimme suorittaa koodin konsolissa:

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

Tuotos:

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

Tuotos:

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

Tuotos:

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

Tuotos:

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

On myös mahdollista valita sarakkeet niiden nimillä. Esimerkiksi alla oleva koodi poimii kaksi saraketta: ID ja store.

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

Tuotos:

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

Liitä sarake tietokehykseen

Voit myös liittää sarakkeen tietokehykseen. Sinun on käytettävä symbolia $ liittämään datakehys R-muuttuja ja lisäämällä sarake datakehykseen R.

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

Tuotos:

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

Huomaa: Vektorin elementtien lukumäärän on oltava yhtä suuri kuin datakehyksessä olevien elementtien lukumäärä. Suoritetaan seuraava käsky sarakkeen lisäämiseksi datakehykseen R

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

Antaa virheen:

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

Valitse tietokehyksen sarake

Joskus meidän on tallennettava tietokehyksen sarake tulevaa käyttöä varten tai suoritettava operaatio sarakkeessa. Voimme käyttää $ -merkkiä valitaksesi sarakkeen datakehyksestä.

# Select the column IDdf$ID

Tuotos:

## [1] 1 2 3 4

Alaryhmä tietokehys

Edellisessä osassa valitsimme kokonaisen sarakkeen ilman ehtoja. On mahdollista eritellä sen perusteella, oliko tietty ehto totta vai ei.

Käytämme osajoukko () -toimintoa.

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

Haluamme palauttaa vain tuotteet, joiden hinta on yli 10, voimme tehdä:

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

Tuotos:

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