Professional Documents
Culture Documents
6ì Ë °ì Í ° Ì Ë Ì Ë °ì Í ° Í Ì Ì Ë
6ì Ë °ì Í ° Ì Ë Ì Ë °ì Í ° Í Ì Ì Ë
성별 M, F, F, M, M, M, F, F, F, M
학점 A, B, C, D, F, A, C, B, D, F
1. 데이터의 종류
것은 아님
1. 데이터의 종류
학번 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
키 162.0, 170.4, 180.0, 150.5, 130.5, 167.0, 120.1, 174.2, 163.5, 168.0
1. 데이터의 종류
변수의 개수에 따라 단일변수 데이터와 다중변수 데이터로
분류
이변량 자료’
1. 데이터의 종류
blood_type <- c("A", "B", "O", "AB", "O", "A", "O", "A", "AB", "A")
blood_type
table(blood_type)
table(blood_type)/length(blood_type)
[ 실행결과 ]
> blood_type <- c("A", "B", "O", "AB", "O", "A", "O", "A", "AB", "A")
> blood_type
[1] "A" "B" "O" "AB" "O" "A" "O" "A" "AB" "A"
> table(blood_type)
blood_type
A AB B O
4213
> table(blood_type)/length(blood_type)
blood_type
A AB B O
0.4 0.2 0.1 0.3
1. 데이터의 종류
table() 함수
실행 결과에서 blood_type 은 자료가 저장된 벡터의 이름이고 , 아래 부분에는 4 가지의 혈액형에 대한 빈도가
계산되어 출력됨
빈도를 보면 A 형이 가장 많고 B 형이 가장 적음
중앙에 위치하는 값
book_pages <- c(300, 250, 330, 270, 280, 310) [1] 300 250 330 270 280 310
제안됨
절사평균은 특이값을 제외하고 나머지 값들로 평균을 구하는 효과가 있기 때문에 두 벡터의 절사평균값은
큰 차이가 없음
1. 데이터의 종류
사분위수 (quatrile)
평균이나 중앙값이 하나의 값으로 전체의 특성을 추정해볼 수 있는 도구인 것처럼 사분위수는 세
개의 값으로 전체의 특성을 추정하는 데 사용되며 , 세 개의 값으로 전체의 특성을 추정하기 때문에
보다 많은 정보를 줄 수
있음
1. 데이터의 종류
[ 코드 6-3]
book_pages <- c(250, 260, 270, 275, 280, 300, 310, 320, 330, 500)
book_pages
quantile(book_pages) # 사분위수
quantile(book_pages, (0:10)/10) # 10% 단위로 구간을 나누어 계산
summary(book_pages)
[ 실행결과 ]
> book_pages
[1] 250 260 270 275 280 300 310 320 330 500
> quantile(book_pages)
0% 25% 50% 75% 100%
250.00 271.25 290.00 317.50 500.00
> quantile(book_pages, (0:10)/10)
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
250.0 259.0 268.0 273.5 278.0 290.0 304.0 313.0 322.0 347.0 500.0
> summary(book_pages)
Min. 1st Qu. Median Mean 3rd Qu. Max.
250.0 271.2 290.0 309.5 317.5 500.0
1. 데이터의 종류
사분위수
quantile(book_pages, (0:10)/10)
(0:10)/10 의 의미는 0~10 의 정수를 10 으로 나누라는 것이고 , 결과는 0.1~1.0 까지의 값으로
사분위수를 구할 때 가장 일반적으로 사용되는 함수는 summary() 함수로 , 사분위수 (1st Qu., Me-
어떤 자료에 분산과 표준편차가 작다는 의미는 자료의 관측값들이 평균값 부근에 모여 있다는 것이고 , 분산과
diff 함수의 값이 크면 관측값들이 넓게 퍼져 book_pages <- c(250, 260, 270, 275, 280, 300, 310, 320, 330, 500)
var(book_pages) # 분산
있다는 의미 , 차이가 작으면 좁게 모여 있다는 의미
sd(book_pages) # 표준편차
단일변수 연속형 데이터는 히스토그램이나 상자그림을 range(book_pages) # 값의 범위
diff(range(book_pages)) # 최대값 , 최소값의 차이
이용
[ 실행결과 ]
> book_pages <- c(250, 260, 270, 275, 280, 300, 310, 320, 330, 500)
> var(book_pages)
[1] 5169.167
> sd(book_pages)
[1] 71.89692
> range(book_pages)
[1] 250 500
> diff(range(book_pages))
[1] 250
1. 데이터의 종류
산점도 (scatter plot) : 2 개의 변수로 구성된 자료의 분포를 알아보는 그래프 , 관측값들의 분포를 통해 2 개의
자동차의 중량이 커지면 연비는 감소하는 추세를 보여주는데 추세의 모양이 선 (line) 이여서 중량과
r 이 1 이나 – 1 에 가까울수록 x, y 의 상관성이 높다 .
iris 붓꽃 종의 분류
women 여성 키와 몸무게
datasets
mtcars 자동차 모델에 대한 제원 정보
state.x77 미국의 각 주별 통계 정보
컬럼명 의미 데이터타입
Sepal.Width 꽃받침의 너비 Number
파일 형식 변환
공공데이터 포털 (data.go.kr) 에서 예술의전당 공연 / 전시 입장객 현황
2. 데이터 파일 읽기
파일 형식 변환
setwd("C:/REx") # 작업 폴더 지정
eq <- read.csv("Art_guest.csv", header=T) # .csv 파일 읽기
head(eq)
외부 파일 데이터 읽기
하면 됨
2. 데이터 파일 읽기
엑셀 파일을 읽어오기
엑셀 패키지 설치 시 오류 대처 방법
R 4.0.0 버전부터 윈도우용 R 은 rtool40 이라 불리는 toolchain bundle 을 사용하는데 이것은 r 을 build 하고 유지하는 걸 쉽게 만들어줌
변경
Rtools40 을 ‘ https://cran.r-project.org/bin/windows/Rtools/’
에서 64 비트 다운로드를 받아 설치하도록 함
2. 데이터 파일 읽기
Rtools40 다운로드 화면
2. 데이터 파일 읽기
Rtools40 설치화면
2. 데이터 파일 읽기
엑셀 파일을 읽어오기 (RStudio 를 관리자 권한으로 실행 )
[ 코드 6-9]
[ 코드 6-9]
install.packages("xlsx")
library(xlsx)
eq_excel <- read.xlsx("C:/REx/Art_guest.xlsx", header = T, sheetIndex=1, encoding=‘UTF-8’)
# 읽어올 파일의 이름 , 첫번째 행은 열 이름 , 엑셀 파일의 첫번째 시트를 읽으라는 의미 , 한글 오류 방지
head(eq_excel)
2. 데이터 파일 읽기
파일 읽기
setwd("C:/REx") # 작업 폴더 지정
eq <- read.csv("C:/REx/Art_guest.csv", header=T)
파일 저장
R 에서 작업한 결과를 파일에 저장할 때는 write.xlsx() 함수를 이용
[ 코드 6-10]
setwd("C:/REx")
virginica.iris <- subset(iris,Species=="virginica")
write.xlsx(virginica.iris, "virginica_iris.xlsx", row.names = F) # 행 번호를 붙이지 말고 저장
[ 실행결과 ]
> setwd("C:/REx")
> virginica.iris <- subset(iris,Species=="virginica")
> write.xlsx(virginica.iris, "virginica_iris.xlsx", row.names = F)
> View(virginica.iris)
과제