Как использовать функцию make.names в r (с примерами)


Вы можете использовать функцию make.names в R для создания синтаксически допустимых имен из векторов символов.

Эта функция использует следующий базовый синтаксис:

 make.names(names, unique = FALSE)

Золото:

  • имена : вектор символов, который нужно ограничить синтаксически допустимыми именами.
  • unique : создавать или нет уникальные имена. Значение по умолчанию неверно.

Следующие примеры показывают, как использовать эту функцию в различных сценариях.

Пример 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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *