R Tableau de données
Un tableau de données (Data frame) peut être compris comme ce que nous appelons communément un « tableau ».
Un tableau de données est une structure de données en R, une liste bidimensionnelle spéciale.
Chaque colonne d'un tableau de données a un nom de colonne unique, et les longueurs sont toutes égales. Les types de données au sein d'une même colonne doivent être cohérents, tandis que différentes colonnes peuvent avoir des types de données différents.
Les tableaux de données du langage R sont créés à l'aide de la fonction data.frame(), avec la syntaxe suivante :
data.frame(…, row.names = NULL, check.rows = FALSE,
check.names = TRUE, fix.empty.names = TRUE,
stringsAsFactors = default.stringsAsFactors())
- …: Vecteur colonne, peut être de n'importe quel type (caractère, numérique, logique), généralement exprimé sous la forme étiquette = valeur, ou peut être valeur.
- row.names: Noms de lignes, la valeur par défaut est NULL, peut être défini sur un nombre unique, une chaîne de caractères, ou un vecteur de chaînes de caractères et de nombres.
- check.rows: Vérifie si les noms de lignes et les longueurs sont cohérents.
- check.names: Vérifie si les noms de variables du tableau de données sont valides.
- fix.empty.names: Définit si les paramètres non nommés sont automatiquement nommés.
- stringsAsFactors: valeur booléenne, indiquant si les caractères sont convertis en facteurs. La valeur par défaut d'origine est TRUE, et peut être modifiée en définissant l'option (stringsAsFactors=FALSE).
Ce qui suit crée un tableau de données simple, contenant le nom, l'identifiant de l'employé et le salaire mensuel :
Exemple
Nom= c("Zhang San", "Li Si"),
Identifiant de l'employé= c("001","002"),
Salaire mensuel= c(1000, 2000)
)
print(table) # Afficher les données de la table
L'exécution du code ci-dessus produit le résultat suivant :
姓名 工号 月薪 1 张三 001 1000 2 李四 002 2000
La structure de données d'un tableau de données peut être affichée en utilisant la fonctionstr()pour afficher :
Exemple
Nom= c("Zhang San", "Li Si"),
Identifiant de l'employé= c("001","002"),
Salaire mensuel= c(1000, 2000)
)
# Obtenir la structure des données
str(table)
L'exécution du code ci-dessus produit le résultat suivant :
'data.frame': 2 obs. of 3 variables: $ 姓名: chr "张三" "李四" $ 工号: chr "001" "002" $ 月薪: num 1000 2000
summary()Les informations de synthèse du tableau de données peuvent être affichées :
Exemple
Nom= c("Zhang San", "Li Si"),
Identifiant de l'employé= c("001","002"),
Salaire mensuel= c(1000, 2000)
)
# Afficher le résumé
print(summary(table))
L'exécution du code ci-dessus produit le résultat suivant :
姓名 工号 月薪
Length:2 Length:2 Min. :1000
Class :character Class :character 1st Qu.:1250
Mode :character Mode :character Median :1500
Mean :1500
3rd Qu.:1750
Max. :2000
Nous pouvons également extraire des colonnes spécifiées :
Exemple
Nom= c("Zhang San", "Li Si"),
Identifiant de l'employé= c("001","002"),
Salaire mensuel= c(1000, 2000)
)
# Extraire les colonnes spécifiées
result <- data.frame(table$Name,table$MonthlySalary)
print(result)
L'exécution du code ci-dessus produit le résultat suivant :
table.姓名 table.月薪 1 张三 1000 2 李四 2000
Ce qui suit affiche les deux premières lignes :
Exemple
Name= c("Zhang San", "Li Si","Wang Wu"),
Identifiant de l'employé= c("001","002","003"),
Salaire mensuel= c(1000, 2000,3000)
)
print(table)
# Extraire les deux premières lignes
print("---Afficher les deux premières lignes----")
result <- table[1:2,]
print(result)
L'exécution du code ci-dessus produit le résultat suivant :
姓名 工号 月薪 1 张三 001 1000 2 李四 002 2000 3 王五 003 3000 [1] "---输出前面两行----" 姓名 工号 月薪 1 张三 001 1000 2 李四 002 2000
Nous pouvons lire les données d'une colonne spécifique dans une ligne spécifiée à l'aide de coordonnées. Ci-dessous, nous lisons les données des lignes 2 et 3, colonnes 1 et 2 :
Exemple
Name= c("Zhang San", "Li Si","Wang Wu"),
Identifiant de l'employé= c("001","002","003"),
Salaire mensuel= c(1000, 2000,3000)
)
# Lire les données des lignes 2 et 3, colonnes 1 et 2 :
result <- table[c(2,3),c(1,2)]
print(result)
L'exécution du code ci-dessus produit le résultat suivant :
姓名 工号 2 李四 002 3 王五 003
Étendre le data frame
Nous pouvons étendre un data frame existant. Dans l'exemple suivant, nous ajoutons une colonne Department :
Exemple
Name= c("Zhang San", "Li Si","Wang Wu"),
Identifiant de l'employé= c("001","002","003"),
Salaire mensuel= c(1000, 2000,3000)
)
# Ajouter une colonne Department
table$Department<- c("Operations","Technology","Editorial")
print(table)
L'exécution du code ci-dessus produit le résultat suivant :
姓名 工号 月薪 部门 1 张三 001 1000 运营 2 李四 002 2000 技术 3 王五 003 3000 编辑
Nous pouvons utiliser la fonctioncbind()pour combiner plusieurs vecteurs en un data frame :
Exemple
sites <- c("Google","Example","Taobao")
likes <- c(222,111,123)
url <- c("www.google.com","www.example.com","www.taobao.com")
# Combiner des vecteurs en un data frame
addresses <- cbind(sites,likes,url)
# Afficher le data frame
print(addresses)
L'exécution du code ci-dessus produit le résultat suivant :
sites likes url
[1,] "Google" "222" "www.google.com"
[2,] "Example" "111" "www.example.com"
[3,] "Taobao" "123" "www.taobao.com"
Si vous avez besoin de fusionner deux data frames, vous pouvez utiliser la fonctionrbind():
Exemple
Name= c("Zhang San", "Li Si","Wang Wu"),
Identifiant de l'employé= c("001","002","003"),
Salaire mensuel= c(1000, 2000,3000)
)
newtable = data.frame(
Nom= c(Xiaoming, "Débutant"),
Identifiant de l'employé= c("101","102"),
Salaire mensuel= c(5000, 7000)
)
# Fusionner deux data frames
result <- rbind(table,newtable)
print(result)
L'exécution du code ci-dessus produit le résultat suivant :
姓名 工号 月薪 1 张三 001 1000 2 李四 002 2000 3 王五 003 3000 4 小明 101 5000 5 小白 102 7000Autres extensions