data.frameOn peut créer des tableaux en associant des libellés à des vecteurs
dans la fonction data.frame.
df = data.frame(x=rnorm(3), y=c('A', 'B', 'B'))
print(df)
## x y
## 1 -1.8936471 A
## 2 -0.2521502 B
## 3 0.8515085 B
Le langage R inclut un grand nombre de jeux de données.
Pour afficher la liste, utiliser library(help="datasets").
Par exemple, le jeu de données cars:
df = cars
print(head(df, 5))
## speed dist
## 1 4 2
## 2 4 10
## 3 7 4
## 4 7 22
## 5 8 16
On peut enfin charger des données depuis un fichier externe.
df1 = data.frame(x=rnorm(3), y=c('A', 'B', 'B'))
print(df1)
## x y
## 1 -0.5084264 A
## 2 1.3782946 B
## 3 -1.9883528 B
data_path = file.path("data", "sample_df.csv")
write.csv(df1, data_path, row.names=FALSE)
df2 = read.csv(data_path)
print(df2)
## x y
## 1 -0.5084264 A
## 2 1.3782946 B
## 3 -1.9883528 B
L’opérateur $ permet de sélectionner les colonnes d’un
tableau individuellement.
df = iris
print(head(df, 5))
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
print(head(df$Sepal.Length, 5))
## [1] 5.1 4.9 4.7 4.6 5.0
On peut aussi sélectionner des sous-tableaux par sélection numérique.
sub_df = df[1:5, 3:5]
print(sub_df)
## Petal.Length Petal.Width Species
## 1 1.4 0.2 setosa
## 2 1.4 0.2 setosa
## 3 1.3 0.2 setosa
## 4 1.5 0.2 setosa
## 5 1.4 0.2 setosa
print(class(sub_df))
## [1] "data.frame"