# Programmer en R/Les fonctions statistiques de base

* Introduction
** Faire ses premiers pas
** Installer R
** Choisir son environnement de travail
** Installer des librairies
** Se documenter
* Manipulation et mise en forme des données
** Manipuler les nombres
** Manipuler les vecteurs
** Manipuler les chaînes de caractères
** Manipuler les facteurs
** Manipuler les dates et les heures
** Manipuler un tableau de données
** Manipuler une liste
* Importation et exportation des données
** Importer un fichier CSV
** Résoudre les problèmes d'encodage des caractères
** Importer un fichier TSV
** Importer un fichier texte à largeur fixe
** Importer des données depuis un tableur
** Import un fichier JSON
** Extraire des données d'une page web
* Visualisation de données
** Comprendre la grammaire des graphiques
** Représenter une carte
** Visualiser une carte choroplèthe
* Modélisation statistique
** Estimer un modèle de régression linéaire
** Estimer un modèle de régression circulaire
* Communication
* Programmation avancée
** Programmer une boucle
** Programmer une fonction
* Outils mathématiques
** Optimiser une fonction
** Manipuler les matrices
** Les fonctions statistiques de base
** Les loi de probabilités, ajustement et test
* Introduction
** Faire ses premiers pas
** Installer R
** Choisir son environnement de travail
** Installer des librairies
** Se documenter
* Manipulation et mise en forme des données
** Manipuler les nombres
** Manipuler les vecteurs
** Manipuler les chaînes de caractères
** Manipuler les facteurs
** Manipuler les dates et les heures
** Manipuler un tableau de données
** Manipuler une liste
* Importation et exportation des données
** Importer un fichier CSV
** Résoudre les problèmes d'encodage des caractères
** Importer un fichier TSV
** Importer un fichier texte à largeur fixe
** Importer des données depuis un tableur
** Import un fichier JSON
** Extraire des données d'une page web
* Visualisation de données
** Comprendre la grammaire des graphiques
** Représenter une carte
** Visualiser une carte choroplèthe
* Modélisation statistique
** Estimer un modèle de régression linéaire
** Estimer un modèle de régression circulaire
* Communication
* Programmation avancée
** Programmer une boucle
** Programmer une fonction
* Outils mathématiques
** Optimiser une fonction
** Manipuler les matrices
** Les fonctions statistiques de base
** Les loi de probabilités, ajustement et test
[ Modifier le sommaire ]

## Moyenne, médiane, variance et écart-type
### Nom des fonctions

R dispose de fonctions pour calculer les paramètres descriptifs d'une variable statistique :
* mean : Calcul de la moyenne
* median : Calcul de la médiane
* sd : Calcul de l'écart-type (standard déviation en anglais)
* var : Calcul de la variance
La variance et l'écart-type correspondent a $V(x)={\cfrac {1}{n-1}}\sum _{i=1}^{n}(x_{i}-{\overline {x}})^{2}$ et $s_{x}={\sqrt {\left({\cfrac {1}{n-1}}\sum _{i=1}^{n}(x_{i}-{\overline {x}})^{2}\right)}}$, Attention : les fonctions dans R ne calculent pas directement la variance et l'écart-type, mais leurs estimateurs sans biais : $var(x)={\cfrac {n}{n-1}}\sum _{i=1}^{n}(x_{i}-{\overline {x}})^{2}$ et $sd_{x}={\sqrt {\left({\cfrac {n}{n-1}}\sum _{i=1}^{n}(x_{i}-{\overline {x}})^{2}\right)}}$
Ces fonctions ont une syntaxe similaire :
La variable x désigne un vecteur contenant les données que l'on souhaite traiter. Les données consistent en des nombres entiers, réels ou complexes, le calcul étant également possible sur des dates.
Ces fonctions disposent de paramètres dont la description complète est donnée dans la documentation de R.

### Exemples

Le plus fréquemment, x est un vecteur, c'est le cas de l'exemple ci-dessous.
La fonction median ne peut pas être utilisée sur un data.frame. Pour les autres fonctions, voilà ce que l'on obtient :
La moyenne a donc été calculée sur chacune des colonnes du data.frame, le résultat est un vecteur, indexe par le nom des colonnes de df. Si m <- mean(df), on a alors m[1] = m['A'] = 3,5.
La fonction var calcule la matrice de covariance des colonnes de df. Le résultat est une matrice dont on accède aux différents coefficients soit par leur numéro de ligne et de colonne, soit par les index 'A' et 'B'.
Pour l'écart-type, on obtient le vecteur correspondant à l'écart-type de chacune des colonnes de df.
Pour terminer, ces fonctions permettent également des calculs sur des matrices :
La moyenne et la médiane ont été calculées sur l'ensemble des coefficients de la matrice. La fonction var calcule la matrice de covariance, et la fonction sd calcule le vecteur des écart-type de chacune des colonne de m.

### Que faire si des valeurs sont absentes ?

Le paramètre na.rm est un paramètre qui peut prendre les valeurs TRUE ou FALSE, par défaut sa valeur est FALSE.
* na.rm = TRUE : force le calcul en ne tenant compte que des valeurs présentes ;
* na.rm = FALSE : interdit le calcul lorsque des valeurs sont absentes.
Le calcul mean (x) s'est avéré impossible, alors que la commande mean (x, na.rm = TRUE) a calculé la moyenne des cinq nombres 1, 6, 3, 9, 6. Dans le cas de la matrice m, c'est toute la deuxième ligne qui a été retirée comme on peut le vérifier :