dplyr을 사용하여 고유 한 이름으로 여러 열의 이름을 바꾸는 빠른 방법

GaryZA73

저는 초보자 R 사용자이며 현재 깔끔한 방법을 배우고 있습니다. 저는 4 년 동안 월별 소비자 물가에 대한 시계열 데이터 세트를 가져 왔습니다. 월별 CPI 열에서 가져온 표제는 R에 5 자리 숫자 (문자)로 표시됩니다. 다음은 그것이 어떻게 생겼는지에 대한 짧은 모형 재현입니다 ...

df <- tibble(`Product` = c("Eggs", "Chicken"),
              `44213` = c(35.77, 36.77),
              `44244` = c(39.19, 39.80),
              `44272` = c(40.12, 43.42),
              `44303` = c(41.09, 41.33)
)

# A tibble: 2 x 5
#  Product `44213` `44244` `44272` `44303`
#  <chr>     <dbl>   <dbl>   <dbl>   <dbl>
#1 Eggs       35.8    39.2    40.1    41.1
#2 Chicken    36.8    39.8    43.4    41.3

열 머리글 (44213 등)을 더 이해하기 쉬운 날짜 (여전히 문자)로 변경하고 싶습니다. dplyr을 사용하여 다음과 같은 방법으로 수행하는 것을 이해합니다.

df <- df %>% rename("Jan17" = `44213`, "Feb17" = `44244`, 
                    "Mar17" = `44272`, "Apr17" = `44303`)

# A tibble: 2 x 5
#  Product Jan17 Feb17 Mar17 Apr17
#  <chr>   <dbl> <dbl> <dbl> <dbl>
#1 Eggs     35.8  39.2  40.1  41.1
#2 Chicken  36.8  39.8  43.4  41.3

문제는 내 실제 데이터 세트에 이름을 바꿀 48 개의 열 (개월)이 포함되어 있으므로 입력하는 데 많은 작업이 필요하다는 것입니다. 다른 replace 및 set_names 함수를 살펴 보았지만 열 이름에 반복적 인 변경 사항을 추가하는 것 같습니다. 내가 찾고있는 것처럼 새로운 고유 이름을 제공하지 않습니까?

(열이 좋은 관행이 아니며 분석을 진행하기 전에 이러한 날짜를 행으로 이동해야한다는 것을 알고 있습니다 ... 아니면 이름을 변경하기위한 이전 단계 여야합니까?)

나는 내 질문을 충분히 표현했다. dplyr을 사용하여 더 빠른 솔루션을 배우거나 찾을 수있는 곳으로 이동하고 싶습니다. 시간 내 주셔서 감사합니다.

Akrun

명명 된 벡터를 전달하여 !!!with rename사용할 수 있습니다.

library(dplyr)
library(stringr)
df1 <- df %>% 
     rename(!!! setNames(names(df)[-1], str_c(month.abb[1:4], 17)))

-산출

df1
# A tibble: 2 x 5
#  Product Jan17 Feb17 Mar17 Apr17
#  <chr>   <dbl> <dbl> <dbl> <dbl>
#1 Eggs     35.8  39.2  40.1  41.1
#2 Chicken  36.8  39.8  43.4  41.3

또는 사용 rename_with

df %>% 
     rename_with(~str_c(month.abb[1:4], 17), -1)

열 이름을 Date형식화 해야하는 경우

nm1 <- format(as.Date(as.numeric(names(df)[-1]), origin = '1896-01-01'), '%b%y')

df %>%
    rename_with(~ nm1, -1)
# A tibble: 2 x 5
#  Product Jan17 Feb17 Mar17 Apr17
#  <chr>   <dbl> <dbl> <dbl> <dbl>
#1 Eggs     35.8  39.2  40.1  41.1
#2 Chicken  36.8  39.8  43.4  41.3

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

한 번에 다른 이름으로 여러 파일의 이름을 바꾸는 방법은 무엇입니까?

분류에서Dev

고유 한 사용자 이름으로 여러 연관 배열을 병합하는 방법

분류에서Dev

rename 명령을 사용하여 마침표와 밑줄로 구분 된 유사한 문자열로 여러 파일의 이름을 바꾸는 방법

분류에서Dev

고유 한 열 값을 열 이름으로 바꾸고 다른 열 값을 각 열 이름에 매핑하는 방법

분류에서Dev

여러 파일의 이름을 하나의 이름으로 바꾸는 방법

분류에서Dev

Pandas에서 여러 열의 열 이름으로 다른 열의 값을 바꾸는 방법

분류에서Dev

한 번에 여러 파일의 이름을 바꾸는 방법

분류에서Dev

찾기 / 이름 바꾸기를 사용하여 여러 파일 이름의 이름을 바꾸는 방법

분류에서Dev

파일 이름의 일부를 기반으로 폴더를 만들고 awk를 사용하여 특정 열을 추출하고 이름을 바꾸는 방법

분류에서Dev

파일 이름의 일부를 기반으로 폴더를 만들고 awk를 사용하여 특정 열을 추출하고 이름을 바꾸는 방법

분류에서Dev

여러 Pandas 데이터 프레임에서 동일한 열을 수집하고 이름을 바꾸는 방법

분류에서Dev

찾기를 사용하여 여러 파일의 이름을 바꾸는 방법

분류에서Dev

방법을 사용하여 고유 한 이름의 배열을 검색

분류에서Dev

행 요소를 이름으로 사용하고 값을 R에서 열로 사용하는 빠른 방법

분류에서Dev

고유 한 문자열을 추가하여 여러 파일 이름 바꾸기

