6. 간단한 출력 맛 보기

R 2015. 11. 12. 10:42 by 후뤼한잉여

6. 간단한 출력 맛 보기

1) 개요

R을 사용함에 있어 기본이 되는 출력에 대해 알아보고자 한다.

2) 출력문 맛 보기

  1. 한줄 출력하기

     print()
    
     예1)
     print(1+2)
     또는
     1+2
    
     예2)
     print('abc')
     또는
     'abc'
    
     예3)
     print(2.45789, digits=2)
    
    • 예2)처럼 문자는 작은 따옴표(') 또는 큰 따옴표(")로 감싸줘야 한다.
    • 예3)에서 두번째 인자 digits=2는 소수점 이하 2자리만 출력하라는 옵션이다.
    • print 명령은 간단한 출력등에서는 생략이 가능하다.
  2. 여러줄 출력하기

     cat(출력문1,출력문2,...,출력문n)
    
     예)
     cat('a','234','\n','c','\n')
    
    • cat()함수는 여러개의 출력문이 사용가능하지만 줄바꿈(\n)을 직접 입력해줘야 한다.

3) 다중 명령어 실행하기

여러개의 명령어를 순차적으로 실행하려면 리눅스 처럼 끝에 세미콜론(;)을 입력하여 처리할 수 있다.

예1)
1;2;3
print(1);print(2);print(3)

예2)
2+3;2*3
print(2+3);print(2*3)

'R' 카테고리의 다른 글

8. R 문법 1 - 산술연산  (0) 2015.11.12
7. 지수 표기법  (0) 2015.11.12
5. 작업 디렉토리 설정  (0) 2015.11.12
4. R의 실행 구조  (0) 2015.11.12
3. R의 기본적인 특징 및 편의 기능 설명  (0) 2015.11.11

5. 작업 디렉토리 설정

R 2015. 11. 12. 10:36 by 후뤼한잉여

5. 작업 디렉토리 설정

1) 개요

R 작업시 필요한 데이터들을 미리 가져다 놓는 디렉토리 이면서 작업 결과물을 저장하는 디렉토리인 작업 디렉토리를 설정하는 방법에 대해 공부해보겠습니다.

2) 작업 디렉토리 설정

  1. PC에서 직접 작업디렉토리 생성
  2. 소스 데이터를 작업 디렉토리로 복사
  3. R에서 작업 디렉토리 지정
    setwd("디렉토리 경로")
    
    예)
    setwd("c:/R/WorkSpace")
    또는
    setwd("c:\\R\\WorkSpace")
    
  • 현재 작업 디렉토리 조회하기
    getwd()
    

'R' 카테고리의 다른 글

7. 지수 표기법  (0) 2015.11.12
6. 간단한 출력 맛 보기  (0) 2015.11.12
4. R의 실행 구조  (0) 2015.11.12
3. R의 기본적인 특징 및 편의 기능 설명  (0) 2015.11.11
2. 패키지 관리하기  (0) 2015.11.11

4. R의 실행 구조

R 2015. 11. 12. 10:09 by 후뤼한잉여

4. R의 실행 구조

1) 개요

R을 공부하기에 앞서 R이 어떤식으로 실행되는지 짚고 넘어가고자 합니다.

