pip 사용방법 요약 정리

pip 사용 방법

시스템 설치 python 의 기본 pip 를 사용하고 있다.

pip 명령

- pip install

일반적인 외부라이브러리 설치는 install 명령을 사용한다.

1
pip install <모듈명>

로컬 외부라이브러리 설치시에는 파일명을 그대로 사용한다. 일반적으로 압축파일로 특정 사이트에서 제공해주는 경우

1
$ pip install 파일명

pip가 자주 업데이트 되므로 install 명령으로 업데이트해주는 것이 좋다. 보통 설치 명령은 업그레드를 포함한 install -U 옵션을 준다.

1
$ pip install -U pip

- 버전 지정

특정 버전을 설치할 수 있습니다. 기본적으로 버전정보가 입력되지 않으면 최신버전이 설치.

1
$ pip install 패키지명==버전넘버(예:2.3.0)

특정 버전 이상을 설치합니다.

1
$ pip install 패키지명>=버전넘버(예:2.3.0)

특정라이브러리를 업그레이드한다.

1
2
$ pip install --upgrade 패키지명
$ pip install -U 패키지명

업그레이드시 업그레이드 전략을 사용해서 의존성을 확장할 수 있다.

  • upgrade-stratege : 기본 only-if-needed 로 보통 모듈만 업그레읻한다. eager : 의존성까지 업그레이드 된다.
1
2
# 모듈의 의존성까지 업그레이드한다.
$ pip install -U --upgrade-stratege eager <모듈>

특정 라이브러리 삭제

1
$ pip uninstall 패키지

- pip 설치 리스트 확인

pip로 설치한 모듈 목록을 볼 때 list, freeze 를 사용할 수 있다.

  • pip list : 현재 설치된 모든 목록을 보여준다.
  • pip freeze : 파이썬 기본 패키지를 제외하고 새로 설치한 패키지를 보여준다.
1
2
$ pip list
$ pip freeze

- pip 패키지 검색

라이브러리 검색. 패키지명과 description과 like 검색.

1
$ pip search <검색어>

- requirements.txt 사용

pip freeze는 현재 설치된 모든 모듈을 출력해서, 보통 리다이렉트로 requirements.txt를 아래와 같이 생성할 수 있다.

1
$ pip freeze > requirements.txt

이후에 이 requirements.txt 파일을 이용해 전체 모듈을 다시 설치할 수 있다.
그래서 파이썬의 프로젝트에서는 일반적으로 프로젝트에 필요한 라이브러리 리스트를 requirements.txt 파일로 사용한다.

requirements.txt 파일에 기록된 패키지를 모두 설치하는 방법

1
$ pip install -r requirements.txt

라이브러리 정보 확인

1
$ pip show 패키지명

site-packages 위치

시스템 패키지 위치는 기본 시스템 위치, 가상환경 과 user level 에 따라 다르다.

pip 시스템 모듈 위치

시스템 기본 파이썬으로 pip install MODULE 로 설치시 OS에 따라 보통 아래 위치에 설치된다.

macOS:

1
/Users/<USER_HOME>/Library/Python/[VERSION]/lib/python/site-packages

Linux:

1
2
/usr/local/lib/python3.7/site-packages
/usr/lib/python3/dist-packages

windows:

1
C:/Program Files/Python37/site-package

사용자 User scheme 설치

Python2.6부터 User scheme 개념이 도입되며서 pip로 설치하는 패키지를 개별 사용자 환경 위치에 설치할 수 있다.

install 명령에 --user 옵션을 주고 설치한다.

  • 기본으로 리눅스는 ~/.local 폴더이고,
  • Mac OS X 는 ~/Library/Python/X.Y 에 위치한다.
  • Windows 는 C://AppData/Roaming/Python//site-packages 에 위치한다.

사용자 영역 설치한 모듈이 실행 모듈이면 PATH 환경변수에 사용자 아래 영역 경로를 추가해 준다.

  • 리눅스: ~/.local/bin
  • Mac OS :
  • Windows: C://AppData/Roaming/Python//Scripts

venv 가상환경 모듈 위치

venv 가상환경에서 설치시 가상환경 디렉토리 밑의 lib/site-packages 폴더에 설치된다.


R 시작하기, 2022

R과 R Studio 를 설치하고 R 의 기본환경을 이해하기 위해 정리한다.

old version:

R 소개

R은 벨 연구소 Becker 등에 의해 개발됐던 S language를 기반으로 통계 계산, 시각화를 위한 프로그래밍 언어를 포함한 개발환경이다. S language를 이용한 Insightful사의 S+는 S 언어를 이용한 상업용 소프트웨어이고, R은 공개소프트웨어 기반의 소프트웨어 이다.

  • 예) Excel, SPSS, SAS, HLM, MPlus 등 통계 프로그램