분류에서Dev

Terraform을 사용하여 azure에 대한 목록 / 개수를 사용하여 고유하고 동일하지 않은 이름으로 동일한 유형의 여러 리소스를 만드는 방법은 무엇입니까?

분류에서Dev

배열을 고유 한 이름을 가진 여러 배열로 분할하는 방법

분류에서Dev

와일드 카드를 접두사로 사용하여 여러 파일의 이름을 바꾸는 방법

분류에서Dev

Python에서 Pandas를 사용하여 DataFrame의 열 이름을 바꾸는 방법

분류에서Dev

하나의 명령으로 여러 폴더에있는 여러 파일의 이름을 바꾸는 방법

분류에서Dev

유닉스에서 여러 파일의 이름을 바꾸는 방법

분류에서Dev

VBA를 사용하여 특정 헤더 이름을 검색하고 여러 이름 바꾸기 열에서 이러한 헤더의 데이터 그룹화

분류에서Dev

이름이 다른 여러 파일의 이름을 file1, file2, file3 등으로 바꾸는 방법은 무엇입니까?

분류에서Dev

유닉스 명령을 사용하여 다른 폴더에 비슷한 이름의 여러 파일을 결합하는 방법은 무엇입니까?

분류에서Dev

Pandas는 다른 열의 값을 사용하여 열 이름 바꾸기 / 전치

분류에서Dev

spread ()를 사용하여 한 열의 값을 기본 열 이름으로 만드는 방법

분류에서Dev

Z3 (Python API)를 사용하여 수식의 모든 변수 이름을 빠르게 바꾸는 방법

분류에서Dev

R을 사용하여 스프레드 시트의 한 열에서 여러 이름을 구분하는 방법

분류에서Dev

Linux 쉘에서 이름 바꾸기를 사용하지 않고 특수 문자를 제거하여 파일 이름을 일괄 적으로 바꾸는 방법

Related 관련 기사

  1. 1

    한 번에 다른 이름으로 여러 파일의 이름을 바꾸는 방법은 무엇입니까?

  2. 2

    고유 한 사용자 이름으로 여러 연관 배열을 병합하는 방법

  3. 3

    rename 명령을 사용하여 마침표와 밑줄로 구분 된 유사한 문자열로 여러 파일의 이름을 바꾸는 방법

  4. 4

    고유 한 열 값을 열 이름으로 바꾸고 다른 열 값을 각 열 이름에 매핑하는 방법

  5. 5

    여러 파일의 이름을 하나의 이름으로 바꾸는 방법

  6. 6

    Pandas에서 여러 열의 열 이름으로 다른 열의 값을 바꾸는 방법

  7. 7

    한 번에 여러 파일의 이름을 바꾸는 방법

  8. 8

    찾기 / 이름 바꾸기를 사용하여 여러 파일 이름의 이름을 바꾸는 방법

  9. 9

    파일 이름의 일부를 기반으로 폴더를 만들고 awk를 사용하여 특정 열을 추출하고 이름을 바꾸는 방법

  10. 10

    파일 이름의 일부를 기반으로 폴더를 만들고 awk를 사용하여 특정 열을 추출하고 이름을 바꾸는 방법

  11. 11

    여러 Pandas 데이터 프레임에서 동일한 열을 수집하고 이름을 바꾸는 방법

  12. 12

    찾기를 사용하여 여러 파일의 이름을 바꾸는 방법

  13. 13

    방법을 사용하여 고유 한 이름의 배열을 검색

  14. 14

    행 요소를 이름으로 사용하고 값을 R에서 열로 사용하는 빠른 방법

  15. 15

    고유 한 문자열을 추가하여 여러 파일 이름 바꾸기

  16. 16

    Terraform을 사용하여 azure에 대한 목록 / 개수를 사용하여 고유하고 동일하지 않은 이름으로 동일한 유형의 여러 리소스를 만드는 방법은 무엇입니까?

  17. 17

    배열을 고유 한 이름을 가진 여러 배열로 분할하는 방법

  18. 18

    와일드 카드를 접두사로 사용하여 여러 파일의 이름을 바꾸는 방법

  19. 19

    Python에서 Pandas를 사용하여 DataFrame의 열 이름을 바꾸는 방법

  20. 20

    하나의 명령으로 여러 폴더에있는 여러 파일의 이름을 바꾸는 방법

  21. 21

    유닉스에서 여러 파일의 이름을 바꾸는 방법

  22. 22

    VBA를 사용하여 특정 헤더 이름을 검색하고 여러 이름 바꾸기 열에서 이러한 헤더의 데이터 그룹화

  23. 23

    이름이 다른 여러 파일의 이름을 file1, file2, file3 등으로 바꾸는 방법은 무엇입니까?

  24. 24

    유닉스 명령을 사용하여 다른 폴더에 비슷한 이름의 여러 파일을 결합하는 방법은 무엇입니까?

  25. 25

    Pandas는 다른 열의 값을 사용하여 열 이름 바꾸기 / 전치

  26. 26

    spread ()를 사용하여 한 열의 값을 기본 열 이름으로 만드는 방법

  27. 27

    Z3 (Python API)를 사용하여 수식의 모든 변수 이름을 빠르게 바꾸는 방법

  28. 28

    R을 사용하여 스프레드 시트의 한 열에서 여러 이름을 구분하는 방법

  29. 29

    Linux 쉘에서 이름 바꾸기를 사용하지 않고 특수 문자를 제거하여 파일 이름을 일괄 적으로 바꾸는 방법

뜨겁다태그

보관