Comment trier un DataFrame en R ?

Dans cet article, nous verrons comment trier la trame de données dans le langage de programmation R.

Méthodes pour trier une dataframe :

  1. fonction order() (ordre croissant et décroissant)
  2. fonction arrange() du package dplyr
  3. fonction setorder() du package data.table

Méthode 1 : Utilisation de la fonction order()

Cette fonction est utilisée pour trier la trame de données en fonction de la colonne particulière de la trame de données

Syntaxe: order(dataframe$column_name,decreasing = TRUE))

  • dataframe est le dataframe d’entrée
  • Le nom de la colonne est la colonne dans la trame de données de sorte que la trame de données est triée en fonction de cette colonne
  • Le paramètre décroissant spécifie le type d’ordre de tri

Si c’est TRUE, la trame de données est triée par ordre décroissant. Sinon, dans l’ordre croissant

type de retour : Positions d’index des éléments

Exemple 1: programme R pour créer une trame de données avec 2 colonnes et un ordre basé sur des colonnes particulières dans l’ordre décroissant. Affichage du dataframe trié en fonction des sujets par ordre décroissant, affichage du dataframe trié en fonction du rollno en ordre décroissant

R

data = data.frame(

  rollno = c(1, 5, 4, 2, 3),

  subjects = c("java", "python", "php", "sql", "c"))

 

print(data)

 

print("sort the data in decreasing order based on subjects ")

print(Les données[order(data$subjects, decreasing = TRUE), ] )

 

 

print("sort the data in decreasing order based on rollno ")

print(Les données[order(data$rollno, decreasing = TRUE), ] )

Production:

  rollno subjects
1      1     java
2      5   python
3      4      php
4      2      sql
5      3        c
[1] "sort the data in decreasing order based on subjects "
  rollno subjects
4      2      sql
2      5   python
3      4      php
1      1     java
5      3        c
[1] "sort the data in decreasing order based on rollno "
  rollno subjects
2      5   python
3      4      php
5      3        c
4      2      sql
1      1     java

Exemple 2 : Programme R pour créer une trame de données avec 3 colonnes nommées rollno, noms et sujets avec un vecteur, affiche la trame de données triée basée sur les sujets dans l’ordre croissant, affiche la trame de données triée basée sur le rollno dans l’ordre croissant, affiche la trame de données triée basée sur les noms en ordre croissant ordre

R

data=data.frame(rollno = c(1, 5, 4, 2, 3),

                names = c("sravan", "bobby",

                          "pinkey", "rohith"

                          "gnanesh"),

                subjects = c("java", "python",

                             "php", "sql", "c"))

 

print(data)

 

print("sort the data in increasing order based on subjects"

print(Les données[order(data$subjects, decreasing = FALSE), ] )

 

 

print("sort the data in increasing order based on rollno")

print(Les données[order(data$rollno, decreasing = FALSE), ] )

 

print("sort the data in increasing order based on names")

print(Les données[order(data$names,decreasing = FALSE), ] )

Production:

  rollno   names subjects
1      1  sravan     java
2      5   bobby   python
3      4  pinkey      php
4      2  rohith      sql
5      3 gnanesh        c
[1] "sort the data in increasing order based on subjects"
  rollno   names subjects
5      3 gnanesh        c
1      1  sravan     java
3      4  pinkey      php
2      5   bobby   python
4      2  rohith      sql
[1] "sort the data in increasing order based on rollno"
  rollno   names subjects
1      1  sravan     java
4      2  rohith      sql
5      3 gnanesh        c
3      4  pinkey      php
2      5   bobby   python
[1] "sort the data in increasing order based on names"
  rollno   names subjects
2      5   bobby   python
5      3 gnanesh        c
3      4  pinkey      php
4      2  rohith      sql
1      1  sravan     java

Méthode 2 : Utilisation de la fonction arrange() de dplyr.

Organiser() est utilisé pour trier le dataframe dans l’ordre croissant, il triera également le dataframe en fonction de la colonne dans le dataframe

Syntaxe: organiser (dataframe, colonne)

  • dataframe est l’entrée de dataframe
  • colonne est le nom de la colonne, basé sur cette colonne dataframe est trié

Nous devons installer le package dplyr tel qu’il est disponible dans ce package

Syntaxe: install.packages(“dplyr”)

Exemple: Programme R pour trier les dataframes en fonction des colonnes

Dans ce programme, nous avons créé trois colonnes à l’aide du vecteur et trié la trame de données en fonction de la colonne des sujets

Code:

R

library("dplyr")  

 

data = data.frame(rollno = c(1, 5, 4, 2, 3),

                  names = c("sravan", "bobby", "pinkey",

                            "rohith", "gnanesh"),

                  subjects = c("java", "python", "php",

                               "sql", "c"))

 

print(arrange(data, subjects))

Production:

  rollno   names subjects
1      3 gnanesh        c
2      1  sravan     java
3      4  pinkey      php
4      5   bobby   python
5      2  rohith      sql

Méthode 3 : Utilisation de setorder() à partir du package data.table

définir l’ordre est utilisé pour trier une trame de données dans le format d’ordre défini.

Syntaxe: setorder(dataframe, colonne)

  • Où dataframe est le dataframe d’entrée
  • La colonne est le nom de la colonne

Exemple: Programme R pour trier les dataframes en fonction des colonnes

Dans ce programme, nous avons créé la trame de données avec trois colonnes en utilisant le vecteur et trié la trame de données en utilisant la fonction setorder basée sur la colonne des sujets

Code:

R

library("data.table")

 

data=data.frame(rollno = c(1, 5, 4, 2, 3),

                names = c("sravan", "bobby"

                          "pinkey", "rohith",

                          "gnanesh"),

                subjects = c("java", "python",

                             "php", "sql", "c"))

 

print(setorder(data,subjects))

Production:

  rollno   names subjects
5      3 gnanesh        c
1      1  sravan     java
3      4  pinkey      php
2      5   bobby   python
4      2  rohith      sql

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Aller en haut