[R 강의] 71. 산점도에서 점의 색 서로 다르게 설정하기
도구 R로 푸는 통계 71. 산점도에서 점의 색 서로 다르게 설정하기 먼저 산점도를 하나 그려봅시다. x=c(1,2,3,4,5,6) y=c(1,2,3,4,5,6) plot(x,y) 산점도의 색을 바꿔봅시다. col 옵션을 사용합니다. x=c(1,2,3,4,5,6) y=c(1,2,3,4,5,6) plot(x,y,col='red') 산점도에 색을 바꾸긴 했는데, 점마다 다른 색을 입력하고 싶은 상황입니다. 첫 두점은 빨간색, 나머지 네 점은 파란색으로 입력하려고 합니다. 이때는 col 옵션에 원소가 색으로 이루어진 벡터를 입력해주면 됩니다. x=c(1,2,3,4,5,6) y=c(1,2,3,4,5,6) plot(x,y,col=c('red','red','blue','blue','blue','blue')) 만약 ..
2020. 3. 31.
[R 강의] 70. 파이그래프에 범례(legend) 추가하기
도구 R로 푸는 통계 70. 파이그래프에 범례(legend) 추가하기 68강에서 그렸던 파이그래프를 변형했습니다. 회사 이름을 빼고 퍼센트만 남겼습니다. 회사 이름은 오늘 배울 범례(legend)를 이용해서 나타내겠습니다. data= c(21.6,22.3,16.4,15.7,9.9,14.2) labels=paste(data,'%') mycolor=c(colors()[1],colors()[13],colors()[53],colors()[45],colors()[23],colors()[18]) title=c("Global large-area display market share 2017.1") pie(data,labels,col=mycolor,main=title) 위 그래프에 범례를 추가해봅시다. 회사 이름으로 ..
2020. 3. 30.
[R 강의] 69. 문자열을 연결하는 paste 함수
paste 함수는 우리가 정의한 벡터의 원소에 무언가를 붙이거나 벡터의 원소를 하나로 합쳐주는 기능을 합니다. 설명만 들어서는 감이 안올 수 있으니 간단한 예제부터 시작해봅시다. > a=c(1,2,3,4,5) > paste(a) [1] "1" "2" "3" "4" "5" 아무 조건 없이 paste 함수를 적용하면, 우리가 정의한 벡터가 문자열 벡터로 변경됩니다. as.character 과 동일한 기능을 합니다. 일단 벡터를 문자열로 바꿔야 합치던지 다른 문자를 붙이던지 할 수 있기 때문입니다. 이번에는 모든 원소에 hi 라는 단어를 추가해보겠습니다. > a=c(1,2,3,4,5) > paste(a,"hi") [1] "1 hi" "2 hi" "3 hi" "4 hi" "5 hi" 기능이 이해가 되시나요? 이..
2020. 3. 30.
[R 강의] 67. 산점도 '점'의 모양 25가지
도구 R로 푸는 통계 67. 산점도 '점'의 모양 25가지 산점도를 꾸미는 방법을 이전에 다뤘었는데, 이번 강의에서는 점의 모양을 바꾸는 방법을 더 자세히 다루려고 합니다. 먼저 오늘 강의에 활용할 예시를 하나 만들어봅시다. > x=c(1,2,3)ㅁ > y=c(1,2,3) > plot(x,y) 점의 모양을 바꿔봅시다. 점의 모양은 pch=숫자 로 바꿉니다. cex=숫자 는 점의 크기입니다. 25가지의 모양을 전부 출력해봅시다. par함수를 이용하여 5x5 창을 만들고 for문을 이용하여 출력함수를 코딩하겠습니다. x=c(1,2,3) y=c(1,2,3) par(mfrow=c(5,5)) for (i in 1:25){ plot(x,y,pch=i,cex=3) } 아래와 같은 에러가 출력될 지도 모릅니다. 이때는..
2020. 3. 30.
[R 강의] 66. 산점도 '점'의 색 바꾸기
도구 R로 푸는 통계 66. 산점도 '점'의 색 바꾸기 산점도를 꾸미는 방법을 이전에 다뤘었는데, 이번 강의에서는 색을 바꾸는 방법을 더 자세히 다루려고 합니다. 먼저 오늘 강의에 활용할 예시를 하나 만들어봅시다. > x=c(1,2,3,4,5) > y=c(1,2,3,4,5) > plot(x,y) 점의 색을 바꿔봅시다. 색은 col='이름 or RGB or Hex color code' 옵션을 추가해주면 됩니다. 1. 이름으로 입력하기 점의 색을 이름으로 입력해봅시다. 어떤 색들을 제공하는지 궁금하신 분들은 R에 colors() 라고 입력하시면 색들을 보여줍니다. 3.5.1 버전 기준으로 무려 657가지나 제공합니다. > x=c(1,2,3,4,5) > y=c(1,2,3,4,5) > plot(x,y,col='..
2020. 3. 29.
[R 강의] 65. 균등분포 (uniform distribution)
도구 R로 푸는 통계 65. 균등분포 (uniform distribution) 균등분포는 확률밀도함수 값이 일정한 분포입니다. 균등분포와 관련된 함수는 네 가지가 있습니다. 1. 확률밀도함수 dunif(x, min = 0, max = 1, log = FALSE) 정의역이 0~5인 균등분포에서 3의 확률밀도 값을 구하겠습니다. > dunif(3,0,5) [1] 0.2 이번에는 log를 TRUE로 설정해서 구해보겠습니다. > dunif(3,0,5,log=TRUE) [1] -1.609438 0.2에 로그를 씌운 log(0.2)와 값이 동일합니다. > log(0.2) [1] -1.609438 2. 누적분포함수 punif(x, min = 0, max = 1, lower.tail = TRUE, log.p = FAL..
2020. 3. 29.
[R 강의] 60. 객체의 내부 구조 보는 법 (str)
도구 R로 푸는 통계 60. 객체의 내부 구조 보는 법 (str) str 함수는 structure의 약어입니다. 벡터, 행렬, 리스트, 데이터프레임 등 객체의 '내부구조'를 보여줍니다. 내부를 한 눈에 볼 수 있어서 데이터프레임에 주로 사용됩니다. ex1) 벡터의 내부구조 보기 > a=c(1,2,3,4,5) > str(a) num [1:5] 1 2 3 4 5 ex2) 리스트의 내부구조 보기 > li=list(a=c(1,2,3),b=c("a","b","c")) > str(li) List of 2 $ a: num [1:3] 1 2 3 $ b: chr [1:3] "a" "b" "c" ex3) 데이터프레임의 내부구조 보기 > a=c(1,2,3) > b=c(1+1i,2+2i,3+3i) > c=c("a","b","..
2020. 3. 28.
[R 강의] 58. 데이터프레임 열추가, 행과 열에 이름 붙이기 (data.frame)
도구 R로 푸는 통계 58. 데이터프레임 열추가, 행과 열에 이름 붙이기 (data.frame) 데이터프레임을 하나 만들겠습니다. (데이터 프레임 만들기 : http://hsm-edu.tistory.com/481) 벡터를 먼저 정의하고 데이터프레임을 만들 수도 있지만, 아래와 같이 데이터 프레임 안에 직접 정의할 수도 있습니다. > DF=data.frame(a=c(1,2,3),b=c(1+1i,2+2i,3+3i),c=c("a","b","c")) > DF a b c 1 1 1+1i a 2 2 2+2i b 3 3 3+3i c 1. 데이터프레임에 열 추가하기 열을 추가하는 방법은 아래와 같습니다. d라는 열을 추가해보겠습니다. > DF$d=c(11,22,33) > DF a b c d 1 1 1+1i a 11 2..
2020. 3. 27.
[R 강의] 56. 데이터프레임 만들기 (data.frame)
도구 R로 푸는 통계 56. 데이터프레임 만들기 (data.frame) 데이터프레임은 R에서 가장 많이 사용되는 자료구조입니다. 데이터프레임의 형식은 행렬과 비슷한데, 모든 종류의 자료형을 동시에 담을 수 있습니다. (행렬 정의하기 : http://hsm-edu.tistory.com/406) 자료형에는 아래와 같은 종류가 있었습니다. (자료형 분류 : http://hsm-edu.tistory.com/314) - 숫자 (정수,실수,NaN,Inf) - NA(not available) - 복소수 - 문자열 - 논리값 - NULL - 요인(factor) 데이터프레임을 만드는 방법은 간단합니다. data.frame(자료,자료,자료,자료,...) ex1) 데이터프레임 만들기 > a=c(1,2,3) > b=c(1+1..
2020. 3. 27.
[R 강의] 55. 범주형 자료의 입력 (factor)
도구 R로 푸는 통계 55. 범주형 자료의 입력 (factor) 자료는 크게 둘로 나뉩니다. - 범주형자료(질적자료) - 연속형자료(양적자료) factor는 범주형 자료를 표현하기 위한 데이터타입(type)입니다. 범주형 자료는 순서가 있느냐 없느냐에 따라 명목척도, 순위척도로 나뉘는데요. 예를 들어보겠습니다. 범주형자료 - 명목척도 : 혈액형(A,B,O,AB), 남녀(M,F) - 순위척도 : 학년(1,2,3) factor를 입력하는 형식은 아래와 같습니다. factor(입력하기 원하는 데이터, 레벨, 순위여부) ex1) 혈액형 데이터 입력하기 친구 다섯명의 혈액형이 아래와 같다고 합시다. > bt=c("A","B","A","AB","O") factor로 입력해주겠습니다. > bt_f=factor(bt,..
2020. 3. 27.
[R 강의] 48. 분위수 구하는 방법 (quantile)
도구 R로 푸는 통계 48. 분위수 구하는 방법 (quantile) 분위수는 전체 자료를 등분할 때 기준이 되는 수 입니다. 분위수에 대한 자세한 설명은 아래 링크에서 보실 수 있습니다. (분위수 이론설명 : http://hsm-edu.tistory.com/533) R에서 제공하는 분위수 함수는 아래와 같습니다. quantile(x, probs = seq(0, 1, 0.25), type = 7) 자료를 입력하고, 자료를 나눌 비율을 정하고, 타입을 입력합니다. R에서는 분위수를 계산하는 type 9가지를 제공합니다. 각 방법에 대한 설명도 위 링크에 있습니다. 예를 들어봅시다. > a=c(24,28,37,43,46,47,59,67,75,77) > quantile(a) 0% 25% 50% 75% 100% ..
2020. 3. 25.
[R 강의] 45. 히스토그램 꾸미기
도구 R로 푸는 통계 45. 히스토그램 꾸미기 지난시간에는 히스토그램을 그려보았는데요. 오늘은 여러가지 옵션을 추가하여 히스토그램을 꾸며보겠습니다. 먼저 표본을 만들고 히스토그램을 그려봅시다. > ht=sample(160:190,50,replace=TRUE) > HT1=hist(ht, breaks=seq(160,190,2)) 1. 제목설정 제목을 설정하려면 main 옵션을 추가하면 됩니다. > HT1=hist(ht, breaks=seq(160,190,2), main="키_히스토그램") 2. x,y축 이름 설정 x,y 축 이름을 설정하려면 xlab과 ylab 옵션을 추가하면 됩니다. > HT1=hist(ht, breaks=seq(160,190,2), main="키_히스토그램",xlab="키",ylab="도..
2020. 3. 24.
[R 강의] 43. 순서를 알려주는 함수 (rank)
도구 R로 푸는 통계 43. 순서를 알려주는 함수 (rank) rank 함수는 각 원소가 크기 순서로 몇위 인지를 반환해줍니다. 가장 작은 값이 1위입니다. > A=c(21,11,23,15,29,24,13) > rank(A) [1] 4 1 5 3 7 6 2 만약 같은 값이 있으면 어떻게 할까요. ties.method 라는 옵션을 사용해서 설정할 수 있습니다. 여섯가지 옵션중 하나를 설정할 수 있습니다. - average : 평균 순위로 설정 - first : 앞에 있는 원소를 높은 순위로 - last : 뒤에 있는 원소를 높은 순위로 - random : 임의로 - max : 두 순위 중 큰 값으로 - min : 두 순위 중 작은 값으로 예를 들어 설명하겠습니다. > A=c(1,2,3,3,4,5,6) > ..
2020. 3. 24.
[R 강의] 42. 중복 된 값을 다루는 함수 (unique, duplicated)
도구 R로 푸는 통계 42. 중복 된 값을 다루는 함수 (unique, duplicated) 1. unique 함수 unique 함수는 중복된 항을 하나만 남기고 제거해주는 함수입니다. > x=c(1,1,2,2,2,3,4,5) > unique(x) [1] 1 2 3 4 5 문자열에서도 가능합니다. > x=c('a','a','b','b','c','d','e','e') > unique(x) [1] "a" "b" "c" "d" "e" 2. duplicated 함수 duplicated 함수는 중복된 항에는 TRUE, 처음 등장하는항에는 FALSE를 반환해주는 함수입니다. > x=c(1,1,2,2,2,3,4,5) > duplicated(x) [1] FALSE TRUE FALSE TRUE TRUE FALSE FAL..
2020. 3. 23.