R

[R] 행 이름(인덱스) 지정, 초기화 방법

jimmy_AI 2022. 9. 6. 20:25
반응형

R에서 행 이름 부분인 인덱스를 원하는 벡터나 특정 열로 설정하는 방법과

원래의 숫자 순서로 초기화하는 방법에 대하여 간략하게 요약하여 설명해보도록 하겠습니다.

 

예시로, 아래와 같은 데이터프레임이 df라는 변수에 있다고 가정해보도록 하겠습니다.

> df
  이름 국어 수학 영어
1  AAA   80   90  100
2  BBB   90   75   85
3  CCC   95   80   80
4  DDD   85   95   90

 

 

R 행 이름 변경(인덱스 설정)

벡터로 행 이름 지정하기

rownames(df) <- 벡터 형태로 행들의 이름을 바꿀 수 있습니다.

> rownames(df) <- c("가", "나", "다", "라")
> df
   이름 국어 수학 영어
가  AAA   80   90  100
나  BBB   90   75   85
다  CCC   95   80   80
라  DDD   85   95   90

 

반응형

 

특정 열로 행 이름 지정하기

rownames(df) <- df[, 열 이름] 형태로 특정 열을 추출하여 인덱스로 가져올 수 있습니다.

> rownames(df) <- df[, "이름"]
> df
    이름 국어 수학 영어
AAA  AAA   80   90  100
BBB  BBB   90   75   85
CCC  CCC   95   80   80
DDD  DDD   85   95   90

 

이 경우에는 기존 열을 삭제하고 싶다면 df[, -c(해당 열의 순서에 해당되는 번호)] 형태로

코드를 추가 작성해주시면 됩니다. 여기서는 이름 열이 첫 번째 컬럼이므로 1번을 삭제합니다.

> df <- df[,-c(1)]
> df
    국어 수학 영어
AAA   80   90  100
BBB   90   75   85
CCC   95   80   80
DDD   85   95   90

 

 

R 행 이름(인덱스) 초기화

행 이름을 원래의 1부터의 수열로 다시 초기화하고 싶다면

rownames(df) <- NULL이라는 코드를 입력해주시면 됩니다.

# 인덱스가 바뀐 데이터프레임 가정
> df
    이름 국어 수학 영어
AAA  AAA   80   90  100
BBB  BBB   90   75   85
CCC  CCC   95   80   80
DDD  DDD   85   95   90

# 인덱스 초기화 코드
> rownames(df) <- NULL
> df
  이름 국어 수학 영어
1  AAA   80   90  100
2  BBB   90   75   85
3  CCC   95   80   80
4  DDD   85   95   90