R datu rāmis: kā izveidot, pievienot, atlasīt & Apakškopa

Satura rādītājs:

Anonim

Kas ir datu rāmis?

Dati rāmis ir saraksts ar vektoru, kas ir vienāda garuma. Matricā ir tikai viena veida dati, savukārt datu rāmī tiek pieņemti dažādi datu tipi (ciparu, rakstzīmju, koeficientu utt.).

Šajā apmācībā jūs uzzināsiet

  • Kas ir datu rāmis?
  • Kā izveidot datu rāmi
  • Pievienojiet kolonnu datu rāmim
  • Atlasiet datu rāmja kolonnu
  • Datu rāmja apakškopa

Kā izveidot datu rāmi

Mēs varam izveidot datu ietvaru R, nododot mainīgo a, b, c, d funkcijai data.frame (). Mēs varam R izveidot datu ietvaru un nosaukt kolonnas ar nosaukumu () un vienkārši norādīt mainīgo nosaukumu.

data.frame(df, stringsAsFactors = TRUE)

Argumenti :

  • df : tā var būt matrica, kuru konvertēt kā datu rāmi vai mainīgo lielumu kolekciju, lai pievienotos
  • stringsAsFactors : pēc noklusējuma pārveidojiet virkni faktorā

Mēs varam izveidot datu ietvaru R mūsu pirmajai datu kopai, apvienojot četrus vienāda garuma mainīgos.

# 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

Izeja:

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

Kolonnu galvenēm ir tāds pats nosaukums kā mainīgajiem. Kolonnas nosaukumu R var mainīt ar funkciju nosaukumiem (). Pārbaudiet tālāk redzamo R izveidošanas datu ietvara piemēru:

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

Izeja:

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

Izeja:

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

Pēc noklusējuma datu rāmis kā faktoru atgriež virknes mainīgos.

Šķēles datu rāmis

Ir iespējams sagriezt datu rāmja vērtības. Mēs atlasām rindas un kolonnas, kuras atgriezties iekavās, pirms datu rāmja nosaukuma.

Datu rāmi veido rindas un kolonnas, df [A, B]. A apzīmē rindas un B kolonnas. Mēs varam sadalīt, norādot rindas un / vai kolonnas.

No 1. attēla kreisā daļa apzīmē rindas, un labā daļa ir kolonnas . Ievērojiet, ka simbola: līdzekļi , lai . Piemēram, 1: 3 ir paredzēts atlasīt vērtības no 1 līdz 3.

Zemāk redzamajā diagrammā mēs parādīsim, kā piekļūt dažādu datu rāmja izvēlei:

  • Dzeltenais arrow izvēlas rindu 1 in kolonnā 2
  • Zaļā bultiņa atlasa 1. līdz 2. rindu
  • Sarkanā bultiņa atlasa 1. kolonnu
  • Zilā bultiņa atlasa 1. līdz 3. rindu un 3. līdz 4. kolonnu

Ņemiet vērā, ka, atstājot kreiso daļu tukšu, R atlasīs visas rindas . Pēc analoģijas, ja labo daļu atstāsim tukšu, R atlasīs visas kolonnas .

Mēs varam palaist kodu konsolē:

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

Izeja:

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

Izeja:

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

Izeja:

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

Izeja:

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

Ir arī iespējams atlasīt kolonnas ar to nosaukumiem. Piemēram, zemāk esošais kods izvelk divas kolonnas: ID un store.

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

Izeja:

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

Pievienojiet kolonnu datu rāmim

Kolonnu varat pievienot arī datu rāmim. Jums ir jāizmanto simbols $, lai pievienotu mainīgā datu rāmja mainīgo un kolonnu pievienotu datu bāzei R.

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

Izeja:

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

Piezīme: Elementu skaitam vektorā jābūt vienādam ar elementu skaitu datu rāmī. Izpilda šo paziņojumu, lai pievienotu kolonnu datu ietvaram R

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

Sniedz kļūdu:

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

Atlasiet datu rāmja kolonnu

Dažreiz mums ir jāuzglabā datu rāmja kolonna turpmākai izmantošanai vai jāveic kolonnas darbība. Mēs varam izmantot $ zīmi, lai atlasītu kolonnu no datu rāmja.

# Select the column IDdf$ID

Izeja:

## [1] 1 2 3 4

Datu rāmja apakškopa

Iepriekšējā sadaļā mēs atlasījām visu kolonnu bez nosacījuma. Ir iespējams sadalīt apakškopā, pamatojoties uz to, vai noteikts nosacījums bija vai nav.

Mēs izmantojam apakškopas () funkciju.

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

Mēs vēlamies atgriezt tikai preces, kuru cena pārsniedz 10, un mēs varam darīt:

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

Izeja:

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