R에서 제공하는 산술연산자 (더하기,곱하기,행렬곱 등)
R에서 제공하는 산술연산자 (더하기,곱하기,행렬곱 등) R에서 제공하는 산술연산자입니다. + 더하기 - 빼기 * 곱하기 / 나누기 ^ (또는 **) 지수 승 %% 나머지 %/% 나누기의 몫을 반환 %*% 행렬의 곱셈 사칙연산은 잘 알고 있으니, 나머지 연산자들만 예시로 알아봅시다. 나머지 연산자는 연산자 앞에 있는 수를 뒤에 있는 수로 나눈 나머지를 반환해줍니다 . > 12%%5[1] 2 %/% 연산자는 나누기 결과에서 몫만 반환합니다. > 17/4[1] 4.25> 17%/%4[1] 4 행렬의 곱셈을 해봅시다. 먼저 곱셈연산자 *를 사용해봅시다. > mat1=matrix(c(1,2,3,4),nrow=2)> mat1 [,1] [,2][1,] 1 3[2,] 2 4> mat2=matrix(c(1,2,3,4),..
2020. 1. 20.
R에서 제공하는 모든 자료형 (숫자형,복소수형,문자형,논리형,NULL형)
R에서 제공하는 모든 자료형 (숫자형,복소수형,문자형,논리형,NULL형) R에서 제공하는 자료형은 큰 범주로 나눠보면 아래와 같습니다. 1) 숫자형 (정수,실수,NaN,Inf)2) 복소수형3) 문자형4) 논리형 (TRUE,FALSE,NA)5) NULL 형 1) 숫자형 (정수,실수,NA,Inf) 숫자형은 다시 정수형과 실수형으로 나눠집니다. 디폴트는 실수형입니다. 정수형을 정의하고 싶을 경우 정수 뒤에 L을 붙여주면 됩니다. > a=3> a[1] 3> b=3L> b[1] 3> c=3.1> c[1] 3.1 typeof를 이용하면 변수의 자료형을 확인할 수 있습니다. > typeof(a) [1] "double" > typeof(b) [1] "integer" > typeof(c) [1] "double" 숫자형에..
2020. 1. 20.
R에서 여러 요인(factor)들이 결합된 요인을 만들어주는 interaction 함수
R에서 여러 요인(factor)들이 결합된 요인을 만들어주는 interaction 함수 다섯 사람이 있다고 해봅시다. 다섯 사람의 성별과 혈액형은 아래와 같습니다. gender=factor(c('M','M','F','M','F'),levels=c('M','F'))b_type=factor(c('A','O','AB','B','A'),levels=c('A','O','AB','B')) interaction 함수를 적용해보겠습니다. > interaction(gender,b_type)[1] M.A M.O F.AB M.B F.A Levels: F.A M.A F.AB M.AB F.B M.B F.O M.O 위와 같이 두 요인이 결합된 요인을 반환해줍니다. level을 보면 두 요인의 level 조합으로 나올 수 있는 모..
2020. 1. 18.
R에서 요인(factor)을 쉽게 정의할 수 있는 꿀함수 gl()
R에서 요인(factor)을 쉽게 정의할 수 있는 꿀함수 gl() gl함수를 이용하면 요인을 간편하게 정의할 수 있습니다. 아래와 같이 사용합니다. gl(요인 수, 요인 별 반복 수, 전체 수, 요인 이름) 예를들어서 남자(M)와 여자(F)로 구성된 요인을 만들고 싶다고 해봅시다. M,M,M,F,F,F 를 만들고 싶다면, gl함수를 아래와 같이 사용하면 됩니다. > gl(2,3,labels=c("M","F"))[1] M M M F F FLevels: M F 이번에는 전체 수도 입력해봅시다. 10을 입력하면, MMMFFF 가 3개씩 입력되다가 10개가 되면 입력을 멈춥니다. > gl(2,3,10,labels=c("M","F")) [1] M M M F F F M M M FLevels: M F ordered ..
2020. 1. 18.
[R 유용한 함수] 데이터의 그룹을 나눠주는 split 함수
데이터의 그룹을 나눠주는 split 함수 R에서 제공하는 split 함수는 데이터를 그룹으로 나눠줍니다. 말로 설명이 어려워서 예제를 통해 이해해봅시다. 먼저 아래와 같이 사람 열명의 이름으로 되어 있는 데이터를 만들어봅시다. name=c("KKH","LIK","JJI","AHK","BBK","SYJ","BJW","JDK","KII","SSI") 이제 이 사람들을 A,B,C 세개의 그룹으로 나눌 것입니다. 그룹 배정이 아래와 같이 되었다고 합시다. (factor가 아니라 vector 형태로 입력해도 됩니다. vector로 입력할 경우 drop 옵션 사용이 불가합니다. 이후 설명하겠습니다.) group=factor(c("A","B","A","C","C","A","B","B","A","C")) spilit ..
2020. 1. 18.
R에서 중복 제거하고 원소 종류만 알고 싶을 때, unique()
R에서 중복 제거하고 원소 종류만 알고 싶을 때, unique() 예를들어 아래와 같이 과일 이름데이터가 있다고 해봅시다. fruits=c("apple","apple","banana","orange","orange","melon","apple","orange","banana") 어떤 과일이 들어 있는지 종류만 알고 싶을 때는 unique 함수를 사용하면 됩니다. > unique(fruits)[1] "apple" "banana" "orange" "melon" fromLast 옵션을 TRUE로 하면, 결과를 역순으로 출력할 수도 있습니다. > unique(fruits,fromLast=TRUE)[1] "melon" "apple" "orange" "banana"
2020. 1. 1.
R에서 데이터를 txt, csv 로 저장하는 방법
R에서 데이터를 txt, csv 로 저장하는 방법 먼저 데이터를 하나 만들어봅시다. num=c(1,2,3)char=c("a","b","c")log=c(TRUE,TRUE,FALSE) mydf=data.frame(num,char,log) > mydf num char log1 1 a TRUE2 2 b TRUE3 3 c FALSE txt 형태로 저장해봅시다. 저장은 working directory에 됩니다. working directory를 확인합시다. >getwd()"C:/Users/hi/Documents" 원하는 경로를 working directory로 지정합니다. > setwd("C:/Users/Public") 경로가 맞게 지정되었나 확인합니다. > getwd()[1] "C:/Users/Public" 이제..
2019. 12. 21.
R 데이터프레임 열별 누락 데이터 개수 확인
R 데이터프레임 열별 누락 데이터 개수 확인 #데이터 정의 data1=c(1,2,3,NA,5) data2=c(NA,2,3,NA,5) data3=c(NA,NA,NA,4,5) #데이터 프레임 정의 my_df=data.frame(data1,data2,data3) > my_df data1 data2 data3 1 1 NA NA 2 2 2 NA 3 3 3 NA 4 NA NA 4 5 5 5 5 #apply 함수를 이용하여 누락데이터 수 계산 #sum 함수 안에 다시 is.na 함수를 적용한 것이라, 아래와 같은 형식 사용 apply(my_df,2,function(x) sum(is.na(x))) > apply(my_df,2,function(x) sum(is.na(x))) data1 data2 data3 1 2 3
2019. 12. 12.
R에서 리스트를 벡터로 바꾸는 방법, unlist()
R에서 리스트를 벡터로 바꾸는 방법, unlist() 먼저 리스트를 하나 만들겠습니다. my_list=list(c(1,2,3),c('a','b','c')) unlist함수를 적용하면, 리스트에 입력된 순서대로 벡터의 원소가 됩니다. 문자형만 있는 경우 factor로 반환됩니다. > unlist(my_list)[1] "1" "2" "3" "a" "b" "c" 저는 주로 이런 상황에 사용합니다. 데이터프레임에서 [ ] 인덱스로 열에 접근할 경우 결과가 리스트로 반환됩니다. 데이터프레임을 하나 만들어봅시다. > myd=data.frame(c1=c(1,2,3),c2=c("a","b","c")) > myd c1 c2 1 1 a 2 2 b 3 3 c 2열에 접근하여 myd_2에 저장합시다. 리스트 형태로 저장됩니다..
2019. 12. 11.
R 문자열을 각각 원소로 만들기1 ("abcd" → "a" "b" "c" "d")
R 문자열을 각각 원소로 만들기1 ("abcd" → "a" "b" "c" "d") 문자열 벡터를 만들 때, 따옴표를 매번 입력해야해서 불편합니다. a=c("a","b","c","d","e") 이런 경우 사용할 수 있는 팁을 알려드리겠습니다. 문자열 벡터를 만드는 다양한 경우에 응용이 가능합니다. 먼저 문자열을 전부 붙여서 벡터를 만들어줍니다. a=c("abcde") 이 벡터에 substring 함수를 적용합니다. > a2=substring(a,1:5,1:5) > a2 [1] "a" "b" "c" "d" "e" substring 함수의 형식은 아래와 같습니다. substring(벡터, 시작, 끝) 우리가 위에서 적용한 substring 함수는 c(1,2,3,4,5)에서 각각 시작하고, c(1,2,3,4,5..
2019. 12. 2.
[R기초] 요인(factor) 정의하는 방법
[R기초] 요인(factor) 정의하는 방법 factor는 범주형자료를 입력할 때 사용합니다. 범주형은 영어로 categorical 인데요. 카테고리형태의 데이터라는 말입니다. 예를들면 혈액형, 성별 등이 있습니다. #1. 형식 factor(x = character(), levels, labels = levels, exclude = NA, ordered = is.ordered(x), nmax = NA) x 어떤 형식의 데이터도 넣을 수 있고, 개수 제한 없음. #2. 예제 2-1) 기본예제 아래와 같이 성별데이터를 factor에 입력합니다. gender=factor(c("Male","Male","Female","Female","Female")) 아래와 같이 Level이 설정됩니다. Level은 카테고리라..
2019. 11. 30.