Подтвердить что ты не робот

Добавление префикса в имена столбцов

При чтении следующего файла справки должно быть возможно добавить префикс к именам столбцов:

colnames(x, do.NULL = TRUE, prefix = "col")

Для меня не работает следующее. Что я здесь делаю неправильно?

m2 <- cbind(1,1:4)
colnames(m2, do.NULL = FALSE)
colnames(m2) <- c("x","Y")
colnames(m2) <- colnames(m2, prefix = "Sub_")
colnames(m2)
4b9b3361

Ответ 1

Вы неправильно прочитали файл справки. Здесь аргумент, чтобы посмотреть:

do.NULL: логический. Если FALSE и имена NULL, имена создаются.

Обратите внимание на и в этом описании. Ваши имена больше не NULL, поэтому использование префикса не будет работать.

Вместо этого используйте что-то вроде этого:

> m2 <- cbind(1,1:4)
> colnames(m2) <- c("x","Y")
> colnames(m2) <- paste("Sub", colnames(m2), sep = "_")
> m2
     Sub_x Sub_Y
[1,]     1     1
[2,]     1     2
[3,]     1     3
[4,]     1     4

Ответ 2

Я добавлю tidyverse подхода к этой проблеме, для которой вы можете как добавить суффикс и префикс для всех имен столбцов. Следующее добавляет префикс в трубу dplyr.

df <- data.frame(x = c(1, 2), y = c(3, 4))
df %>% dplyr::rename_all(function(x) paste0("a", x))

Добавить суффикс проще.

df %>% dplyr::rename_all(paste0, "a")