R 학습 자료

  1. K-MOOC: 데이터과학을 위한 R프로그래밍, 이혜선 (포항공과대학교)
  2. R프로그래밍및실습, Jinseog Kim (동국대학교)

설치

R 프로그래밍 엔진은 R 을 다운로드하고 GUI 도구로 R Studio를 사용할 수 있다.

  1. CRAN mirror http://r-project.org 에서 R Download 한다.
  2. R Studio IDE
  3. Old Version RStudio 설치

R 시작하기

R 은 console을 통해 프로그래밍을 하거나 외부 에디터에서 작성한 소스를 컴파일해서 실행 할 수 있다. R 엔진을 IDE 를 통해서 개발한 코드를 실행하고 테스트 할 수 있다.

macOS에서 R 시작시 다음 같은 경고를 보이면 macOS FAQ를 참고해 설정을 해주어야 한다.
> [그림. ]

R과 R Studio 화면

R prompt

R을 실행하면 명령 입력 프롬프트 > 을 볼 수 있다. 프롬프트에서 한 줄에 하나 혹은 한문장의 명령이 입력되고 실행된다.

1
2
3
4
5
6
7
> print("Hello World")
> Factorial(10) # 계산 기능
> Rep(x="hello", times=5)
> Rep(times=5) : Error…
> Plot(10,10)
> Plot(c(5,7), c(20, 30))
> Plot(runif(100), runif(100)) # runif()는 랜덤 넘버 생성 함수

프롬프트 > 에 명령을 입력하고 엔터키를 실행이 되지만 코드 블럭 괄호((),{},[])가 닫히지 않으면 프롬프트에 + 에 연결해서 계속 입력할 수 있다.

1
2
3
4
5
6
7
[Workspace loaded from ~/work-R/R기본사용/.RData]

