열 이름에 접두사 추가
다음 도움말 파일을 읽을 때 열 이름에 접두사를 추가할 수 있어야 합니다.
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)
도움말 파일을 잘못 읽었습니다.다음은 논의 사항입니다.
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
추가하겠습니다.tidyverse
모든 열 이름에 접미사와 접두사를 모두 추가할 수 있는 이 문제에 접근합니다.다음은 a에 접두사를 추가한 것입니다.dplyr
피리를 부리다
dplyr 1.0.2 이상
library(dplyr)
df <- data.frame(x = c(1, 2), y = c(3, 4))
## Adding prefixes
df %>% rename_with( ~ paste0("a", .x))
## Adding suffixes
df %>% rename_with( ~ paste0(.x, "a"))
밑줄과 같은 구분자를 갖고 싶을 때는paste
뿐만 아니라sep
논쟁.
dplyr 1.0.2 업데이트 전
library(dplyr)
df <- data.frame(x = c(1, 2), y = c(3, 4))
df %>% rename_all( ~ paste0("a", .x))
접미사를 추가하는 것이 더 쉽습니다.
df %>% rename_all(paste0, "a")
업데이트된tidyverse
메소드(포함)dplyr 1.0.2
) 용도rename_with()
처럼rename_all()
함수가 대체되었습니다.
iris %>% rename_with( ~ paste("Sub", .x, sep = "_"))
그stats::setNames
기능은 이에 적합하게 작동하며, 실제로 대안보다 훨씬 빠릅니다.
iris.dt <- data.table::as.data.table(iris)
microbenchmark::microbenchmark(
base = colnames(iris) <- paste("Sub", colnames(iris), sep = "_"),
stats = setNames(iris, paste("Sub", colnames(iris), sep = "_")),
dplyr = dplyr::rename_with(iris, ~ paste("Sub", .x, sep = "_")),
datatable = data.table::setnames(iris.dt, paste("Sub", names(iris.dt), sep = "_"))
)
#> Unit: microseconds
#> expr min lq mean median uq max neval cld
#> base 11.094 16.2140 21.62408 19.2010 23.681 65.707 100 a
#> stats 8.107 13.8670 17.40435 16.6405 19.841 39.254 100 a
#> dplyr 786.772 842.8785 5236.67222 877.0130 984.959 402378.407 100 a
#> datatable 40.961 49.9200 84.06237 62.2935 73.600 834.560 100 a
repex 패키지(v0.3.0)에서 2020-10-21에 생성됨
언급URL : https://stackoverflow.com/questions/14872081/add-a-prefix-to-column-names
'programing' 카테고리의 다른 글
$sce.trustAsHtml 내에서 지시문 렌더링 (0) | 2023.11.06 |
---|---|
jQuery: 창 너비를 즉시 감지하는 방법은 무엇입니까? (0) | 2023.11.06 |
이 너비 속성 값 선언에서 9의 의미는 무엇입니까? (0) | 2023.11.06 |
쿠폰코드 WooCommerce에서 쿠폰 상세정보 검색 (0) | 2023.11.06 |
GDB가 루프에서 벗어나도록 하려면 어떻게 해야 합니까? (0) | 2023.11.06 |