본문 바로가기
자기계발/통계데이터과학과

[데이터과학개론] 4장 데이터 과학의 도구 (파이썬, R, git)

by 딩동동 2022. 12. 15.
파이썬

 

www.python.org

guido van rossum 이 발표한 고급 프로그래밍 언어

 

파이썬의 주요 개념

함수<모듈<라이브러리

패키지<모듈 : 디렉토리 개념으로 모듈을 모아 놓은 상위 폴더

 

파이썬의 특징

① 자연어.직관적인 이해

② 인터프리터 언어로서 컴파일 단계 없이 실행 가능

③ 오픈소스

④ 객체지향성

⑤ 동적타이핑

 

인터프리터 방식?
고급언어로 작성된 코드를 한 줄씩 읽어 각각 실행하는 방식
사람의 언어에 가까운 소스 코드를 실시간으로 해석해서 컴퓨터가 이해할 수 있는 명령으로 바꾸어
단위별로 실행하는 과정

 

인터프리터방식

 

컴파일방식

 

객체 지향 프로그래밍 언어?
클래스, 객체, 기능 등의 요소를 지니고 있는 프로그래밍 언어

객체(object) : 속성 또는 어떤 동작으로 정의되며 다른 것들과 식별 가능한 개별 대상을 의미함.
클래스(Class) : 객체를 총칭하는 개념.

 

클래스와 객체 (출처 : python-tutorial-classes-and-objects)

 

동적타이핑(dynamic typing) ?
변수의 형태를 미리 명시적으로 지정해 주지 않고 인터프리터에 그 처리를 담당하게 하는 방식
(변수의 형태를 미리 선언해 주지 않더라도 인터프리터가 자동적으로 형태를 지정하여 작업을 수행)

 


 

R

 

www.r-poject.org 

로스이하카 & 로버트젠틀맨이 개발한 프로그래밍 언어

 

R의 특징

① 자연어.직관적인 이해

② 인터프리터 언어

③ 오픈소스

④ 객체지향성

⑤ 인메모리 방식 (대용량 데이터 처리에 제약)

 


 

깃(Git) & 깃허브(GitHub)

 

깃(Git) : 체계적으로 소스 코드를 관리해 주기 위한 분산 버전 관리시스템

깃허브(GitHub) : 깃에서 다룬 소스 코드들을 공유할 수 있는 웹 공간

 

깃허브 주요 개념

① 커밋(Commit) : 파일을 새롭게 추가하거나 변경하여 저장하는 작업

② 푸시(Push) : 파일을 추가하거나 변경하여 원격 저장소에 업로드하는 작업

③ 저장소(repository) : 로컬저장소와 원격저장소로 구별

④ 브랜치(branch) : 버전 관리를 위한 구조를 생성하는 기능

 

깃허브 사용 절차

 

깃허브 사용 절차

 

깃 배시(Git Bash) 

www.gitforwindows.org

윈도우에서 리눅스나 유닉스 형태의 명령문 입력이 가능하도록 환경을 마련해 주며

git 명령어를 지원하고 저장소 관리도 용이하게 돕는 기능

 

깃 배시를 이용한 커밋 작업

vim : 문서편집 기능. vim을 실행하고 "i" 키를 누르면 입력 편집 가능

:q! : 문서를 저장하지 않고 종료

:wq : 문서를 저장하고 종료

 

git push origin master : 로컬 저장소 내역을 원격 저장소에 반영하는 작업

git branch : 현재의 브랜치 구조 확인. 현 위치에서 브랜치 생성

 

git branch -d git-test-sub1 : 로컬저장소의 브랜치를 삭제

git push origin --delete git-test-sub1 : 원격저장소의 브랜치를 삭제

 

git pull : 원격 저장소의 변경된 내용을 브랜치에 반영.

git pull 명령을 실행하면 원격저장소의 모든 내용이 반영되고,

git pull origin ~~브랜치 이름을 지정해주면 특정 브랜치에만 반영할 수 있음. 

 

 

 

 

댓글