> print('hello r studio'
+ 'greeting me'
Error: unexpected string constant in:
"print('hello r studio'
'greeting me'"

R Studio IDE

R Studio IDE에서 작성 가능한 R 프로그래맹 편집기 종류를 살펴보면,

R Notebook 코드 작성중 package 요구

R 이용

R 사용 환경에 도움이 되는 구성을 살펴보자

한글 폰트 지정

나눔고딕코딩 폰트를 다운받아 설치한다.

R 환경설정에서 Nanum font 사용한다.

help() 사용

R에서 도움말을 통해 함수, 형식, 등의 정보를 얻을 수 있다.

1
> help(“함수명”)

패키지를 로드하지 않은 함수의 도움말 보기

1
> help.search(“함수명”)

내가 얻은 패키지는 어떤 것인가?

1
> help(package=”알고싶은 패키지명”)

주요 도움말 명령 사용

1
2
3
4
5
6
7
8
9
10
> help()                      # 도움말 창
> help(ls) # 함수 ls()에 대한 도움말
> ?ls # 도움말 단축키 ?로 help(ls) 호출
> help(">") # R의 예약어, 연산자 등은 ""로
> help("for") # 묶는다.
> #특정 패키지에 대한 도움말 요청
> help(package="datasets")
> # 일반 검색어를 이용해 도움말 검색
> help.search("Latex")
> ??"Latex"

샘플로 제공하는 예제를 사용할 수 있도록 검색을 지원한다.

1
2
3
4
5
6
7
> example("formula")

formul> class(fo <- y ~ x1*x2) # "formula"
[1] "formula"

formul> fo
y ~ x1 * x2

object

R은 동적 객체 방식을 사용한다. 아래는 hello 변수를 선언하고 값을 대입한다. 이렇게 대입되면 R에서 객체로 다뤄진다.

1
2
3
> hello <- “안녕하세요"            #유니코드 문자열
> hello
[1] “안녕하세요"

동적 객체이기 때문에 새로운 변수 값을 대입할 수 있다.

1
2
3
> hello <- 100 + 200
> hello
[1] 300

숫자형식의 데이터를 가지고 문자형으로 다시 대입할 수 있다.

1
2
3
> hello <- 'this is a text'
> hello
[1] "this is a text"

객체와 객체를 이용해서 연산도 할 수 있다.

1
2
3
4
> test1 <- 1
> test2 <- 2
> test1 + test2
[] 3

논리형식의 데이터를 이용해 참/거짓을 이용할 수 있다.

1
2
> Object1 <- TRUE               # 논리형
> Object2 <- FALSE

ls() : 객체 목록

ls()는 사용한 객체들의 목록을 반환해 준다.

1
2
3
> x <- 1
> y <- 1:10
> ls()

rm(): R 객체를 삭제

1
2
3
4
> x <- 1
> y <- 1:10
> rm(x,y)
> ls()

Workspace

R에서 작업공간(workspace)에 사용자가 R을 이용하여 수행하는 자료와 분석 프로시져 등을 포함하게 된다.

  • getwd(): 현재 워크스페이스 경로
  • setwd(PATH): 지정한 PATH로 현재 워크스페이스를 지정한다.
  • list.files(PATH): 경로의 파일 목록을 반환

객체 저장

작업공간은 저장할 수 있다. 저장을 실행하면 작업 디렉토리에 .RData 라는 파일이 생성된다.

1
2
> help("save.image")        # 도움말을 살펴보며 진행
> save.image()

R의 종료를 위해서는 명령문 프롬프트에서 **q()**를 실행하던가 메뉴로부터 “종료”를 선택한다.
종료시 워크스페이스에 작업된 자료를 저장할 수 있다.

R패키지: R의 확장기능 이용

search()는 설치된 R패키지들을 확인하는 명령

1
2
3
4
search()
## [1] ".GlobalEnv" "package:stats" "package:graphics"
## [4] "package:grDevices" "package:utils" "package:datasets"
## [7] "package:methods" "Autoloads" "package:base"

library(): R에 설치된 모든 패키지 및 설명

library() 명령은 라이브러리를 현재 환경에 로딩해 준다.

1
2
library()
library(package_name): 패키지를 현재 R세션으로 로딩

예를 들어 MASS 패키지를 로딩하는 명령을 보자

1
library(MASS) # MASS 패키지를 로드

새로운 패키지를 설치할 수 있다.

1
install.packages(): R에 새로운 패키지 설치

stringr 패키지를 설치한다.

1
install.packages("stringr")


R 객체 이용하기

R 객체에는 아래와 같은 종류들이 있음

  • atomic(상수)
  • vector(벡터)
  • matrix(행렬)
  • list(리스트)
  • data.frame(데이터프레임)
  • function(함수)
  • operator(연산자) …
  • 데이터 객체 (data object): R 객체 중 데이터 객체 : atomic, vector, matrix, data.frame

객체의 이름

객체명 표시방법: 알파벳문자, ’_‘,’.’, 숫자의 조합

주석

한 줄을 인터프리터가 해석하지 않고 패스하는 라인 코멘트(주석문) # 를 사용한다

1
2
a <- 1
b_1 <- 10 # <-는 left assignment

벡터

R의 최소 단위는 벡터

정수(1), 실수(5.8271), 문자(‘A’) 문자열(“hello”)는 스칼라이다.
벡터는 {1,2,3,4,5,6}과 같이 스칼라가 여러 개 모인 것이이다.

한 개의 스칼라 값을 가진 벡터를 선언한다.

1
> a <- 5

객체에 다른 객체 넣기

1
2
3
4
5
6
7
> object1 <- 1
> object2 <- 2
> object1
[1] 1
> object1 <- object2
> object1
[1] 2

객체에 다른 객체 넣기

1
2
3
4
5
6
> object1 <- 1
> object1 <- 2
> object1 <- object2
> object2 <- 100
> object1
[1] 2

함수 계산 결과를 객체에 넣기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
> Excel1 <- read.csv(“example_student.csv”)

> Object1 <- sum(1,8,4,5,9)
Object1 : 27

> A <- c(1,3,5,6,9) # 벡터에 대해
A : 1,3,5,6,9

> A <- 1
Is.vector(a): True

A <- c(1,2,5)
Is.vector(a): True

> A <- c(“첫번째”, “두번째”, “세번째”)
A : ???

Package 관리

외부에서 제공하는 모듈을 Install, Update, Library 명령으로 관리할 수 있다. 패키지 설치는 Install 그리고 사용할 때는 Library 명령을 사용하고 패키지 갱신에 Update 명령을 사용한다.

패키지 관리

패키지 설치과 업데이트

1
2
3
4
> install.packages("패키지명")      # 패키지 설치
> library("패키지명") # 패키지 불러들이기 (사용)
> require("패키지명") #
> update.packges('패키지명') # 패키지 갱신

설치된 패키지 목록 보기

1
2
3
> Library()
> installed.packages()
> Install.packages()[, c(“Packages”, “version”, “License”)]

필수 패키지

1
2
3
4
5
6
7
8
9
10
11
Install.packages(“rgl”) # 3D 그래프 보여주는 패키지
Install.packages(“ggplot2”)
Install.packages(“ggthemes”)
Install.packages(“data.table”)
Install.packages(“devtools”)
Install.packages(“KoNLP”)
Install.packages(“dplyr”)
Install.packages(“plyr”)
Install.packages(“reshape2”)
Install.packages(“scales”)
Install.packages(“stringr”)

Github로 패키지 설치하기

개발자가 베타 버전을 github에 공개하는 경우
Knitr 패키지는 R에서 html, pdf, MS-Word 문서를 만들 수 있음고 https://github.com/yihui/knitr 에서 배포한다.

1
2
3
4
> Install.packages(“devtools”)
Library(“devtools”)

> install_github(“yihui/knitr”)

RStudio UTF8 지원


참조