Hoe de make.names-functie in r te gebruiken (met voorbeelden)
U kunt de functie make.names in R gebruiken om syntactisch geldige namen te maken van tekenvectoren.
Deze functie gebruikt de volgende basissyntaxis:
make.names(names, unique = FALSE)
Goud:
- namen : vector van tekens die moeten worden beperkt tot syntactisch geldige namen.
- uniek : of er al dan niet unieke namen moeten worden gemaakt. De standaardwaarde is false.
De volgende voorbeelden laten zien hoe u deze functie in verschillende scenario’s kunt gebruiken.
Voorbeeld 1: Maak geldige namen voor de vector
Stel dat we de volgende vector van numerieke waarden hebben:
#create vector of numeric values
numeric_values <- c(1, 1, 4, 7, 8)
#create syntactically valid names from numeric values
make. names (numeric_values)
[1] "X1" "X1" "X4" "X7" "X8"
R definieert „geldige namen“ als namen die beginnen met een teken of een punt.
Om dus alle numerieke waarden van de vector naar een geldige naam te converteren, voegt R eenvoudigweg een „X“ toe vóór elke waarde.
Merk op dat twee van de namen („X1“) exact hetzelfde zijn.
Om te forceren dat namen uniek zijn, kunnen we unique=TRUE specificeren:
#create vector of numeric values
numeric_values <- c(1, 1, 4, 7, 8)
#create syntactically valid names from numeric values
make. names (numeric_values, unique= TRUE )
[1] "X1" "X1.1" "X4" "X7" "X8"
Merk op dat elke naam nu uniek is.
Voorbeeld 2: Maak geldige namen voor Matrix
Stel dat we de volgende matrix in R hebben:
#create matrix
mat <- matrix(c(1, 2, 3, 7, 2, 4, 4, 6, 0, 1), ncol= 2 )
#view matrix
mast
[,1] [,2]
[1,] 1 4
[2,] 2 4
[3,] 3 6
[4,] 7 0
[5,] 2 1
#view column names of matrix
colnames(mat)
NULL
Houd er rekening mee dat de matrix momenteel geen kolomnamen heeft.
We kunnen echter de functie make.names() gebruiken om snel kolomnamen te maken:
#create column names for matrix
colnames(mat) <- make. names (1:ncol(mat))
#view updated matrix
mast
X1 X2
[1,] 1 4
[2,] 2 4
[3,] 3 6
[4,] 7 0
[5,] 2 1
Merk op dat de matrix nu „X1“ en „X2“ als kolomnamen heeft.
Als we willen, kunnen we nu de waarden van een specifieke kolom van de matrix extraheren met behulp van de kolomnaam:
#view values in "X1" column of matrix
mat[, ' X1 ']
[1] 1 2 3 7 2
Merk ook op dat u het volgende in R kunt typen om de volledige documentatie te lezen over het maken van syntactisch geldige namen:
?make.names
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R kunt uitvoeren:
Lijnnamen wijzigen in R
Hoe kolomnamen te herhalen in R
Hoe de namenfunctie in R te gebruiken