Hoe de dataframekolom in te stellen als index in r (met voorbeeld)
Dataframes in R hebben geen „index“-kolom zoals dataframes in panda’s dat wel kunnen.
Dataframes in R hebben echter rijnamen , die hetzelfde werken als een indexkolom.
U kunt een van de volgende methoden gebruiken om een bestaande dataframekolom in te stellen als rijnamen voor een dataframe in R:
Methode 1: rijnamen instellen met basis R
#set specific column as row names rownames(df) <- df$my_column #remove original column from data frame df$my_column <- NULL
Methode 2: Rijnamen instellen met het Tidyverse-pakket
library (tidyverse) #set specific column as row names df <- df %>% column_to_rownames(., var = ' my_column ')
Methode 3: Rijnamen instellen bij het importeren van gegevens
#import CSV file and specify column to use as row names df <- read. csv (' my_data.csv ', row.names =' my_column ')
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.
Voorbeeld 1: Definieer rijnamen met Base R
Stel dat we het volgende dataframe in R hebben:
#create data frame
df <- data. frame (ID=c(101, 102, 103, 104, 105),
points=c(99, 90, 86, 88, 95),
assists=c(33, 28, 31, 39, 34),
rebounds=c(30, 28, 24, 24, 28))
#view data frame
df
ID points assists rebounds
1 101 99 33 30
2 102 90 28 28
3 103 86 31 24
4 104 88 39 24
5 105 95 34 28
We kunnen de volgende code gebruiken om de ID-kolom in te stellen als rijnamen:
#set ID column as row names
rownames(df) <- df$ID
#remove original ID column from data frame
df$ID <- NULL
#view updated data frame
df
points assists rebounds
101 99 33 30
102 90 28 28
103 86 31 24
104 88 39 24
105 95 34 28
De waarden in de ID-kolom zijn nu de rijnamen van het dataframe.
Voorbeeld 2: Stel rijnamen in met behulp van het Tidyverse-pakket
De volgende code laat zien hoe u de functie column_to_rownames() van het spiceverse- pakket gebruikt om de rijnamen gelijk te stellen aan de ID-kolom in het dataframe:
library (tidyverse)
#create data frame
df <- data. frame (ID=c(101, 102, 103, 104, 105),
points=c(99, 90, 86, 88, 95),
assists=c(33, 28, 31, 39, 34),
rebounds=c(30, 28, 24, 24, 28))
#set ID column as row names
df <- df %>% column_to_rownames(., var = ' ID ')
#view updated data frame
df
points assists rebounds
101 99 33 30
102 90 28 28
103 86 31 24
104 88 39 24
105 95 34 28
Merk op dat dit resultaat overeenkomt met dat van het vorige voorbeeld.
Voorbeeld 3: Rijnamen instellen bij het importeren van gegevens
Laten we zeggen dat we het volgende CSV-bestand hebben met de naam my_data.csv :
We kunnen de volgende code gebruiken om het CSV-bestand te importeren en tijdens het importeren de rijnamen zo in te stellen dat ze gelijk zijn aan de ID-kolom:
#import CSV file and specify ID column to use as row names df <- read. csv (' my_data.csv ', row.names =' ID ') #view data frame df points assists rebounds 101 99 33 30 102 90 28 28 103 86 31 24 104 88 39 24 105 95 34 28
Houd er rekening mee dat de waarden in de ID-kolom worden gebruikt als rijnamen in het dataframe.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:
Hoe rijen uit het dataframe in R te verwijderen op basis van de voorwaarde
Hoe waarden in dataframe in R te vervangen
Kolommen verwijderen uit een dataframe in R