uadro de dados R: Como criar, anexar, selecionar e subconjunto

O que é um quadro de dados?

PARA quadro de dados é uma lista de vetores de igual comprimento. Uma matriz contém apenas um tipo de dados, enquanto um quadro de dados aceita diferentes tipos de dados (numérico, caractere, fator, etc.).

Neste tutorial, você aprenderá-

Como criar um quadro de dados

Podemos criar um dataframe em R passando a variável a, b, c, d para a função data.frame (). Podemos criar dataframe e nomear as colunas com name () e simplesmente especificar o nome das variáveis.

data.frame(df, stringsAsFactors = TRUE) 

Argumentos :

  • df : Pode ser uma matriz para converter como um quadro de dados ou uma coleção de variáveis ​​para unir
  • stringsAsFactors : Converte string em fator por padrão

Podemos criar um dataframe em R para nosso primeiro conjunto de dados combinando quatro variáveis ​​de mesmo comprimento.

 # Create a, b, c, d variables a <- 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 frame df <- data.frame(a,b,c,d) df 

Resultado:

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

Podemos ver que os cabeçalhos das colunas têm o mesmo nome das variáveis. Podemos alterar o nome da coluna em R com os nomes da função (). Verifique o exemplo de dataframe de criação de R abaixo:

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

Resultado:

 ## 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 structure str(df) 

Resultado:

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

Por padrão, o quadro de dados retorna variáveis ​​de string como um fator.

Slice Data Frame

É possível SLICE os valores de um Data Frame. Selecionamos as linhas e colunas para retornar ao colchete precedidas pelo nome do quadro de dados.

Um quadro de dados é composto de linhas e colunas, df [A, B]. A representa as linhas e B as colunas. Podemos fatiar especificando as linhas e / ou colunas.

Da figura 1, a parte esquerda representa o filas, e a parte certa é o colunas . Observe que o símbolo: significa para . Por exemplo, 1: 3 pretende selecionar valores de 1 para 3

No diagrama abaixo, mostramos como acessar diferentes seleções do quadro de dados:

  • A seta amarela seleciona o fila 1 in coluna dois
  • A seta verde seleciona o filas 1 a 2
  • A seta vermelha seleciona o coluna 1
  • A seta azul seleciona o filas 1 a 3 e colunas 3 a 4

Observe que, se deixarmos a parte esquerda em branco, R selecionará todas as linhas . Por analogia, se deixarmos a parte certa em branco, R selecionará todas as colunas .

Podemos executar o código no console:

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

Resultado:

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

Resultado:

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

Resultado:

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

Resultado:

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

Também é possível selecionar as colunas com seus nomes. Por exemplo, o código abaixo extrai duas colunas: ID e loja.

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

Resultado:

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

Anexar uma coluna ao quadro de dados

Você também pode anexar uma coluna a um quadro de dados. Você precisa usar o símbolo $ para anexar a variável R do dataframe e adicionar uma coluna a um dataframe em R.

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

Resultado:

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

Nota: O número de elementos no vetor deve ser igual ao número de elementos no quadro de dados. Executando a seguinte instrução para adicionar coluna ao dataframe R

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

Dá erro:

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

Selecione uma coluna de um quadro de dados

Às vezes, precisamos armazenar uma coluna de um quadro de dados para uso futuro ou realizar uma operação em uma coluna. Podemos usar o sinal $ para selecionar a coluna de um quadro de dados.

# Select the column ID df$ID

Resultado:

## [1] 1 2 3 4

Subconjunto de um quadro de dados

Na seção anterior, selecionamos uma coluna inteira sem condição. É possível subconjunto com base no fato de uma determinada condição ser verdadeira ou não.

Usamos a função subset ().

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

Queremos devolver apenas os itens com preço acima de 10, podemos fazer:

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

Resultado:

 ID items store price 2 20 pen FALSE 8 3 30 textbook TRUE 10 4 40 pencil_case FALSE 7