Як використовувати функцію make.names у r (з прикладами)
Ви можете використовувати функцію make.names в R для створення синтаксично дійсних імен із символьних векторів.
Ця функція використовує такий базовий синтаксис:
make.names(names, unique = FALSE)
золото:
- імена : вектор символів для обмеження синтаксично дійсними іменами.
- unique : чи створювати унікальні імена. Значення за замовчуванням – false.
У наведених нижче прикладах показано, як використовувати цю функцію в різних сценаріях.
Приклад 1: Створіть дійсні імена для вектора
Припустимо, що ми маємо такий вектор числових значень:
#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 визначає «дійсні імена» як імена, що починаються з символу або крапки.
Отже, щоб перетворити кожне числове значення вектора на дійсне ім’я, R просто додає «X» перед кожним значенням.
Зверніть увагу, що дві назви (“X1”) абсолютно однакові.
Щоб імена були унікальними, ми можемо вказати unique=TRUE :
#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"
Зауважте, що кожне ім’я тепер унікальне.
Приклад 2: Створіть дійсні імена для Matrix
Припустимо, що ми маємо таку матрицю в R:
#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
Зауважте, що матриця наразі не має імен стовпців.
Однак ми можемо використовувати функцію make.names() для швидкого створення імен стовпців:
#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
Зверніть увагу, що матриця тепер має “X1” і “X2” як імена стовпців.
Якщо ми хочемо, тепер ми можемо витягти значення певного стовпця матриці, використовуючи назву стовпця:
#view values in "X1" column of matrix
mat[, ' X1 ']
[1] 1 2 3 7 2
Також зауважте, що ви можете ввести наступне в R, щоб прочитати повну документацію щодо створення синтаксично дійсних імен:
?make.names
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в R:
Як змінити назви рядків у R
Як перебирати імена стовпців у R
Як використовувати функцію імен у R