Qu'est-ce qu'une trame de données?
Une trame de données est une liste de vecteurs de même longueur. Une matrice ne contient qu'un seul type de données, tandis qu'une trame de données accepte différents types de données (numérique, caractère, facteur, etc.).
Dans ce didacticiel, vous apprendrez-
- Qu'est-ce qu'une trame de données?
- Comment créer un bloc de données
- Ajouter une colonne au bloc de données
- Sélectionnez une colonne d'un bloc de données
- Sous-ensemble d'un bloc de données
Comment créer un bloc de données
Nous pouvons créer une dataframe dans R en passant la variable a, b, c, d dans la fonction data.frame (). Nous pouvons créer un dataframe et nommer les colonnes avec name () et spécifier simplement le nom des variables.
data.frame(df, stringsAsFactors = TRUE)
Arguments :
- df : Il peut s'agir d'une matrice à convertir en bloc de données ou d'un ensemble de variables à joindre
- stringsAsFactors : Convertit la chaîne en facteur par défaut
Nous pouvons créer une trame de données dans R pour notre premier ensemble de données en combinant quatre variables de même longueur.
# 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
Production:
## 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
Nous pouvons voir que les en-têtes de colonnes ont le même nom que les variables. Nous pouvons changer le nom de la colonne dans R avec les noms de fonction (). Consultez l'exemple R create dataframe ci-dessous:
# Name the data framenames(df) <- c('ID', 'items', 'store', 'price')df
Production:
## 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)
Production:
## '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
Par défaut, le bloc de données renvoie des variables de chaîne en tant que facteur.
Trame de données de tranche
Il est possible de SLICE les valeurs d'une trame de données. Nous sélectionnons les lignes et les colonnes à remettre entre parenthèses précédées du nom du bloc de données.
Un bloc de données est composé de lignes et de colonnes, df [A, B]. A représente les lignes et B les colonnes. On peut trancher soit en spécifiant les lignes et / ou les colonnes.
À partir de l'image 1, la partie gauche représente les lignes et la partie droite les colonnes . Notez que le symbole: signifie à . Par exemple, 1: 3 a l'intention de sélectionner des valeurs de 1 à 3.
Dans le diagramme ci-dessous, nous montrons comment accéder à différentes sélections de la trame de données:
- La flèche jaune sélectionne la ligne 1 dans la colonne 2
- La flèche verte sélectionne les lignes 1 à 2
- La flèche rouge sélectionne la colonne 1
- La flèche bleue sélectionne les lignes 1 à 3 et les colonnes 3 à 4
Notez que si nous laissons la partie gauche vide, R sélectionnera toutes les lignes . Par analogie, si nous laissons la partie droite vide, R sélectionnera toutes les colonnes .
Nous pouvons exécuter le code dans la console:
## Select row 1 in column 2df[1,2]
Production:
## [1] book## Levels: book pen pencil_case textbook
## Select Rows 1 to 2df[1:2,]
Production:
## ID items store price## 1 10 book TRUE 2.5## 2 20 pen FALSE 8.0
## Select Columns 1df[,1]
Production:
## [1] 10 20 30 40
## Select Rows 1 to 3 and columns 3 to 4df[1:3, 3:4]
Production:
## store price## 1 TRUE 2.5## 2 FALSE 8.0## 3 TRUE 10.0
Il est également possible de sélectionner les colonnes avec leurs noms. Par exemple, le code ci-dessous extrait deux colonnes: ID et store.
# Slice with columns namedf[, c('ID', 'store')]
Production:
## ID store## 1 10 TRUE## 2 20 FALSE## 3 30 TRUE## 4 40 FALSE
Ajouter une colonne au bloc de données
Vous pouvez également ajouter une colonne à un bloc de données. Vous devez utiliser le symbole $ pour ajouter la variable dataframe R et ajouter une colonne à une dataframe dans R.
# Create a new vectorquantity <- c(10, 35, 40, 5)# Add `quantity` to the `df` data framedf$quantity <- quantitydf
Production:
## 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
Remarque: Le nombre d'éléments dans le vecteur doit être égal au nombre d'éléments dans le bloc de données. Exécution de l'instruction suivante pour ajouter une colonne au dataframe R
quantity <- c(10, 35, 40)# Add `quantity` to the `df` data framedf$quantity <- quantity
Donne une erreur:
Error in `$<-.data.frame`(`*tmp*`, quantity, value = c(10, 35, 40))replacement has 3 rows, data has 4
Sélectionnez une colonne d'un bloc de données
Parfois, nous devons stocker une colonne d'une trame de données pour une utilisation future ou effectuer une opération sur une colonne. Nous pouvons utiliser le signe $ pour sélectionner la colonne dans un bloc de données.
# Select the column IDdf$ID
Production:
## [1] 1 2 3 4
Sous-ensemble d'un bloc de données
Dans la section précédente, nous avons sélectionné une colonne entière sans condition. Il est possible de créer un sous-ensemble en fonction du fait qu'une certaine condition était vraie ou non.
Nous utilisons la fonction subset ().
subset(x, condition)arguments:- x: data frame used to perform the subset- condition: define the conditional statement
Nous voulons retourner uniquement les articles dont le prix est supérieur à 10, nous pouvons faire:
# Select price above 5subset(df, subset = price > 5)
Production:
ID items store price2 20 pen FALSE 83 30 textbook TRUE 104 40 pencil_case FALSE 7