본문 바로가기

R/Data Operation11

R 문자열 처리 - stringr 패키지/정규표현식 ※ R 문자열 처리 - base 패키지 small22.tistory.com/28 R 문자열 처리 - base 패키지 ※ R 문자열 처리 - stringr 패키지/정규표현식 small22.tistory.com/29 ◎ Base Package 문자열 크기 nchar(x, type = "chars", allowNA = FALSE, keepNA = NA) type "bytes", "chars", "width" 3.. small22.tistory.com ◎ Stringr Package str_extract 문자열의 위치(index) 출력 str_extract_all 문자열의 위치(index) 전체 출력 str_length 문자열 길이 출력 str_locate 문자열에서 특정 문자열 패턴의 첫번째 위치 찾기 str.. 2020. 12. 18.
R 문자열 처리 - base 패키지 ※ R 문자열 처리 - stringr 패키지/정규표현식 small22.tistory.com/29 R 문자열 처리 - stringr 패키지/정규표현식 ※ R 문자열 처리 - base 패키지 small22.tistory.com/28 type "bytes", "chars", "width" 3.." data-og-host="small22.tistory.com" data-og-source-url="https://small22.tistory.com/28" data-og-url="https://.. small22.tistory.com ◎ Base Package 문자열 길이 nchar(x, type = "chars", allowNA = FALSE, keepNA = NA) type "bytes", "chars", "wi.. 2020. 12. 15.
R 내장데이터셋 Built-in Dataset - attach/detach ◎ 내장 데이터셋 R에서 기본으로 제공하는 데이터셋이 있다. 이 내장 데이터셋은 보통 교육이나 연습 목적으로 많이 활용된다. 그중 가장 많이 활용되는 데이터는 역시 iris일 것이다. Dataset 목록 > data() 콘솔창에 data()를 입력하면 새창이 열리고, R에서 제공하는 내장데이터셋의 목록과 간단한 소개정도가 나열되어 있는 목록을 볼 수 있다. 참고로 Rstudio를 IDE(통합개발환경)로 사용하고 있다. Dataset 불러오기 > iris Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1.. 2020. 12. 12.
R 데이터 분리, 병합, 정렬 - split/subset/merge/sort/order ◎ split > result = split(iris, iris$Species) > result $setosa Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 5.1 3.5 1.4 0.2 setosa 2 4.9 3.0 1.4 0.2 setosa 3 4.7 3.2 1.3 0.2 setosa 4 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa 6 5.4 3.9 1.7 0.4 setosa ... $versicolor Sepal.Length Sepal.Width Petal.Length Petal.Width Species 51 7.0 3.2 4.7 1.4 versicolor 52 6.4 3.2 4.5 1.5 versi.. 2020. 12. 5.
R table 계열 함수 - 집계함수 > a = c('Kim', 'Lee', 'Park', 'Lee', 'Park', 'Kim', 'Kim') > b = c('M', 'F', 'M', 'F', 'M', 'F', 'M') > c = c('A', 'B', 'A', 'B', 'O', 'O', 'B') > df = data.frame(name=a, gender=b, blood=c) > df name gender blood 1 Kim M A 2 Lee F B 3 Park M A 4 Lee F B 5 Park M O 6 Kim F O 7 Kim M B 이름, 성별, 혈액형으로 구성되는 정보를 데이터프레임으로 만들어 이를 이용해 집계함수를 설명하려 한다. ◎ table() table( ... , exclude = if (useNA == "no") c(N.. 2020. 11. 26.
R apply 계열 함수/replicate/sweep/aggregate ◎ apply 계열 함수 함수 적용 반환 apply() 행렬, 배열, 데이터프레임 벡터, 리스트, 행렬, 배열 lapply() 벡터, 리스트, 데이터프레임 리스트 sapply() 벡터, 리스트, 데이터프레임 벡터, 행렬, 배열 tapply() 리스트, 행렬 mapply() 벡터, 리스트, 행렬 apply() apply(X, MARGIN, FUN, ...) MARGIN 함수를 적용하는 방향 1은 행, 2는 열, c(1,2)는 행과 열 모두를 의미 FUN 적용할 함수 apply() 함수는 배열 or 행렬의 행/열 방향으로 동일한 특정 함수가 적용되도록 한다. 실행결과가 어떤 형태로 반환될 것인지는 데이터의 타입과 적용함수의 반환 값에 따라 바뀌며, 예상이 가능하다. > mat = matrix(1:12, 3,.. 2020. 11. 16.
R 벡터 Vector 관련 내장함수 최대최소 함수 min(x, na.rm=FALSE) 원소(벡터)의 최소값 max(x, na.rm=FALSE) 원소(벡터)의 최대값 which.min(x) 원소(벡터) 내의 최소값 인덱스 which.max(x) 원소(벡터) 내의 최대값 인덱스 pmin(x, na.rm=FALSE) 여러 벡터에서 병렬 별로 최소값 pmax(x, na.rm=FALSE) 여러 벡터에서 병렬 별로 최대값 > vec = sample(1:100, 10) > vec [1] 41 85 38 6 5 95 42 8 43 51 > min(vec) [1] 5 > max(vec) [1] 95 > which.min(vec) [1] 5 > which.max(vec) [1] 6 > v1 = sample(1:100, 5) > v2 = sample(1:10.. 2020. 11. 10.
R 산술/관계/비교/논리연산자와 벡터연산 ◎ 산술연산자 +, -, *, / 사칙연산 %% 나머지 %/% 몫 ^ or ** 제곱, 지수승 sqrt() 제곱근, 루트 사칙연산 > 10 + 2 # 덧셈 [1] 12 > 10 - 2 # 뺄셈 [1] 8 > 10 * 2 # 곱셈 [1] 20 > 10 / 2 # 나누기 [1] 5 > 1:5 * 2 + 1 [1] 3 5 7 9 11 ※ 벡터와 상수, 벡터와 벡터 사칙연산 / 집합함수의 벡터연산 보러가기 small22.tistory.com/8 R 벡터 Vector - 생성/연산/인덱싱 벡터(vector)는 R의 기본 자료구조이다. 일련의 값을 순서대로 가지면서 동일한 자료형을 갖는 1차원의 배열구조이다. ◎ 벡터 생성 c() > x = c(1, 2, 3) > print(x) [1] 1 2 3 > y = c(2.. 2020. 11. 5.
R 함수 Function - 함수정의/함수인자/재귀중첩함수 특정 코드블록을 반복적으로 써야할 때 함수를 작성하면 코드의 반복을 줄일 수 있고, 코드의 가독성도 높일 수 있다. 함수를 실행하기 위해서는 반드시 호출을 해야한다. 호출하는 방법은 함수이름 뒤에 소괄호( )를 붙이는 것이다. 이를 함수호출(function call)이라고 한다. ◎ 함수정의 함수명 = function( 인자1, 인자2, ... ) { 실행문 return( 반환값 ) } 인자가 없는 함수 > pi_1 = function() { + cat(3.141592653589793) + } > pi_1() 3.141593 > x = pi_1() 3.141593 > x NULL 인자가 없이 pi값을 출력하는 함수이다. return은 생략할 수 있지만 pi값을 x 객체로 받으려해도 x 객체에는 NULL .. 2020. 11. 3.
R 반복문 - for/while/repeat/break와 next ◎ for for ( i in 열거형객체 ) { i를 사용한 실행문 } for 문은 열거형객체 안의 원소를 차례로 i에 할당하여 블록 안의 실행문을 반복 실행한다. 실행문이 하나일 경우 중괄호는 생략가능하다. 열거형객체는 벡터가 될 수도 있고, 데이터프레임이 될 수도 있다. > num = scan() 1: 77 2: 52 3: 100 4: 29 5: 0 6: Read 5 items > num [1] 77 52 100 29 0 > > for(i in num) { + if(i %% 2 == 0) cat(i,'= 짝수\n') else cat(i,'= 홀수\n') + } 77 = 홀수 52 = 짝수 100 = 짝수 29 = 홀수 0 = 짝수 scan() 함수는 Console(콘솔)창에서 값을 입력할 수 있고, .. 2020. 11. 3.
R 조건문 - if/ifelse/switch/which 조건문은 조건이 참인지 거짓인지에 따라 달라지는 계산이나 상황을 수행한다. 조건문에도 종류가 여러가지 있다. ◎ if if( 조건식 ) 실행문 > score = 85 > if(score >= 80) cat('합격') 합격 > if(score >= 80) print('합격') [1] "합격" print() 함수를 쓰면 출력결과 앞에 인덱스도 함께 출력된다. > if(TRUE) {score = 100 + cat('점수는', score, '점이다')} 점수는 100 점이다 > if(T) score = 100; cat('점수는', score, '점이다') 점수는 100 점이다 조건문 자리에 T or TURE 를 사용하면 실행문을 무조건 실행한다. 실행문이 두 문장 이상이면 중괄호를 사용하거나 문장들 사이에 세미.. 2020. 10. 27.
반응형