본문 바로가기
반응형

r159

R 팩토리얼 함수 (factorial) 팩토리얼은 1부터 n까지의 정수를 곱하는 연산입니다. 예를들어 5!은 아래와 같습니다. 5!=1x2x3x4x5 R의 팩토리얼 함수는 factorial 입니다. > factorial(5) [1] 120 1! 부터 5!까지를 원소로 갖는 벡터를 생성할 수도 있습니다. > factorial(1:5) [1] 1 2 6 24 120 2020. 12. 14.
[R 코딩] 원소의 크기순/알파벳순으로 배열 (sort 함수) sort 함수를 사용합니다. > a=c(1,3,2,10,8,5) > sort(a) [1] 1 2 3 5 8 10 문자열에도 적용 가능합니다. 알파벳순으로 배열합니다. > s=c("a","c","e","d") > sort(s) [1] "a" "c" "d" "e" 역순으로 배열도 가능합니다. decreasing=TRUE 옵션을 설정해주시면 됩니다. > sort(a,decreasing=TRUE) [1] 10 8 5 3 2 1 2020. 12. 13.
R 통계 관련 함수 모음 모든 원소의 합 sum( ) 모든 원소의 곱 prod( ) 평균 mean( ) 중앙값 median( ) 표준편차 sd( ) 분산 var( ) 분위수 quantiile( ) 표준화 scale( ) 차분 diff( ) 최댓값 max( ) 최솟값 min( ) 최댓값 위치 which.max( ) 최솟값 위치 which.min( ) 2020. 12. 13.
[R 코딩] 객체를 검색 디렉토리에 추가 (attach 함수) attach 함수는 객체를 검색 디렉토리에 추가해줍니다. 데이터 이름을 검색 디렉토리에 추가하여 데이터 이름을 생략하고 변수에 접근할 수 있습니다. 아래는 iris 데이터를 이용한 예시입니다. iris 데이터를 검색 디렉토리에 추가하였습니다. > attach(iris) > search() [1] ".GlobalEnv" "iris" "tools:rstudio" [4] "package:stats" "package:graphics" "package:grDevices" [7] "package:utils" "package:datasets" "package:methods" [10] "Autoloads" "package:base" iris 데이터의 한 변수인 Sepal.Length에 접근해봅시다. iris$Sepal.. 2020. 12. 13.
R 불러온 패키지 목록과 경로 확인 패키지 목록만 확인 : search( ) > search() [1] ".GlobalEnv" "tools:rstudio" "package:stats" [4] "package:graphics" "package:grDevices" "package:utils" [7] "package:datasets" "package:methods" "Autoloads" [10] "package:base" 패키지 목록과 경로 확인 : searchpaths() > searchpaths() [1] ".GlobalEnv" [2] "tools:rstudio" [3] "C:/Program Files/R/R-3.6.2/library/stats" [4] "C:/Program Files/R/R-3.6.2/library/graphics" [5].. 2020. 12. 13.
R 설치 시 기본적으로 설치되는 패키지 R을 설치하면 7개의 패키지가 디폴트로 설치됩니다. > search() [1] ".GlobalEnv" "tools:rstudio" "package:stats" [4] "package:graphics" "package:grDevices" "package:utils" [7] "package:datasets" "package:methods" "Autoloads" [10] "package:base" stats graphics grDevices utils datasets methods base 입니다. 2020. 12. 13.
R 패키지 업데이트 하는 방법 패키지를 업데이트 할 때는 update.packages() 를 사용합니다. 아래와 같은 형식입니다. update.packages("패키지 이름") 2020. 12. 13.
R 함수 만들 때 결과 여러개 내보내기 벡터를 사용하여 결과 여러개 내보내기 평균, 표준편차, 길이를 출력하는 함수를 정의해봅시다. fun1=function(x){ mean=mean(x) sd=sd(x) n=length(x) result=c(mean,sd,n) result } 사용해봅시다. > fun1(1:10) [1] 5.50000 3.02765 10.00000 리스트를 사용하여 결과 여러개 내보내기 평균, 표준편차, 길이를 출력하는 함수를 정의해봅시다. fun2=function(x){ mean=mean(x) sd=sd(x) n=length(x) list(mean,sd,n) } 사용해봅시다. > fun2(1:10) [[1]] [1] 5.5 [[2]] [1] 3.02765 [[3]] [1] 10 2020. 12. 13.
[R 내장데이터 설명] mtcars 데이터 한줄요약 : 32행 11열의 데이터프레임 R 내장데이터를 잘 알아두면 유용하게 사용됩니다. 여러 책이나 예제들에서도 내장데이터를 사용하고 있어 공부하는데도 도움이 됩니다. 오늘은 내장데이터 중 mtcars 데이터를 알아봅시다. 먼저 help(mtcars) 를 입력하면, mtcars 데이터의 설명을 볼 수 있습니다. 이 중 description(설명)을 번역하면 아래와 같습니다. 1974년 모터트랜드 US 메거진에서 가져온 데이터입니다. 32 종 자동차의 10가지 디자인과 성능특성과 연료소모량입니다. str 함수를 적용해봅시다. > str(mtcars) 'data.frame':32 obs. of 11 variables: $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 .. 2020. 12. 12.
[R 코딩] 평면분할표 ftable 함수 출력옵션 ftable 함수의 기본적인 설명은 아래 링크로 대신합니다. rbasall.tistory.com/160 [R 코딩] 평면분할표 ftable (3차원 이상의 table을 계층화) ftable 함수는 table을 계층화해주는 함수입니다. 3차원 이상의 table부터 의미가 있습니다. 예시를 통해 이해해봅시다. 먼저 3차원 table을 하나 정의해봅시다. 타이타닉호에 탑승한 5사람의 대 rbasall.tistory.com 내장데이터인 타이타닉데이터를 이용하여 ftable 함수의 출력옵션을 알아봅시다. 먼저 타이타닉데이터를 살펴봅시다. > str(Titanic) 'table' num [1:4, 1:2, 1:2, 1:2] 0 0 35 0 0 0 17 0 118 154 ... - attr(*, "dimnames").. 2020. 12. 12.
[R 내장데이터 설명] 타이타닉 데이터 요약 : 4개 요인을 가진 4차원 테이블 R 내장데이터를 잘 알아두면 유용하게 사용됩니다. 여러 책이나 예제들에서도 내장데이터를 사용하고 있어 공부하는데도 도움이 됩니다. 오늘은 내장데이터 중 타이타닉 데이터를 알아봅시다. 먼저 help(Titanic) 를 입력하면, 타이타닉 데이터의 설명을 볼 수 있습니다. 이 중 description(설명)을 번역하면 아래와 같습니다. 타이타닉 승객들의 운명에 대한 데이터이다. 승객 등급, 성별, 나이, 생존여부로 나뉜다. str함수를 적용해봅시다. > str(Titanic) 'table' num [1:4, 1:2, 1:2, 1:2] 0 0 35 0 0 0 17 0 118 154 ... - attr(*, "dimnames")=List of 4 ..$ Class : c.. 2020. 12. 12.
[R 내장데이터 설명] CO2 데이터 한줄요약 : 5열 84행의 데이터프레임 R 내장데이터를 잘 알아두면 유용하게 사용됩니다. 여러 책이나 예제들에서도 내장데이터를 사용하고 있어 공부하는데도 도움이 됩니다. 오늘은 내장데이터 중 CO2 데이터를 알아봅시다. 먼저 help(CO2) 를 입력하면, CO2 데이터의 설명을 볼 수 있습니다. 이 중 description(설명)을 번역하면 아래와 같습니다. CO2 데이터프레임은 80행 5열로 되어 있습니다. 돌피(Echinochloa crus-galli)라는 식물종을 이용하여 냉기에 대한 저항을 실험한 결과입니다. str함수를 적용해봅시다. > str(CO2) Classes ‘nfnGroupedData’, ‘nfGroupedData’, ‘groupedData’ and 'data.frame':84 ob.. 2020. 12. 12.
[R 내장데이터 설명] iris 데이터 한줄요약 : 5열, 150행의 데이터프레임 R 내장데이터를 잘 알아두면 유용하게 사용됩니다. 여러 책이나 예제들에서도 내장데이터를 사용하고 있어 공부하는데도 도움이 됩니다. 오늘은 내장데이터 중 iris 데이터를 알아봅시다. 먼저 help(iris) 를 입력하면, iris 데이터의 설명을 볼 수 있습니다. 이 중 description(설명)을 번역하면 아래와 같습니다. 그 유명한 iris 데이터는 cm 단위로 측정된 값들을 제공한다. 데이터는 sepal length, width 와 petal length, width 이다. iris 3종에서 각각 50개의 꽃에 대한 정보입니다. iris 3종은 setosa, versicolor, virginica 입니다. sepal 은 꽃 받침이고, petal은 꽃잎 입.. 2020. 12. 12.
[R] 테이블에서 열 또는 행 위주로 정리(주변표) 먼저 테이블을 하나 정의합시다. 다섯 사람의 성별과 혈액형 데이터입니다. > gender=c("M","M","F","F","M") > btype=c("A","B","B","A","B") > mt=table(gender,btype) > mt btype gender A B F 1 1 M 1 2 행 위주로 정리해봅시다. margin.table( ) 함수에서 margin 옵션을 1로 입력합니다. > margin.table(mt,1) gender F M 2 3 이번에는 열 위주로 정리해봅시다. > margin.table(mt,2) btype A B 2 3 2020. 12. 12.
[R] 테이블을 비율로 변환 먼저 테이블을 하나 정의합시다. 다섯 사람의 성별과 혈액형 데이터입니다. > gender=c("M","M","F","F","M") > btype=c("A","B","B","A","B") > mt=table(gender,btype) > mt btype gender A B F 1 1 M 1 2 비율로 바꿔봅시다. 함수는 prob.table() 입니다. 전체 합이 1이 되도록 비율로 바꾼 것입니다. > prop.table(mt) btype gender A B F 0.2 0.2 M 0.2 0.4 이번에는 옵션을 추가해봅시다. margin 옵션입니다. margin=1 로 설정할 경우 각 행의 합이 1이 되도록 비율로 바꾸는 것입니다. > prop.table(mt,margin=1) btype gender A B F.. 2020. 12. 12.
[R코딩] 자음만 남기는 함수 단어의 자음만 남기는 함수는 abbreviate( ) 입니다. 아래는 예시입니다. > abbreviate("start") start "strt" > abbreviate("hi hello") hi hello "hhll" 2020. 12. 12.
[R코딩] 미국 주(state)이름 데이터 R에서는 미국 주(state)이름 데이터를 제공합니다. 먼저 주 전체이름 데이터입니다. > state.name [1] "Alabama" "Alaska" "Arizona" "Arkansas" [5] "California" "Colorado" "Connecticut" "Delaware" [9] "Florida" "Georgia" "Hawaii" "Idaho" [13] "Illinois" "Indiana" "Iowa" "Kansas" [17] "Kentucky" "Louisiana" "Maine" "Maryland" [21] "Massachusetts" "Michigan" "Minnesota" "Mississippi" [25] "Missouri" "Montana" "Nebraska" "Nevada" [29] .. 2020. 12. 12.
R 월(month) 영어이름 데이터 (Jan,Feb,...) R에서는 월(month)의 영어이름 데이터를 제공합니다. 두가지가 있습니다. 전체이름 데이터는 month.name 입니다. > month.name [1] "January" "February" "March" "April" "May" [6] "June" "July" "August" "September" "October" [11] "November" "December" 약어 데이터는 month.abb 입니다. > month.abb [1] "Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" [12] "Dec" 2020. 12. 12.
R에서 알파벳 불러오기 R에서는 알파벳 대소문자를 내장데이터로 갖고 있습니다. 먼저 대분자데이터입니다. LETTERS 를 입력하면 됩니다. > LETTERS [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" [18] "R" "S" "T" "U" "V" "W" "X" "Y" "Z" 소문자는 소문자로 letters 를 입력합니다. > letters [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" [18] "r" "s" "t" "u" "v" "w" "x" "y" "z" 2020. 12. 12.
R for문 사용방법 형식은 아래와 같습니다. 꼭 i가 아니어도 됩니다. 아무 문자나 가능합니다. for(i in 자료구조){ i가 들어간 문장 } data는 주로 벡터가 사용됩니다. 벡터가 아닌 데이터프레임 등도 사용이 가능합니다. 아래는 예시입니다. 첫항이 2이고, 공차가 3인 등차수열의 1항부터 5항까지의 원소를 v라는 변수에 저장해봅시다. v= c( ) for (i in 1:5){ v[i]=2+3*(i-1) } 2020. 12. 11.
[R] 특정 패키지가 제공하는 데이터를 불러오는 방법 [R] 특정 패키지가 제공하는 데이터를 불러오는 방법 특정 패키지가 제공하는 데이터를 불러올 때는 data 함수를 사용합니다. 아래와 같은 형식으로 사용합니다. data(데이터 이름 , package="패키지 이름") 예를들어 MASS라는 패키지가 제공하는 데이터 중 DDT 를 가져오기 원한다고 합시다. 그냥 DDT라고 입력하면 에러가 뜹니다. > DDTError: object 'DDT' not found 데이터를 불러와 봅시다. > data(DDT,package="MASS") 다시 DDT를 입력하면 데이터가 출력됩니다. > DDT [1] 2.79 2.93 3.22 3.78 3.22 3.38 3.18 3.33 3.34 3.06 3.07 3.56 3.08 4.64 3.34 2020. 11. 30.
[R] 작업 디렉토리 확인 및 변경 [R] 작업 디렉토리 확인 및 변경 작업 디렉토리 확인 get working directorty 의 약어 > getwd()[1] "C:/Users//Documents" 작업디렉토리 변경 set working directory 의 약어 > setwd("경로") 2020. 11. 30.
R에서 %가 들어간 연산자들 (%%, %/%, %*%, %in%, %>%) R에서 %가 들어간 연산자들 (%%, %/%, %*%, %in%, %>%) %% 나머지 계산 > 12%%7[1] 5 %/% 몫 계산 > 12%/%7[1] 1 %*% 행렬의 곱 > m=matrix(1:6,nrow=2)> v=c(1,2,3)> m%*%v [,1][1,] 22[2,] 28 %in% 원소 여부 > 3 %in% v[1] TRUE> 11 %in% v[1] FALSE> c(1,2) %in% v[1] TRUE TRUE %>% dplyr 패키지의 파이프연산자. 연산자 오른쪽의 함수를 왼쪽에 적용. > library(dplyr)> v=c(1,2,3,4,5)> v %>% mesn> v %>% mean[1] 3 2020. 11. 30.
[R] 벡터를 벡터로 거듭제곱하기 [R] 벡터를 벡터로 거듭제곱하기 벡터를 벡터로 거듭제곱해봅시다. > v1=c(1,2,3)> v2=c(1,2,3)> v1^v2[1] 1 4 27 같은 위치의 원소끼리 거듭제곱이 계산됩니다. 2020. 11. 30.
[R] 벡터와 스칼라의 사칙연산 (덧셈,곱셈,뺄셈,나눗셈) [R] 벡터와 스칼라의 사칙연산 (덧셈,곱셈,뺄셈,나눗셈) 벡터와 스칼라의 덧셈과 뺄셈 - 벡터 각원소에 스칼라와의 연산을 적용 > v1=c(1,2,3,4,5)> v1+2[1] 3 4 5 6 7> v1-2[1] -1 0 1 2 3 벡터와 스칼라의 곱셈 - 벡터 각원소에 스칼라와의 연산을 적용 > v1=c(1,2,3,4,5)> v1*2[1] 2 4 6 8 10 벡터와 스칼라의 나눗셈 - 벡터 각원소에 스칼라와의 연산을 적용 > v1=c(1,2,3,4,5)> v1/2[1] 0.5 1.0 1.5 2.0 2.5 2020. 11. 30.
[R] 벡터와 벡터의 사칙연산 (덧셈,곱셈,뺄셈,나눗셈) [R] 벡터와 벡터의 사칙연산 (덧셈,곱셈,뺄셈,나눗셈) 벡터의 덧셈과 뺄셈 - 같은 위치의 원소끼리 연산 수행 > v1=c(1,2,3,4,5)> v2=c(2,3,4,5,6)> v1+v2[1] 3 5 7 9 11> v1-v2[1] -1 -1 -1 -1 -1 벡터의 곱셈 - 같은 위치의 원소끼리 연산 수행 > v1=c(1,2,3)> v2=c(10,20,30)> v1*v2[1] 10 40 90 벡터의 나눗셈 - 같은 위치의 원소끼리 연산 수행 > v1=c(1,2,3)> v2=c(10,20,30)> v1/v2[1] 0.1 0.1 0.1 2020. 11. 30.
[R] 벡터원소 이름으로 인덱싱 [R] 벡터원소 이름으로 인덱싱 벡터원소의 이름을 지정하면 이름으로 인덱싱이 가능합니다. 벡터 원소 이름 지정은 names 함수를 이용합니다. > v1=c(1,2,3)> names(v1)=c("A","B","C")> v1A B C 1 2 3 이름으로 인덱싱 하는 방법은 아래와 같습니다. > v1["A"]A 1 > v1[c("A","C")]A C 1 3 2020. 11. 30.
[R] 벡터의 비교 [R] 벡터의 비교 두 벡터에 비교 연산자를 적용하면 각 원소의 비교 결과를 출력해줍니다. > V1=c(1,2,3)> V2=c(1,2,5)> V1==V2[1] TRUE TRUE FALSE> V1>V2[1] FALSE FALSE FALSE> V1 V1=c(1,2,3)> V2=c(1,2,3,4)> V1==V2[1] TRUE TRUE TRUE FALSEWarning message:In V1 == V2 : longer object length is not a multiple of shorter object length 2020. 11. 30.
R 정의된 모든 변수와 함수 확인하는 방법 (ls) R 정의된 모든 변수와 함수 확인하는 방법 (ls) 사용자가 정의한 모든 변수와 함수를 확인할 때는 ls 함수를 사용합니다. 아래는 예시입니다. > ls()character(0)> a=3> b=5> f=function(x) (x+3)> ls()[1] "a" "b" "f" 2020. 11. 27.
R 패키지 설명 보는 법 R 패키지 설명 보는 법 패키지의 설명을 보는 방법은 아래와 같습니다. help(package = "패키지 이름") 아래는 예시입니다. > help(package="readxl") help 탭의 아래와 같은 내용이 출력됩니다. 2020. 11. 27.
반응형