일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- 영화 리뷰
- 계묘년
- 젖비단그물버섯
- 외생균근균
- 곤줄박이
- 탐조
- 바운새
- 더 웨일
- 영화 일기
- 영화 해석
- 영화
- Cannon PowerShot G7 X Mark III
- 코딩
- 에리히 프롬
- 생명과학 균학 미생물학 Biology Mycology Microbiology
- 갓생
- 청도요
- Rstuido
- mushroom #mushrooms #mushroomhunting #mushroomphotos #mushroomphotography #mycology #mycologist #fungi #fungalecology #fungaldiversity #fantasticfungi #버섯 #탐균 #버섯탐사
- 토양학
- 영화 후기
- 심리학
- 생물정보학
- 토양미생물학
- 철학
- 둠칫새
- RStudio
- 파이썬
- R
- 대학원생
Archives
- Today
- Total
워라밸 중독자
[R] 데이터 전처리 - 열 또는 행 이름 확인 및 변경하기 본문
패키지 설치 및 로드
tibble과 dplyr 패키지 필요
install.packages('tibble')
install.packages('dplyr')
library(tibble)
library(dplyr)
R에 내장된 mtcars 데이터셋을 이용하겠습니다.
> mtcars
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
[ reached 'max' / getOption("max.print") -- omitted 23 rows ]
이름 확인 및 변경
열 이름 확인
names(), colnames()
names와 colnames 함수는 거의 똑같다고 보면 된다.
# 열 이름 출력
> names(mtcars)
[1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear" "carb"
> colnames(mtcars)
[1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear" "carb"
열 이름 변경
names(), colnames()
# 열 이름 변경 (첫번째 세번째 열)
> names(mtcars)[c(1,3)] <- c("miles per gallon", "displacement")
> names(mtcars)
[1] "miles per gallon" "cyl" "displacement" "hp" "drat" "wt" "qsec" "vs"
[9] "am" "gear" "carb"
> colnames(mtcars)[c(1,3)] <- c("mpg", "disp")
> colnames(mtcars)
[1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear" "carb"
rename()
rename(데이터프레임, "바꿀 열 이름" = "원래 열 이름")
> rename(mtcars, c("weight" = "wt", "miles per gallon" = "mpg", "displacement" = "disp"))
miles per gallon cyl displacement hp drat weight qsec vs am gear carb
Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
[ reached 'max' / getOption("max.print") -- omitted 23 rows ]
> names(mtcars) # 열 이름을 확인해보니 rename 함수는 원본 데이터의 열 이름을 바꾸지는 않는다.
[1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear" "carb"
행 이름 확인
rownames()
> rownames(mtcars)
[1] "Mazda RX4" "Mazda RX4 Wag" "Datsun 710" "Hornet 4 Drive" "Hornet Sportabout" "Valiant" "Duster 360"
[8] "Merc 240D" "Merc 230" "Merc 280" "Merc 280C" "Merc 450SE" "Merc 450SL" "Merc 450SLC"
[15] "Cadillac Fleetwood" "Lincoln Continental" "Chrysler Imperial" "Fiat 128" "Honda Civic" "Toyota Corolla" "Toyota Corona"
[22] "Dodge Challenger" "AMC Javelin" "Camaro Z28" "Pontiac Firebird" "Fiat X1-9" "Porsche 914-2" "Lotus Europa"
[29] "Ford Pantera L" "Ferrari Dino" "Maserati Bora" "Volvo 142E"
행 이름 변경
rownames()
# 첫번째 행 이름 변경
> rownames(mtcars)[1] <- "aaaaaaaaa"
> mtcars
mpg cyl disp hp drat wt qsec vs am gear carb
aaaaaaaaa 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
[ reached 'max' / getOption("max.print") -- omitted 23 rows ]
column_to_rownames(), rownames_to_column()
column_to_rownames(): 열을 행 이름으로
rownames_to_column(): 행 이름을 열로
# 행 이름을 열로
> mtcars.1 <- rownames_to_column(mtcars, var = "Model")
> mtcars.1
Model mpg cyl disp hp drat wt qsec vs am gear carb
1 Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
2 Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
3 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
4 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
5 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
6 Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
7 Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
8 Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
[ reached 'max' / getOption("max.print") -- omitted 24 rows ]
# 열을 행 이름으로
> mtcars.1 <- column_to_rownames(mtcars.1, var = "Model")
> mtcars.1
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
[ reached 'max' / getOption("max.print") -- omitted 23 rows ]
행 이름 삭제
remove_rownames()
> remove_rownames(mtcars)
mpg cyl disp hp drat wt qsec vs am gear carb
1 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
2 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
3 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
4 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
5 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
6 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
7 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
8 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
9 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
[ reached 'max' / getOption("max.print") -- omitted 23 rows ]
'코딩, 딱 지금이 시작할때! (코딱지)' 카테고리의 다른 글
[Error/git] fatal: not a git repository (or any parent up to mount point /) (0) | 2023.07.19 |
---|---|
sudo 권한 없을 때 conda env에 make로 설치 (0) | 2023.07.17 |
[Python] 특정 문자열 목록을 포함하는 모든 파일 찾아서 복사하기 (0) | 2023.01.17 |
[Python] 사진 및 영상 배경 쉽게 제거해주는 프로그램 (무료, 여러개 한번에) (0) | 2023.01.12 |
[R] 사용자 설치 패키지 모두 삭제 (1) | 2023.01.12 |