기타/R언어: 7개의 글
아래 입출력 함수들 말고도, 여기에는 없지만 외부 패키지를 이용해서 엑셀, XML 등에서도 입출력이 가능하다. 1. 경로설정 getwd() : 작업공간 확인 setwd("절대경로") : 작업공간 설정 2. 입력 2-1. 키보드 입력 scan() : 데이터를 직접 키보드로 입력할 수 있다. 입력을 중단하려면 빈칸을 두고 엔터를 치면 된다. 문자를 입력받으려면 인자에 what="" 를 넣어준다. 파일읽기에도 쓸수있는데, 첫번째 인자로 작업공간에 있는 파일명을 써주면 된다.> x x [1] 10 30 99 readline() : 다음 한줄을 입력으로 받는다.> x x [1] "yes" edit(객체) : GUI적으로 데이터를 수정할 수 있다. 데이터프레임의 경우 엑셀시트와 유사한 윈도우창이 뜬다. 벡터의 경우..
1. 함수 정의 다른언어와 마찬가지로 코드가 반복되거나 가독성을 높히려면 함수를 작성할 수 있다. 함수명 test1 function(...) { args test1(1,2,3,4,5) [1] 1 [1] 2 [1] 3 [1] 4 [1] 5 3. 스코프 다른언어와 마찬가지로 블록 스코프를 따른다. 그냥 콘솔에서 변수를 선언하고 할당하면 전역변수가 된다. 하지만 함수 내에 변수선언을 하게되면 지역변수가 된다. 만약 전역변수와 지역변수가 이름이 겹치면 지역변수가 우선한다. 여기서
1. 산술연산 사칙연산 : +, -, *, / 나머지연산 : %% 몫연산 : %/% 제곱 : n^m e의 n승 : exp(n) 삼각함수 : sin(x), cos(x), tan(x) 로그계산 log2(x), log10(x) log(x, base=exp(1)) : base가 밑이고 x가 진수 나눗셈연산에서 /와 %/%는 아래와 같은 차이가 있다. > 5/3 [1] 1.666667 > 5%/%3 [1] 1 2. 벡터 연산 다른 언어들은 여러 데이터를 처리할 때 반복문을 사용하여 읽어들여 처리하지만, R언어는 전체 데이터를 한번에 다루는 벡터 연산을 주로 사용한다. > x x + 1 [1] 2 3 4 5 6 R의 많은 함수들이 이러한 벡터기반 연산을 지원한다. 3. NA 연산 NA는 값이 기록되지 않았거나 관측..
1. 조건문 1-1. if문 전형적인 if문이다. if (조건1) { 조건1이 참일 때 실행할 문장 } else if (조건2) { 조건2가 참일 때 실행할 문장 } else { 모든 조건이 거짓일 때 실행할 문장 } 1-2. ifelse() 함수 다수의 데이터를 한번에 처리할 수 있다. ifelse( test, # 참, 거짓을 저장한 객체 yes, # test가 참일 때 선택할 값 no # test가 거짓일 때 선택할 값 ) 예를들어 > x ifelse(x %% 2 == 0, "even", "odd") [1] "odd" "even" "odd" "even" "odd" 2. 반복문 for문, while문, repeat문이 있다. 반복문 내에서는 아래 문장을 통해 수행을 조정한다. break : 루프를 빠져..
참조문서 : R을 이용한 데이터 처리 & 분석 실무 1. 변수 변수의 타입은 명시적으로 지정을 안해줘도 사용이 가능하다. 1-1. 명명규칙 명명규칙으로 변수명은 알파벳, 숫자, _(언더스코어), .(마침표)로 구성되며, -(하이픈)은 사용할 수 없다. 첫 글자는 알파벳 또는 .(마침표)으로 시작해야 한다. 만약 .(마침표)으로 시작한다면 .(마침표)뒤에는 숫자가 올 수 없다. R 1.9.0 이전에는 변수명에 _를 사용할 수 없었다. 이런 이슈로 다른 언어에서 흔히 _를 사용할 만한 상황에서 R은 .(마침표)을 사용한다. 예를 들어, training_data, validation_data 같은 변수명 대신 data.training, data.validation과 같이 마치 객체의 속성을 접근하는 것처럼 보..
CRAN은 the Comprehensive R Archive Network의 약자이다. R은 사람들이 제작한 패키지를 추가하여 기능을 확장할 수 있다. R에는 방대한 R Add-On Packages 들이 있다. RGui에서 Packages 메뉴를 통해 확인할 수 있다. 웹에서는 CRAN Task Views 페이지에서 확인할 수 있다. 각 패키지들은 대분류로 Cluster, Finance, NLP, TimeSeries 등으로 나뉘어져 있다. 들어가보면 CRAN packages 리스트를 통해 해당 패키지에 속한 라이브러리들을 볼 수 있다. 1. 패키지 확인 설치 위치 : .libPaths() 설치된 패키지 확인 : installed.packages() 패키지 도움말 : library(help="패키지명") ..
참조문서 : An Introduction to R 1. R언어란? 통계 계산과 그래픽을 위한 프로그래밍 언어이다. 뉴질랜드의 로버트 잰틀맨과 로스 이하카가 개발하였다. 1993년 처음으로 공개되었다. R은 GPL 하에 배포되는 S 프로그래밍 언어의 구현으로 GNU S라고도 한다. 장점 오픈소스, 무료 소프트웨어 포괄적인 통계플랫폼 : 다양한 라이브러리, 다양한 분석기법, 정형/비정형 시각화 기능으로 수학 기호를 포함할 수 있는 출판물 수준의 그래프를 제공 단점 통계 최적화를 위해 성능을 희생했다 인터프리터언어로서 R코드가 실행될때, 변경될 때마다 다시 해석하므로 비교적 느리다. 2. 동작원리 R은 싱글스레드이므로 1개의 CPU코어만 사용한다. 멀티코어를 활용하려면 병렬프로그래밍 기법이 필요하다. R은 R..