2) R의 실행 순서

  1. [R 홈 디렉토리]/etc/Rprofile.site 파일 실행
    • 관리자가 별도로 생성하는 파일로 일반적으로 사용을 하진 않지만 제일 먼저 실행되는 파일임은 기억하자.
  2. [R 작업 디렉토리]/*.Rprofile 파일 실행
    • 사용자의 환경설정을 저장할 수 있는 파일로 작업 디렉토리 지정, 특정 라이브러리 자동 로딩 등 반복 작업을 작성하여 자동으로 실행시켜주는 파일이다.
  3. [R 작업 디렉토리]/*.RData 파일 로딩
  4. .First 함수 실행
    • 초기 설정 코드를 적는 함수 부분인데 *.Rprofile 파일을 더 많이 사용한다.
  5. .First.sys 함수 실행
    • 기본적으로 로딩해야할 기본 패키지를 로딩하는 함수이다.

'R' 카테고리의 다른 글

6. 간단한 출력 맛 보기  (0) 2015.11.12
5. 작업 디렉토리 설정  (0) 2015.11.12
3. R의 기본적인 특징 및 편의 기능 설명  (0) 2015.11.11
2. 패키지 관리하기  (0) 2015.11.11
1. R 설치하기 (Windows)  (0) 2015.11.11

3. R의 기본적인 특징 및 편의 기능 설명

R 2015. 11. 11. 23:45 by 후뤼한잉여

3. R의 기본적인 특징 및 편의 기능 설명

1) 기본적인 특징

  1. 인터프리터 방식의 언어
  2. 대소문자 구분

2) 편의 기능

  1. 주석 기능
    • # 문자로 주석으로 지정이 가능하다.
  2. 스크립트 창 기능
    • 콘솔에서는 한줄 씩 입력하므로 오타가 발생하기 쉽지만, 스크립트 창에서는 여러줄을 입력 해놓고 오타 검사가 가능하다.
    • 별도의 스크립트 창에서 입력한 내용은 Ctrl + R 키로 콘솔로 전달이 가능하다/
  3. 이전 명령어 수행기능
    • 리눅스 처럼 키로 이전 명령어를 다시 수행할 수 있다.

'R' 카테고리의 다른 글

6. 간단한 출력 맛 보기  (0) 2015.11.12
5. 작업 디렉토리 설정  (0) 2015.11.12
4. R의 실행 구조  (0) 2015.11.12
2. 패키지 관리하기  (0) 2015.11.11
1. R 설치하기 (Windows)  (0) 2015.11.11

2. 패키지 관리하기

R 2015. 11. 11. 23:29 by 후뤼한잉여

2. 패키지 관리하기

1) 개요

R은 약 4,000여개의 패키지를 제공하는데, 각 패키지별로 사용방법이나 문법이 다르며, 패키지를 잘 사용하는 것이 R을 잘 사용하는 길이다. 이번에는 패키지를 관리하는 방법에 대해 간략하게 설명 할 것이다.
필요한 패키지는 R 홈페이지에 접속하면 더 알아 볼 수 있다.

2) 패키지 설치하기

  • 패키지 설치는 인터넷을 통해 설치되므로 인터넷 연결이 되어 있어야 한다.
  1. R을 관리자 권한으로 실행
  2. 설치 명령어 입력
    [패키지 1개 설치시]
    install.packages("패키지명")
    
    [패키지 2개 이상 설치시]
    install.packages(c("패키지명1","패키지명2",...,"패키지명n"))
    
  3. 미러링 사이트를 지정

3) 설치가능한 패키지 조회 하기

  • 너무 많은 패키지가 조회 되므로 아래 방법 보다는 R 홈페이지 접속해서 조회하는 방법을 추천합니다.
    available.packages()
    

4) 설치된 패키지 경로 조회하기

[설치 된 패키지들의 경로 조회]
.libPaths()
[설치 된 패키지 목록 조회]
installed.packages()

5) 패키지 사용하기

  • 패키지 설치 후 패키지를 사용하려면 R에게 패키지가 설치된 경로를 알려줘야한다.
  • 아래의 명령어 중 하나를 이용해서 R에게 알려주면 된다.
    방법 1)
    library(패키지명)
    
    방법 2)
    require(패키지명)
    

6) 특정 패키지의 정보 확인하기

  • 아래 3가지 방식 중 하나로 사용하면 된다.
    library(help=패키지명)
    
    ?패키지명
    
    ??패키지명
    

7) 패키지 업데이트

  • 업데이트가 필요한 패키지가 있을 때 업그레이드를 하기 위한 방법이다.
    [특정 패키지만 업데이트시]
    update.packages("패키지명")
    
    [모든 패키지 업데이트시]
    update.packages()
    

8) 패키지 삭제하기

remove.packages("패키지명")

'R' 카테고리의 다른 글

6. 간단한 출력 맛 보기  (0) 2015.11.12
5. 작업 디렉토리 설정  (0) 2015.11.12
4. R의 실행 구조  (0) 2015.11.12
3. R의 기본적인 특징 및 편의 기능 설명  (0) 2015.11.11
1. R 설치하기 (Windows)  (0) 2015.11.11

1. R 설치하기 (Windows)

R 2015. 11. 11. 22:20 by 후뤼한잉여

1. R 설치하기 (Windows)

1) R 프로그램 다운로드 하기

  1. JDK 설치
    • 32 bit/64 bit중 자신의 PC bit에 맞게 설치하기. 설치과정은 생략
  2. R 사이트 접속 후 설치파일 다운로드
    2-1. [Download R for Windows] 클릭

     

    2-2. [install R for ther first time.] 클릭

     

    2-3. [Download R 3.2.2 for Windows] 클릭 하여 다운로드

     

2) R 설치하기

  1. [관리자 권한으로 실행] 클릭

  2.  

  3. [확인] 클릭

  4.  

  5. [다음] 클릭

  6.  

  7. [다음] 클릭

  8.  

  9. [다음] 클릭

  10.  

  11. [다음] 클릭
    자신의 PC의 bit인 것만 체크해야한다.

  12.  

  13. [다음] 클릭

  14.  

  15. [다음] 클릭

  16.  

  17. [다음] 클릭

  18.  

  19. [완료] 클릭

  20.  

'R' 카테고리의 다른 글

6. 간단한 출력 맛 보기  (0) 2015.11.12
5. 작업 디렉토리 설정  (0) 2015.11.12
4. R의 실행 구조  (0) 2015.11.12
3. R의 기본적인 특징 및 편의 기능 설명  (0) 2015.11.11
2. 패키지 관리하기  (0) 2015.11.11

Nginx Server 1.8 과 Tomcat 8 연동하기

Linux/CentOS 2015. 11. 11. 11:51 by 후뤼한잉여

Nginx Server 1.8 과 Tomcat 8 연동하기

1) 개요

Apache 대신 Nginx Server 사용시 Tomcat과 연동 설정한 내용을 정리하기 위해 작성되었습니다.

2) 설정방법

  1. Nginx 설정파일 변경하기
    sudo vi /opt/nginx/conf/nginx.conf
    
    nginx.conf파일에 수정할 내용
    server {
         listen       443 ssl;
         .
         .
         location / { //수정
                 .
                 .
                 root [Tomcat 웹 서비스 디렉토리] //ex) [Tomcat 설치된 디렉토리]/webapps/ROOT
                 .
                 .
         }
         .
         .
         location ~\.jsp$ { //추가
                 proxy_pass http://localhost:8080;
                 proxy_set_header X-Real-IP $remote_addr;
                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                 proxy_set_header Host $http_host;
         }
    }
    
  2. Nginx 재시작
    sudo service nginx restart
    

Nginx Server 1.8 에서 HTTPS 적용하기

Linux/CentOS 2015. 11. 11. 11:41 by 후뤼한잉여

Nginx Server 1.8 에서 HTTPS 적용하기

1) 개요

Nginx Server에 HTTPS 적용한 내용을 정리하기 위해 작성되었습니다.

2) 설정 방법

  1. SSL 인증서 생성하기

    GitLab에 HTTPS 보안 적용을 위한 OpenSSL 설정하기 참고하여 생성

  2. Nginx 설정파일 수정하기
    sudo vi /opt/nginx/conf/nginx.conf
    
    nginx.conf파일에 수정할 내용
    server { //HTTPS server 관련 전체 주석 해제
         .
         .
         listen 443 ssl;
         .
         .
         server_name [도메인 이름];
         ssl_certificate [인증서 디렉토리]/[인증서 이름].crt;
         ssl_certificate_key [인증서 디렉토리]/[인증서 이름].key;
         .
         .
    }
    
    • HTTP으로 접속시 HTTPS로 리다이렉트 하는 방법
      server { //HTTP server 관련 부분에 추가
            .
            .
            return 301 https://$host$request_uri;
      }
      
  3. 방화벽 해제하기
    sudo firewall-cmd --add-service=https --permanent
    sudo firewall-cmd --reload
    
  4. Nginx 재시작
    service nginx restart
    

CentOS 7 에 Nginx Server 1.8 설치하기

Linux/CentOS 2015. 11. 11. 11:31 by 후뤼한잉여

CentOS 7 에 Nginx Server 1.8 설치하기

1) 개요

Nginx Server 설치 한 내용을 정리하고자 작성되었습니다.

2) 설치방법

  1. 의존패키지 설치하기
    yum -y install gcc g++ cpp gcc-c++ pcre-devel openssl openssl-devel gd gd-devel wget net-tools
    
  2. Nginx 설치파일 다운로드
    wget http://nginx.org/download/nginx-1.8.0.tar.gz
    tar xvfz [설치파일].tar.gz
    
  3. Nginx 설치하기

    cd [설치파일 압축 해제된 디렉토리]
    

    3-1. Configure 설정하기 (prefix등 변경하고 설치했다가 무슨 이유인지 잘 안되서 그냥 저 경로로 설치함..)

    sudo ./configure --prefix=/opt/nginx \
    --conf-path=/opt/nginx/conf/nginx.conf \
    --sbin-path=/opt/nginx/sbin/nginx \
    --lock-path=/var/lock/nginx.lock \
    --pid-path=/var/run/nginx.pid \
    --http-client-body-temp-path=/var/lib/nginx/body \
    --http-proxy-temp-path=/var/lib/nginx/proxy \
    --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
    --http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
    --http-scgi-temp-path=/var/lib/nginx/scgi \
    --http-log-path=/opt/nginx/log/access.log \
    --error-log-path=/opt/nginx/log/error.log \
    --with-http_addition_module \
    --with-http_degradation_module \
    --with-http_flv_module \
    --with-http_gzip_static_module \
    --with-http_image_filter_module \
    --with-http_mp4_module \
    --with-http_random_index_module \
    --with-http_realip_module \
    --with-http_ssl_module \
    --with-http_stub_status_module \
    --with-http_sub_module \
    --with-http_realip_module \
    --user=nginx \
    --group=nginx
    

    3-2. 컴파일 및 설치

    sudo make
    sudo make install
    

    3-3. 컴파일시 생성안되는 디렉토리 추가 생성

    sudo mkdir -p /var/lib/nginx
    

    3-4. 서비스에 등록하기

    sudo vi /etc/init.d/nginx
    

    nginx파일에 입력할 내용

    #!/bin/sh
    #
    # nginx - this script starts and stops the nginx daemin
    #
    # chkconfig:   - 85 15
    # description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
    #               proxy and IMAP/POP3 proxy server
    # processname: nginx
    # config:      /opt/nginx/conf/nginx.conf
    # pidfile:     /var/run/nginx.pid
    
    # Source function library.
    . /etc/rc.d/init.d/functions
    
    # Source networking configuration.
    . /etc/sysconfig/network
    
    # Check that networking is up.
    [ "$NETWORKING" = "no" ] && exit 0
    
    nginx="/opt/nginx/sbin/nginx"
    prog=$(basename $nginx)
    
    NGINX_CONF_FILE="/opt/nginx/conf/nginx.conf"
    
    lockfile=/var/lock/subsys/nginx
    
    start() {
        [ -x $nginx ] || exit 5
        [ -f $NGINX_CONF_FILE ] || exit 6
        echo -n $"Starting $prog: "
        daemon $nginx -c $NGINX_CONF_FILE
        retval=$?
        echo
        [ $retval -eq 0 ] && touch $lockfile
        return $retval
    }
    
    stop() {
        echo -n $"Stopping $prog: "
        killproc $prog -QUIT
        retval=$?
        echo
        [ $retval -eq 0 ] && rm -f $lockfile
        return $retval
    }
    
    restart() {
        configtest || return $?
        stop
        start
    }
    
    reload() {
        configtest || return $?
        echo -n $"Reloading $prog: "
        killproc $nginx -HUP
        RETVAL=$?
        echo
    }
    
    force_reload() {
        restart
    }
    
    configtest() {
      $nginx -t -c $NGINX_CONF_FILE
    }
    
    rh_status() {
        status $prog
    }
    
    rh_status_q() {
        rh_status >/dev/null 2>&1
    }
    
    case "$1" in
        start)
            rh_status_q && exit 0
            $1
            ;;
        stop)
            rh_status_q || exit 0
            $1
            ;;
        restart|configtest)
            $1
            ;;
        reload)
            rh_status_q || exit 7
            $1
            ;;
        force-reload)
            force_reload
            ;;
        status)
            rh_status
            ;;
        condrestart|try-restart)
            rh_status_q || exit 0
                ;;
        *)
            echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
            exit 2
    esac
    
  4. 서비스 파일에 실행권한 부여하기

    sudo chmod +x /etc/init.d/nginx
    
  5. 방화벽 설정하기
    firewall-cmd --add-service=http --permanent
    firewall-cmd --reload
    
  • Nginx 실행 / 종료 명령어
    • 실행 명령어
      sudo service nginx start
      
    • 종료 명령어
      sudo service nginx stop
      
    • 재시작 명령어
      sudo service nginx restart
      

Apache Web Server 2.4 에 정적파일 캐싱하기

Linux/CentOS 2015. 11. 11. 11:10 by 후뤼한잉여

Apache Web Server 2.4 에 정적파일 캐싱하기

1) 개요

정적파일에 대해서 수정되지 않은 파일을 다운로드 받게하는 트래픽을 없애기 위해 설정을 한 내용을 정리하고자 작성되었습니다.

2) 설정하기

  1. Apache 설정 파일 수정하기
    vi [Apache 설치된 디렉토리]/conf/httpd.conf
    
    httpd.conf에 수정할 내용
    LoadModule expires_module modules/mod_expires.so //주석해제
    <IfModule mod_expires.c>
         ExpiresActive On
         ExpiresByType image/png "modification  plus 1 month"
         ExpiresByType text/html "modification  plus 1 month"
         ExpiresByType image/gif "modification  plus 1 month"
         ExpiresByType image/jpg "modification  plus 1 month"
         ExpiresByType image/jpeg "modification  plus 1 month"
         ExpiresByType application/javascript "modification  plus 1 month"
         ExpiresByType text/css "modification  plus 1 month"
         ExpiresByType application/vnd.ms-cab-compressed "modification  plus 1 month"
         ExpiresByType application/x-msdownload "modification  plus 1 month"
    </IfModule>
    
    • HTTP 헤더에 Expires 헤더값을 설정하는 모듈이다.
    • Type은 MIME Type이므로 본인이 설정하고 싶은 내용을 설정한다.
    • modification은 파일이 수정이 되면 다운 받을 수 있는 옵션이다.
    • modification대신 access로 지정하면 무조건 설정한 시간 이후 다운 받을 수 있는 옵션이다.
    • month 외에도 years, weeks, days, hours, minutes, seconds가 있다.
    • 자세한 내용은 Apache 문서를 참고
  2. Apache 재시작
Nav