Добавление префикса в имена столбцов
При чтении следующего файла справки должно быть возможно добавить префикс к именам столбцов:
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)
Ответы
Ответ 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")